科学网

 找回密码
  注册

tag 标签: 初学者

相关帖子

版块 作者 回复/查看 最后发表

没有相关内容

相关日志

时尚界大量使用Photoshop行吗?
gzchengzhi 2012-1-27 23:19
  刚刚看到一则新闻,说的是英国有一段视频讽刺时尚界大量使用 Photoshop 来处理模特的照片,从而使得这些模特能够看起来达到完美的程度。(新闻链接参考此处:“最强大化妆品”广告恶搞 PS 遭质疑 http://tech.sina.com.cn/i/2012-01-21/12116659141.shtml )   这并不奇怪,我们现在看到电视广告中出现的那些皮肤完美的模特形象,实际上都或多或少经过了现代科技的处理的。即便是一个 Photoshop 的初学者,只要掌握一些基本操作的方法,都可以对一些看起来不太美观的照片进行美化处理,并获得“惊人”的效果。   这就是现代科技的作用。也是自照相机等技术发明以来,人们的表达方式摆脱了文字的束缚以后必然的产物。   其实如果对视觉表达方式有基本的了解,对这种使用技术对所拍摄的图像进行处理的方式一点也不会感到奇怪。倒是如果使用现有的技术,能够真实完美地将所有的景物记录下来,那才叫奇怪,或许这正是摄影艺术家们所追求但却永远也不可能达到的目标而已。   自从照相机发明以后,人们除了感叹新技术的影像记录能力以外,也开始了探索如何利用技术来隐藏那些自认为难以见人的“瑕疵”的方法。比如在冲洗照片的时候,有意让显影时间长一些或短一些。或者对某些部分加长显影时间。然后就是有意将那些并不存在的颜色添加到黑白照片上。这些都是人为地改变真实景物的技术。只是到了数字时代,照片修理不再需要同显影药等化学药剂打交道了,人们可以更方便地对照片进行全方位的处理,这时候才引起了大家的注意和批评。前段时间一些新闻报道中出现的通过 Photoshop 将领导的照片合成到某个景区中的所谓“假新闻”,受到广泛的批评。不过批评者的焦点集中在照片造假上。其实如果从更广泛的含义上来看,不存在照片造假的问题,这只是一个视觉表达方式的问题。也就是说,你将合成的照片使用在这样的场合是否合适?另外你对这幅照片进行说明的文字,说领导到了这个地方视察了,这张照片只是证明了记者用文字描述了一个虚假的消息而已。因为从合成的照片上看,领导确实没有到过该地视察!   因此不管是否使用过 Photoshop 处理,照片都是在尝试着告诉读者照片制作者的想法。照片只是一种视觉表达,它就是要向读者表达一种内容。不存在用过 Photoshop 的就是造假的照片,没有用过 Photoshop 的就不是造假的照片。因为即便是不使用 Photoshop ,摄影者还可以使用不同的构图方式、不同的拍摄角度、光线照射方向,甚至不同时间拍摄照片的组合来表达自己的想法。   现在再回到开头的新闻,时尚界使用 Photoshop 其实无可非议,因为这只是她们的一种表达方式而已。或许她们是想告诉观众,这就是一种理想的境界,每个人都渴望达到的。即便今后有法律禁止使用 Photoshop 等技术进行处理,她们还是会有更多的办法来使这些模特看起来更漂亮一些的。但这些都只是影像,并不是模特本身。模特只不过是普通的女孩而已。   倒是新闻后面所说的那样,利用技术对模特进行处理,在电视屏幕上获得了人间最完美的影像,这让很多的女孩产生了自惭形秽的感觉,觉得自己什么都不是。这是一个事实。这就涉及到视觉表达或者视听表达的权利的问题。   如同文字表达方式,在中国古代,能够使用文字进行表达的人并不是很多的。因此那些不能够进行文字表达的人士往往会有非常强烈的自卑感。进而影响到其创造力的发挥。最近看到几篇文章都是探讨中国文化对科学技术的影响的,我想这一因素也可以考虑进来。   现在的视觉表达也如同当年的文字表达,垄断在少数人的手中。只是不同于当年的文字垄断,现在的视听表达垄断则主要受到技术的限制,普通人士无法自由使用影像记录技术来进行视听表达,在专业人士制作的完美的影像面前,自然也会产生这种自卑感。现在看起来,这也是一种数字鸿沟。   但应该不至于太悲观。我自己有过非常有趣的经历,在我的现代教育技术的课堂上,我教学生利用 Photoshop 将一幅长满痘痘的女士的照片简单处理以后,获得完美的明星脸。尽管有些老土,但学生们都很感兴趣,尤其是女生。下课的时候,我看到她们信心十足地走出课堂,我就在思考,其实我们每个普通的人士,都应该有权利去进行视听表达,这绝对是一种比文字表达更为有效的方式!
3150 次阅读|0 个评论
[转载]初学韩语该做那些准备 韩语学习方法
chnfirst 2011-11-15 08:40
http://kr.v.wenguo.com/html/kr/200905/53242.shtml 初学韩语该做那些准备 韩语学习方法 来源:文国韩语网 时间:2009年05月14日 11:13 初学韩语该做那些准备?针对这个问题文国韩语小编为大家整理的此韩语学习方法,希望对韩语学习者有帮助~~ 学习任何一门语言都要付出一番努力,所谓的捷径也无非是过来人的经验,让初学者少走点弯路,少浪费点时间,和金钱.不会像无头苍蝇一样乱撞,一点头绪都没有。大部分想学韩语的人多少是受了“韩流”的影响,首先要确定你不是三分钟热度,因为无论哪种外语都有它的难度,没有耐心是不行的。一定要坚持才能学好韩语!好了,现在你已经确定 你不是一时好奇想玩着学,那就 继续 往下看吧!刚开始接触韩语的所有人,当然包括我在内的人都会想怎么这么难啊?我想,韩语的难处在于三个地方,一是发音部分,二是语法部分,三是尊敬语部分! 发音难度在于它的音变之多,很难咬准。建议初学者不要只贴在电脑前听网站上的发音,还是老办法——磁带和复读机。(磁带尽量正版,发音会清晰,正统一点。)学外语,复读机是最合适,最保守的工具了。(要买名牌的哦!)一边反复听,一边勤跟读,如此再相比较,才能纠正发音,准确而快速地学习发音。这算是我的一点经验吧,发音对当初于刚刚开始学习韩语的我来说也是个大难题。字母不少,发音更不少,要怎么去背?我一有空就去背,可一转头就会忘,还像瞎子一样,背一个忘一个,经常弄混,很头痛。后来我就不刻意去背了,而是直接去 研究 单词。看到一个单词就把它拆成一个个字母,再字母的读音拼出单词的发音,这样时间一长,不仅字母和字母发音不用背,就能滚瓜烂熟,而且已经可以看到马上就念出各种复杂的句子了。很管用。 第二难题,是我至今还在困扰的语法了。韩语的终结词尾真的是多死了,光看就头晕。别让它吓到,虽然我现在也在头痛,但多少摸出点门路,够初学者参考。去买本书吧,别再依赖电脑了。网站上的是在学的明白后用来巩固和纠正的,不能光靠它来学。类似《初学韩语》,《轻松学韩语》的简易又实用的书籍很适合刚入门的你们。(也要注意正版,印刷质量会很好,也不会出错。通常会附带磁带。)在学这本书时把书上提到的语法和终结词尾全部分门别类地记载到笔记本上。再回头去看书上列举的文章,一句句分析。见到一个终结词尾就马上到笔记本上找记录。因为这些终结词尾也分接在陈述句, 疑问 句,感叹句,共动句之后,所以要记起来不是十分难。这样时间长了,印象慢慢就会很深了,不用背,看到一个句型马上就知道接怎样的词尾,也会通过看词尾来翻译句子了。 至于口语,还是我那句老话——疯狂韩语!只要看到,随时随地,想念就念,大声喊出,别怕笑话(也没人会笑话你,还会有人佩服你呢!)。念多了,口语自然顶呱呱了。这样你和韩国人沟通的时候,才能显现出来你的语言天赋!很自豪的,以及会给你带来打工的机会! 第三个难题就是韩语中的尊敬语部分,这个也是我们中国人最难学的一个部分,因为中文当中的尊敬语常用的非常少,我能记住的也就一个”您”字,就都能代替了!但是韩语中尊敬语的文法非常的 繁琐 ,但是,你也不要太心急,因为,通过打工实习,你就会觉得马上有质的变化! 到韩国后,可以约一两个朋友到处溜达溜达,见什么就说什么,这样对韩语的提高也是很有帮助的.如果在学韩语的过程中遇到什么问题的话,可以讲出来大家研究,我可以帮助大家! 只要有耐心,恒心,勤学勤练勤念,美美的韩语照样可以从你的嘴里溜出来哦! 最后还是那句话,”只要功夫深,铁锄磨成针”!! 语法上几乎没 区别 ,但是用词和发音上区别较大。最大的区别是在外来语上。 朝鲜语基本上没有外来语,而韩语外来语的词汇量非常大。 外来语主要是中文,日语和英语的转化,近几年来,法语和德语词也出现了不少。 应该说半个多世纪在政治上、意识形态上的差异给南北两方的 语言 也造成了很大的不同。 1)语音方面 单个的辅音、元音基本上没有什么大的不同,主要是“ㅓ,ㅕ”这两个元音在韩国语里发得更接近“ㅗ,ㅛ”,而北朝鲜更接近“ㅡ,ㅕ”。在语调上南北有着明显的差异,总体来说韩国的语调比较高,比较柔;而北朝鲜的则比较低、比较硬。 还有一点也明显不同,韩国语里面有“头音规则”,即北朝鲜的“녀자(女人)、리XX(李XX)”在韩国语里则是“여자、이XX”。 2)词汇方面 因为社会发展程度的不同,韩国语的词汇更丰富、发展更活跃。而且在外来词方面,韩国接受得更多,像“와이프(wife)、나이프(knife)”这样的外来词在北朝鲜语言里就没有,北朝鲜一般只会说“안해(妻子)、칼(刀子)”。即便是像“电脑”这样在南北语言里都借用外来词的 情况 ,两者间也会有一些差异,韩国叫“컴퓨터”,而北朝鲜叫“콤퓨터”。 3)语法方面 应该说在语法方面两者之间没有太大的差异。但一些在韩国使用率很高的用法,在北朝鲜则基本不太使用,如韩国语里面表示猜测的“-나봐요”、"-가봐요"在朝鲜语基本不太使用。 4)日常用语 举例来说,在说“没关系”时,朝鲜语说“일없습니다.”,韩国语里面则说“괜찮습니다.”.再比如,在说“ 厕所 ”时,朝鲜语说“위생실(卫生室)”,而韩国语里说“화장실(化妆室)”。 关于朝鲜语和韩国语的差别,很难一言而尽.只有大家慢慢体会了。
个人分类: 学习、语言|0 个评论
关于学习JAVA语言知识的一点体会
yjercou 2011-8-27 16:15
1 次阅读|0 个评论
[转载]流体力学的路线图(之一)
wangwen6172277 2011-8-25 16:18
转载周华老师的文章: 流体力学的路线图(之一) 流体力学基础理论的学习历来被初学者视为畏途,每到学习结束要进入期末考试的时候,老师和学生一样心中难免忐忑,在流体力学这门课上挂科已经成为某种常态。即使是学习多年的老手也会在具体问题面前感到基础尚不完备,还不够扎实。这个问题的起源当然与流体运动规律本身的复杂性有关,这个复杂性导致流体力学与大家印象中的“学科”概念有一定的出入。比如我们在学习高等数学时,很容易发现,数学是一门“咬文嚼字”的学科,里面充满严格定义的概念,不论学习线性代数还是微积分,都是从一些基本公理出发,循着一条严格的逻辑路线,架构起整门课程。因为数学有这样逻辑严密的特点,所以虽然学起来也不容易,但大家一致认为数学是美的,而且不论谁写的数学书,比如微积分的书,内容都只有程度深浅的差异,而绝没有内容上的巨大差异。 流体力学则有所不同,流体的流动本身是一种连续不断的变形过程,经典的流体力学理论以连续介质假设为基础,将整个流体看作连续介质,同时将其运动看作连续运动。但是由于流体是复杂的,实际上至今还没有完全掌握其全貌,因此流体力学在建立了基本控制方程后,就开始转而从一些特殊的流动出发,采用根据流动特点进行简化的方式,先建立物理模型,再得到数学模型,进而得到我们在书中经常看到的很多“理论”,比如不可压无旋流、旋涡动力学、水波动力学、气体动力学等等,甚至理论中还包括理论,比如不可压无旋流中还有自由流线理论,等等。形成一个类似于俄罗斯套娃的学科结构,这种结构容易给人一种支离破碎的印象。特别是在各个理论之间联系比较薄弱的时候,更容易给人这种印象。似乎一门课中又包含了很多门“小课”,每门“小课”使用的数学工具也完全不同,甚至很多同行还进一步把自己分成是学气的(比如空气动力学),或者是学水的(比如学船舶的)等等。 就象旅行者要有一张地图才能更高效率地到达目的地一样,如果能有一张流体力学的地图,或者叫路线图(roadmap),应该对初学者有很大帮助。这张图就是这门学科的脉络,其中应包含流体力学的主要理论内容,扩展一步的话,还应该包括数学基础(先修课)和主要分支学科。先在这里做个记号,有时间的时候慢慢地先从流体力学基础理论入手,给出一个粗略的路线图,然后再逐渐给出分支学科的路线图,比如空气动力学、计算流体力学的路线图。希望能抛砖引玉,激发出同行们的兴趣,加入绘制路线图的工作。在想象中,这个路线图应该有学科的主要内容,同时应该有相关的参考书。这样初学者就可以按图索骥,沿着一条正确的道路,更快地步入流体的大门。想想自己过去的学习道路,都是摸着石头过河,反复试错地在学习。特别是很多教科书在印刷、内容方面的种种错漏,更加深了这种灾难,作为过来人写写自己的旅游观感,对后来者应该是有帮助的,至少是有借鉴价值的。 一、流体力学的先修课 先说说在学习流体力学之前要具备哪些基础知识,用学校里的行话叫先学哪些先修课。首先当然是要学习一些数学知识。这里只谈在本科阶段学习流体力学这门课的先修课,成为业内翘楚是另一个话题,需要学的东西更多一些。 流体力学这门课主要是在连续介质假设下展开的,也就是要把流体看作连续介质,把流体运动看作连续运动。在宏观运动范围内,除了在激波处速度、密度、压强等参数有突变,其它情况下,流体运动确实是连续的,流体质点分布也是连续无间断的。这个连续是数学意义上的连续,做这个假设的好处其实就是便于使用微积分工具研究流体的动力学问题。于是自然而然地,微积分就是第一样需要学好的知识。在微积分里,除了要掌握连续、极限等基本概念外,比较常用的内容有多元函数的微积分(全微分、链式法则)、高斯定理、上下限含参数积分的微分等内容。其中上下限含参数积分的微分在学习开尔文定理的时候要用到,但是很多学校的高等数学课中都不讲,我记得也是在图书馆的一些名为《高等微积分》的书上才有这个内容的讲解。这个微分的本质就是复合函数求导数。由于微积分大量出现在书中,是流体力学的基本分析工具,所以微积分一定要达到熟练才行。这方面的书太多了,只要选择你看得懂的书就可以,就不特别推荐哪本书了。 不过最近刚看到王元先生写的《高等微积分》,内容跟上面说的那些《高等微积分》不同,主要讲微分流形及在一般力学中的应用。这本书专门设置了一个第零章,用于讨论数学语言问题。我觉得还是值得一看的。根据过去学习数学的教训,数学上看不懂和理解错误的地方往往是对其语言不了解的地方。王元先生专门谈这个问题,看来也是知道很多学生虽然学了很多年数学其实还没有掌握数学的基本语法。 在掌握微积分后,还要学习复变函数,特别是保角变换这部分,因为在流体力学的不可压无旋流动这部分,或者叫位势流理论这部分,涉及到复位势及其变换问题,用到的主要就是复变函数的知识。用保角变换把一些复杂形体变换为圆柱等简单形体,然后用圆柱的结论反推复杂形体的流场,这是这部分内容的基本思路。很多人大概都会疑惑,为什么流体力学对圆柱绕流那么感兴趣,直到现在还有很多涉及圆柱绕流的文章在发表。我想其原因一方面是圆柱绕流是简单几何形体,容易把某种影响流动的因素孤立出来,另一方面就是圆柱绕流的实验、数值经验比较丰富,容易让人做个对比(特别是在验证一些新算法的时候),最后一个原因就是有一个位势流理论,可以把圆柱绕流的结果推而广之到一些复杂形体中去。虽然现在已经可以用数值方法求解全NS方程,但是位势流理论并没有推出舞台,在很多工程应用(比如翼型设计等)中还在发挥作用,还是构成流体力学基础理论的一个特别部分。这部分内容除了可以让你掌握一种求解方法,还为你提供了机理分析的工具,其价值还是非常大的。 第三个要掌握的是矢量、张量分析。这部分要掌握矢量、张量的表示方法,张量的隐含求和、并矢计算、克罗内克符号的含义,梯度、散度、旋度的计算方法。矢量、张量的内容有些学校在高等数学课上学习,有些学校在连续介质力学课上学习,还有些学校是单独作为一门课在学习,无论怎样,只要掌握会用就可以。这方面的内容只要看吴望一老师的《流体力学》上册第一章就足够。这一章中还包括了曲线坐标系的内容,对于学习球座标、柱座标等座标系下方程形式的变化是很有帮助的。 最后一个内容就是热力学知识。这是推导能量方程的基础,显然是要掌握的。热力学方面除了经典热力学知识(热力学第一、第二定律、热力学状态函数等)外,在学习高超声速空气动力学时还需要用到开放体系的热力学知识,涉及平衡、非平衡体系的热力学问题,因此按照循序渐进的方式,在学习流体力学基础课之前应掌握经典热力学的基本知识,在进一步学习时则要用到开放体系(耗散体系)的热力学知识。当然除了高超声速外,在研究流体的微观、介观问题时也要涉及分子动力学(现在叫动理学,即英文中的kinetics一词)知识。包括统计力学在内,这些内容一般都被划归热力学范畴。两相流中的结晶、凝固、熔化等问题也都与热力学直接相关,因此热力学是流体力学的重要支柱之一。 不知是否因为华人学者对LBM方法等无网格方法的贡献较大,近年无网格法,特别是LBM方法在国内有长足进步,一觉醒来,仿佛一夜之间身边涌现出很多LBM专家。LBM方法的核心理论就是以分子动力学为基础的,包括Boltzmann方程、查普曼-恩斯克格展开等都是分子动力学的核心内容。WOW,突然发现热力学还有这样的用途,那就更要好好学学了!
4269 次阅读|0 个评论
让你轻松一下,开心一刻
热度 1 lzxun123 2011-7-16 12:41
让你轻松一下,开心一刻
时代越发展,社会越进步,在我看来,人们就活得越累。你不要看那些表现风光无限的人,他们也往往心累。不说奥巴马,不说我们国家日理万机的领导人,就说那些耀眼的明星,常常要为亮相春晚而牺牲与家人与情人共度美好时光,就像我们许多人为生存为发展而常常无法尽我们想要尽的责任与义务,我们在生活和工作中甚至常常不是自由自主地说笑……也许这是我们喜欢搞笑的一个原因,我们实在缺乏可以放松自己的机会、条件、空间和时间。下面转帖一些让我们可以放松的东西。 据说一张人民币够几个人花,上面就印几个人 (见下图) “混搭”诗句 笑料百出 来源: 北京青年报 古时文人有一种风雅的文字游戏,即选取前人不同的诗文中的句子重新组合为新的对联或诗句,称作“集句”。近来网络风行“混搭”“百搭”诗句帖,不为集句的风雅,却与解构重组、逗趣恶搞有关。“混搭”诗句多半始于无意中背串的诗句,两句原不相干的诗混作一处,表达出的意思让人啼笑皆非;而“百搭”诗句则是有意而为的总结,结果令人狂汗。此游戏对于有一定文学修养的人,止一笑尔,若是初学者,万望谨慎,莫要耽误了对古典诗文的正解。   少小离家老大回,安能辨我是雄雌。(苦命的人儿,这些年你都经历了什么?)   红酥手,黄藤酒,两个黄鹂鸣翠柳。长亭外,古道边,一行白鹭上青天。(真顺,真有意境,)   夜深忽梦少年事,惟梦闲人不梦君。(跟此人有仇啊?)   借问酒家何处有,姑苏城外寒山寺。(不许瞎说!)   洛阳亲友如相问,轻舟已过万重山。(欠人钱了?跑得够快的啊!)   爷娘闻女来,举身赴清池;阿姊闻妹来,自挂东南枝。小弟闻姊来,琵琶声停欲语迟。(这位姑娘,你人品真差)   在天愿作比翼鸟,大难临头各自飞。(你俩真配……)   美人卷珠帘,万径人踪灭。两岸猿声啼不住,惊起蛙声一片。(这还是美人吗?!)   劝君更尽一杯酒,从此萧郎是路人。(这么绝情?)   垂死病中惊坐起,笑问客从何处来(装病?回光返照?)   车辚辚,马萧萧,二月春风似剪刀。(贾府组织春游?)   满堂花醉三千客,更无一人是知音。(天才都是孤独的)   问君能有几多愁,别是一番滋味在心头。(这究竟是不是原配啊?)   醒时同交欢,儿女忽成行。(因果关系)   江州司马青衫湿,宣城太守知不知。(有JQ)   仰天大笑出门去,无人知是荔枝来。(爱吃成狂啊!)   天苍苍,野茫茫,一树梨花压海棠。(春光乍泄……)   朕与将军解战袍,芙蓉帐暖度春宵。(呃,这个……)   ■百搭诗句之君王不早朝的N种原因   身无彩凤双飞翼,从此君王不早朝。(臭美的君王)   黄鹤一去不复返,从此君王不早朝。(找鹤去了?)   花径未曾缘客扫,从此君王不早朝。(邪恶……)   停车坐爱枫林晚,从此君王不早朝。(看晚了回不来)   少小离家老大回,从此君王不早朝。(老大回来了,老大来早朝吧)   人生在世不称意,从此君王不早朝。(朝得不爽,咋地吧)   玉盘珍馐值万钱,从此君王不早朝。(吃东西去)   且就洞庭赊月色,从此君王不早朝。(欠债了不敢上朝)   醉卧沙场君莫笑,从此君王不早朝。(估计也早朝不了了)   冬雷震震夏雨雪,从此君王不早朝。(气候恶劣影响君王心情)   庭院深深深几许,从此君王不早朝。(迷路了)   昨夜寒蛩不住鸣,从此君王不早朝。(没睡好)   白首相知犹按剑,从此君王不早朝。(有刺客……)   人面不知何处去,从此君王不早朝。(恐怖片啊)
个人分类: 天南地北|3230 次阅读|3 个评论
我们这样唱红歌
热度 1 weiqiang037 2011-7-1 15:20
昨天看到有人讨论时下唱红歌的事(《 下午要唱红歌,请教哲学家,唱红歌促和谐提高生产力是唯心主义 吗 》),我也想谈点自己的看法(我只是一个哲学的爱好者,也是初学者,有说的不对的地方还望大家多多包涵,也欢迎批评指正): 其实人类的生活和活动是由物质和精神共同构成的,并不存在单纯的物质活动或者精神活动。但为了能更深刻的把握和了解这种活动,哲学先祖们把它分为物质活动和精神活动两部分,对于这两者谁决定谁的回答就出现了唯物主义、唯心主义和二元论三种不同的答案,其实二元论最终还是唯心的。这是常识,大家都知道。 按我的理解,时下的唱红歌属于精神活动,因为它主要是唤起人们的红色记忆,加强革命传统教育。但是,红歌本身是特殊历史条件的产物,是某种社会存在在精神上的反映。现在,这些红歌能激起人们的精神振奋的那些历史条件基本已经不存在了。唱的人只是唱而已,他们本身并不具有红歌所表达的精神。 贪污腐化是一定经济条件下的产物,需要有相关的政策、政治体制改革和权力张力才能解决,并不能依赖于通过唱红歌来解决。不能离开具体的历史条件去夸大唱红歌的作用,也不能抽象地说唱红歌有用或没有用。 红歌是可以唱,也应该唱,但别赋予它过多的意义。我倒觉得可以换种方式唱红歌,比如党政部门在开会之前或每天正式工作之前集体来选一首红歌唱唱,而且不能重复唱过的,这样既节约了成本又领会了红歌精神,还可以把更多的资金投入到更加需要的医疗、教育、卫生等领域来,何乐而不为呢?
2138 次阅读|1 个评论
[转载]用C#创建可拖动窗体
dolphinzhu 2011-6-27 00:15
所谓“可拖动窗体”就是无需拖动标题栏就可以拖动的窗体,这在一个没有标题栏的窗体上是一种非常有用的技术。关于这一方面的技巧,网上已经有很多介 绍,但都不是很详尽,有些实现也不够简洁。最主要的,这些介绍大多是大片大片的源代码,很少讲解;初学者学期来恐怕要费些力气(我在学习这个技巧的时候就 很痛苦)。在这里,我对这个技巧进行了一个详细的讲解,相信各位初学者朋友可以学会如何制作可拖动窗体。   (注:本文期望的读者是那些有一定用C#开发Windows程序基础但暂时还不会制作可拖动窗体的朋友。)   首先,我们来复习一下一个Windows窗体的组成。请看这张图:   图1 Windows窗体构成   这是一个形式化的标准Windows窗体。首先,窗体的顶部是一个标题栏,其余的部分是窗体的主体,包围在窗体主体外围的是一个边框,边框内不就是我们放置控件或绘制图形的用户区。    图中还标明了各种窗体构造元素的尺寸的获得方法。对于用户区,System.Windows.Forms.Form提供了实例属性 ClientSize,相信大家已经很熟悉了。而要想活棋一般性的窗体构造元素(如标题栏、边框等)的尺寸,我们可以使用.NET类库中提供的一个 类:System.Windows.Forms.SystemInformation,这个类提供了一些静态属性如表示标题栏高度的 CaptionHeight。有关SystemInformation类的信息可以在.NET SDK文档目录“.NET Framework SDK - 参考 - 类库 - System.Windows.Forms - SystemInformation 类”处找到(注:这里的超链接只在您安装了.NET Framework 1.1简体中文版并且安装了配套文档时才有效)。这是一个很有用的类,希望大家能够记住它(可能您早就知道了,可我是才知道的-_-汗~~)。  接下来,我们来看看如何在在用户区拖动鼠标时移动窗体。请看下面这张图:   图2 窗体的移动   我们来观察鼠标在窗体内的位置和窗体的移动,很容易可以发现:在窗体被拖动的过程中,鼠标在窗体内的相对位置是始终不变的!那么,我们只要检测到鼠标在屏幕中的移动并修改窗体的位置就可以达到拖动窗体的目的!    我们知道,在鼠标消息/事件处理中,只能得到鼠标相对于窗体的位置。那么,如何知道鼠标在屏幕中的位置呢?这里又要提到一个 类:System.Windows.Forms.Control类。也许你会很吃惊:这不是所有控件的基类么?呵呵~是这样di。不过,尽管是这 样,Control类却没有像其他广泛使用的基类那样被声明为抽象类,而且它提供了一个静态属性:MousePosition,通过这个属性可以得到鼠标 相对于屏幕的位置。有关Control类的信息可以在.NET Framework文档目录“.NET Framework SDK - 参考 - 类库 - System.Windows.Forms - Control 类”处找到(注:这里的超链接只在您安装了.NET Framework 1.1简体中文版并且安装了配套文档时才有效)。   知道了如何 获取这些信息之后,制作移动窗体实际上就成了一个很简单的问题了。基本过程是这样的:首先,在鼠标(左键或一个你喜欢的键)按下时,记录鼠标位置;由于在 移动的过程中,鼠标的屏幕坐标发生变化但窗体相对坐标不变,我们可以推算出窗体位置的变化为(假设mousePosition具有 System.Drawing.Point类型,表示鼠标在窗体中的相对坐标):   // 示例代码1 Form.Top = Control.MousePosition.Y - mousePosition.Y; Form.Left = Control.MousePosition.X - mousePosition.X;   这样还不行,因为我们的mousePosition表示的是鼠标在窗体用户区内的相对坐标,但在移动窗体的时候还要考虑窗体标题栏和边框的尺寸。在上面的基础上,我们将代码修正为:   // 示例代码2 Form.Top = Control.MousePosition.Y - mousePosition.Y - SystemInformation.FrameBorderSize.Height - SystemInformation.CaptionHeight; Form.Left = Control.MousePosition.Y - mousePosition.Y - SystemInformation.FrameBorderSize.Width;   也就是说,在高度上(纵坐标)要减去标题栏的高度和边框的高度,而在宽度上(横坐标)要减去边框的宽度。然而,当制作一个既没有标题栏也没有边框的可拖动窗体时,使用“示例代码1”所示的代码就可以了。   上面的代码只是一个示范性代码。具体的操作如下:   首先,为窗体添加一个私有域:   private System.Drawing.Point mousePoint;   然后,为窗体添加鼠标按下事件处理方法(我这里是MainForm_MouseDown,别忘了将该方法链接到MainForm.MouseDown事件,这不用多说了吧?):   private void MainForm_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { if(e.Button == MouseButtons.Left) { this.mousePosition.X = e.X; this.mousePosition.Y = e.Y; } }   在这里注意对鼠标按键进行筛选。   接下来,为窗体添加鼠标移动事件处理方法(我这里是MainForm_MouseMove):   private void MainForm_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) { if(e.Button == MouseButtons.Left) { Form.Top = Control.MousePosition.Y - mousePosition.Y - SystemInformation.FrameBorderSize.Height - SystemInformation.CaptionHeight; Form.Left = Control.MousePosition.Y - mousePosition.Y - SystemInformation.FrameBorderSize.Width; } }  这里,如果窗体没有标题栏,可以去掉“-SystemInformation.CaptionHeight”;如果窗体没有边框,还可以去掉“- SystemInformation.FrameBorderSize.Height”和“- SystemInformation.FrameBorderSize.Width”。   现在,您是不是已经很清楚地明白如何用C#制作可拖动窗口了?祝贺您!最后,送您一个小礼物——桌面时钟。很简洁、很有意思哦~~~   另外赠送小技巧三则:   如何制作不规则窗体 这个技巧我掌握的还不是很丰富,现在介绍一种最简单的方法——通过设置窗体的Region属性。首先,声明一个 System.Drawing.Drawing2D.GraphicsPath变量,在这个变量中添加您期望作为窗体轮廓的形状组合;之后,从这个变量生 成一个System.Drawing.Region实例,并赋给窗体的Region属性即可。如:   GraphicsPath gp = new GraphicsPath(); gp.AddEllipse(0, 0, 120, 120); Region r = new Region(gp); this.Region = r;   将上述代码添加到窗体的构造函数中,我们就能够得到一个自定义的窗体了,这个窗体是一个直径为120像素的圆形(也是我的时钟的外观哦)。   如何生成没有边框的窗体 将窗体的FormBorderStyle设置为None即可。这很简单事么?那么   如何生成有边框但没有标题栏的窗体 首先将窗体的ControlBox属性设置为false,也就是不要控制按钮(窗体图标、最大最小化按钮和关闭按钮)。按说这时就不应该有标题栏了,但 我们还能看到它很烦人地待在那里,因此,我们要把窗体的Text属性设置为空(注意是String.Empty,而不是null)。 转自 http://www.cnblogs.com/turtlet/archive/2008/08/04/1259587.html
个人分类: CSHARP|2547 次阅读|0 个评论
如果编程语言是一条船
热度 1 longxie1983 2011-6-16 16:30
如果编程语言是一条船
刚刚在google reader上看到的,太给力了。 Turing:小巧,适合初学者,就像 kayak(皮划艇) Java:本身很庞大,能容纳很多东西,就像 货轮 Perl:有四两拨千斤之巧,就像 拖船 Ruby:时尚,性感,总之很潮,就像 摩托艇 PHP:很简陋,有些东拼西凑,就像 木筏 C:指令像外语,但是性能最出色,就像 核潜艇 HTML:根本不是编程语言..... ===================================================================== FORTRAN:专为数字而生的,就像 护卫舰 R, MATLAB, SAS:擅长科学发现,但是需要更大的载体来移动,就像 深海探测器 注:图片来自网络,版权归原作者所有。 原文:http://mendel.soup.io/post/138357929/If-a-programming-language-was-a-boat
个人分类: 杂文|5749 次阅读|2 个评论
[转载]Fortran 编程学习
热度 2 wlusheng 2011-6-5 09:07
1.把Fortran90/95/2003当成一门新的语言学习(虽然和Fortran77有关系!); 2.直接学习Fortran90或Fortran95或Fortran2003,不要只学Fortran77 3.初学者最好先看《Fortran 95程序设计【彭国伦】》,不要因为FORTRAN95很难而转向Fortran77,即使我们自己是初学者; 4.不要放过任何一个看上去很简单的小编程问题——他们往往并不那么简单,或者可以引伸出很多知识点; 5.会用Fortran 77,能解决很多问题;会用Fortran90,能更加简单的解决更多问题; 6.学习如何编写和使用module, type,allocate并不难,point,函数重载,binding(c)也是如此——难的是长期坚持实践和不遗余力的博览群书; 7.学Fotran90是为了解决实际的数学、物理等问题的,不是用来编漂亮的界面的 8.看Fortran77的书,是学不会Fortran90语言的; 9.浮躁的人容易说:XX语言不行了,应该学YY;——是你自己不行了吧!? 10.浮躁的人容易问:我到底该学什么;——别问,学就对了; 11.浮躁的人容易问:XX有钱途吗;——建议你去抢银行; 12.浮躁的人容易说:我要中文版!我英文不行!——不行?学呀! 13.浮躁的人容易问:XX和YY哪个好;——告诉你吧,都好——只要你学就行; 14.浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持的人; 15.把时髦的技术挂在嘴边,还不如把过时的技术记在心里; 16.Fortran90也是支持面向对象的程序设计语言; 17.学习编程最好的方法之一就是阅读源代码; 18.在任何时刻都不要认为自己手中的书已经足够了; 19. 请深入理解IEEE浮点数,至少读读 《What Every Computer Scientist Should Know About Floating- Point Arithmetic》 或是 《IEEE Standard 754 Floating Point Numbers》 20.看得懂的书,请仔细看;看不懂的书,请硬着头皮看; 21.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍、第N遍; 22. Fortran90也可以设计windows程序,也可以链接数据库,但请牢牢记住,Fortran被设计的目的是用最简单的语言(与数学语言最接近的语言)来做科学计算的 23. 请看《Fortran 90-95 Explained》,《Object-Oriented Programming Via F95》和 《Numerical Recipes In Fortran 77 90》,以及《Introduction to FORTRAN90》 和《Fortran90 Course Notes》; 24.不要停留在集成开发环境的摇篮上,要学会控制集成开发环境,还要学会用命令行方式处理程序; 25.和别人一起讨论有意义的Frotran90知识点,而不是争吵XX行不行或者YY与ZZ哪个好; 26.请看《程序设计实践》,并严格的按照其要求去做; 27. 请经常上Fortran的论坛了解Fortran的最新进展和讨论Fortran的有关问题,国内可以上 http://www.programfan.com/club/bbs.asp?bbsid=16,国外可以上http: //www.google.com/Top/Computers/Programming/Languages/Fortran/;http: //softwareforums.intel.com/ISN/Community/en-US/forums/1005 /ShowForum.aspx ,最好的老师是网络,不会的问题问www.google.com 请记住以下名言:在外边有问题找google解决,在家里有问题找老婆(老公)解决。 29.请不要认为学过XX语言再改学Fortran90会有什么问题——你只不过又在学一门全新的语言而已; 31.学习编程的秘诀是:编程,编程,再编程; 34.请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码; 35.把在书中看到的有意义的例子扩充; 37.经常回顾自己以前写过的程序,并尝试重写,把自己学到的新知识运用进去; 38.不要漏掉书中任何一个练习题——请全部做完并记录下解题思路; 40.既然决定了学Fortran90,就请坚持学下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的; 41.就让Fortran语言的各种平台和开发环境去激烈的竞争吧,我们要以学习Fortran90语言本身为主; 42.当你写Fortran90程序写到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和编写; 43.别心急,设计Fortran的Type确实不容易;你的设计水平是在不断的编程实践中完善和发展的; 44.决不要因为程序“很小”就不遵循某些你不熟练的规则——好习惯是培养出来的,而不是一次记住的; 45.每学到一个Fortran90难点的时候,尝试着对别人讲解这个知识点并让他理解——你能讲清楚才说明你真的理解了; 46.记录下在和别人交流时发现的自己忽视或不理解的知识点; 47.请不断的对自己写的程序提出更高的要求,哪怕你的程序版本号会变成Version 100.XX; 48.保存好你写过的所有的程序——那是你最好的积累之一; 49.请不要做浮躁的人; 50.请热爱Fortan! 51. 理解fortran的向量语言概念。相关赋值、操作符、内部函数都可将数组整体或片断作为操作对象。 52. 关注fortran并行编程技术,释放fortran的威力! 53. 养成fortran严谨编程的习惯,使用implicit none、intent、interface语句,不要省略出错处理。 54. 经常看看bbs,参与讨论,是提高自己水平的好方法。
个人分类: 计算机工具|5323 次阅读|2 个评论
[转载]读博是一种人生历练
热度 1 aoxue306 2011-3-11 21:56
读了博士才知道并不像想象的那样,博士进去容易出来难!如果说你只想混个毕业,那么我还是劝你不要读了,如果只是相混的话,谈何容易!若是研究生的话,那还可以混,但是博士,决不是可以能混毕业的,必须自己真正做出点东西出来不可,所以我说读博士是一种历练! 如果你论文进展不顺利,请冷静的思考,寻求解决的办法,千万不要去怨天尤人,去自甘堕落,或者轻易放弃,这一切没有任何用处,对于没有毕业的博士而言,因为博士要毕业,它只看你的论文,这是一个真正的关口,不是靠关系或靠金钱能够换来的,所以,凡事不要找借口,赶快想办法,尽最大的努力,这才是关键,一定要保持清醒的头脑,顽强的斗志,直到博士毕业,所以说读博士真的是一种历练,如果你做不到这一点,那么,博士是很难混出来的。 另外,读博士是踏上社会最后的一步,所以的东西都必须在博士期间得到很好的锻炼,因为博士生已经不像本科生研究生那样,还处在一个初学者的状态,对这个社会还不是很了解,博士是已经经历了很多,如果毕业,那就是国家的栋梁,或者至少是家庭的顶梁柱,必须在博士期间都完成人生的洗礼和升华! 希望在这历练中我能学会许多!祝福!心若在,梦就在,还是那句话!
个人分类: 生活点滴|2708 次阅读|1 个评论
研究随感:好研究长什么样
热度 11 Rein 2011-2-14 15:44
声明: 本人本科毕业不到一年,所以对研究不会有太高深的见解……欢迎拍砖 正式开始读研究生后,虽然第一年也没怎么做研究,但是看问题和本科生阶段还是有点区别了。至少,在各种压力下,开始学着系统地阅读paper,开始学着系统地做Survey。 作为网络研究的初学者,一年一年系统地按topoic地读论文,和其他人discuss,是一件帮助很大的事情。因为我不急着做研究了,所以也不是特别只看最新的研究成果,而是从80年代的paper看起。除了paper,老师推荐了一些Internet发展历史之类的参考资料,也开始和这些paper的作者以及业界的人有一点点交流。于是我不禁去比较一下网络paper发展史和实际网络发展史,里面有很多有趣的东西。 1. 发现问题 VS 解决问题 我发现好的paper包括这样两类(不局限于这样两类): 一类是发现问题型,一类是解决问题型。比较典型的发现问题的paper例如incast的paper,比如roofnet比较早的那些measurement的paper。拿incast来说,这篇paper一问世,很多研究者开始研究解决方案,导致之后一两年的各类网络会议充斥了大量其解决方案的paper,不乏很不错的会议的best paper。我个人很喜欢读这种发现问题,或者是measurement的paper,很有趣。以后看看能不能向这个方向发展发展。 解决问题的paper就是各种各样了。其实我感觉paper从类别来分,有design, modeling, implementation, experiment型paper; experiment的paper大多属于前面发现问题类。 国内很多学校喜欢做modeling,也许是因为门槛相对较低,不需要太高的硬件条件。modeling不乏好paper。比如很多TCP congestion control分析的paper。design的paper怎么说呢,看历史上的paper吧,有很多很不错的design,但是一直没有被实现。也有一些design,变成了我们现在使用的internet。仔细看这些design的paper的作者,大概就是那几个大牛: 估计也就这些人比较有影响力吧。现在人比较喜欢implementation。当然sigcomm这种会议的implementation很大程度属于“伪系统”, 就是假装是个系统,其实还是要说明某种理论,比如ExOR, XORs in the air. 这种建立在真实用户中的可以长时间运行的真实系统,比较受欢迎影响力也很大。 而很多解决问题的好paper,他们的问题并不是凭空编造的,而是站在巨人肩膀上的。比如09年某paper提出了数据中心中布线错误检测的问题,10年就冒出了相关paper。当然不是所有paper都这样,有些问题是不需要提出来就存在的。再说久远点,多少人为了改善编码效率去追求当年香农老人家提出来的那个界啊。 而很多不咋的paper,就会建立在一些不存在的问题上。想起个笑话,三鹿事件后,某博士生研究出了一套高效检测奶粉中是否存在三聚氯胺的方法,投到某国际期刊,被据稿,理由是:牛奶中本没有三聚氯胺,何必多此一举? 2. 什么样的paper会真正被应用 某某教授03年统计了一下最近几年sigcomm中真正实际应用了的paper的数量,结论是0篇:也就是一篇都没有!为什么没有被应用?因为网络上的研究,动一发则牵扯全身。拿TCP来说,这是一个End-to-end的实现。你要修改里面的congestion control,很可能就得同时修改上十亿TCP设备里面的protocol。不过,这种大的改变也不是不可能。网络最早的通信协议应该算是NCP而不是TCP。在TCP提出后N年,一个精心策划的日子,所有NCP同时转换成TCP。 当然,那个时候的网络规模不算大。 至少,现在看来,(1)一切导致网络可能会发生剧烈变化,影响现有稳定性的研究,都很难被真正应用。比如,LB-switch, 比如naming。这些研究可能会导致和现有系统,例如TCP不兼容。有些研究,比如i3,虽然现在还没有实现,但是这个东西至少是有希望在现存网络中实现,至少兼容所有东西,并且可以incremental deployment,所以在(1)类中还是可以实现。但是,(2) 人们貌似不希望恶化现在已有的任何东西。 比如i3,能够解决很多问题,但是会导致更大的delay。虽然这个delay是bound的,但是很难说服ISP之类的去放弃现有的去引入一个更高delay的。(3) 不是很急迫需要的东西,很难去改。 这点是说,很多paper有很长远的计划,可能希望解决的是即将出现的很多application的支持问题。可是,这个问题并不迫切,而现有东西还过得去,于是就这样了。 虽然网络研究受到如此多的限制,但是并没有走进死胡同。感觉之后的网络研究开始侧重于各种testbed的开发研究,比如openflow, sora。这种软件定义的网络比起传统网络更容易修改。虽然这个很难解决已有的,例如LB-switch和TCP不兼容的问题,但是假设我们有了建立在软件定义上的新的某种“TCP”,又发明了新的LB-switch,并且他们不兼容,我们要对那个新的“TCP"进行修改的日子,就不会像现在这么痛苦。除了testbed的研究,还有很多局部网络,比如数据中心的研究。这是小规模的网络,拥有者可以轻松地修改里面的所有东西,不像现在internet改起来如此痛苦。 说不定,当有了很好的test bed,很多成功运行的data center,我们也许可以去动动庞大的internet的根基。 3. 研究的原则 不得不说有些大家,经常会发表一些不错的文章,来强调各种网络设计的principal,仔细看看其实蛮有好处。虽然这些原则不能盲从,比如E2E,作者强调要分情况考虑,但是很多东西如果在自己开始做研究前看了,就不会出现做出很差很差的研究了。 举个例子,某早期交换机VOQ设计的论文中,提出了交换机设计的4个原则,其中一个原则就是一个成功的交换机的调度算法速度一定要快,得在5ns才能满足交换机需求。所以,那些早期的基于VOQ的调度算法都很简单,并不完美。很多失败的交换机调度论文,比如network coding的,很难最后被应用:即使像我自己写的,简化了编码降低了计算复杂度的,想要达到5ns还是很困难。虽然这些大牛说的未必就是不可违背的金科玉律。但是我的观察来看,违背了这些原则的paper,很多都不是好paper。 读那些大家的论文,也许你不觉得他的算法多么巧妙。但是凭着他们在网络研究领域里面多闯荡了数十年,对现在问题的把握比我们这些初学者要准确得多。顺着他们指的一些路,可以避免自己胡思乱想想出很多不切实际的东西。 -----------------------------------------------我是华丽的分割线---------------------------------------------------------- 最后,说件事。前段时间国内寒假,很多小朋友跑到Stanford来参观。还有小朋友找上我,让我介绍申请经验和研究经验。其中他问了我个问题,你想idea需要多长时间。我突然觉得,其实本科时想个新的研究idea要不了太长时间的。不过本科毕业后到现在半年,大概我再也没有过去想过新的idea。这是进步呢,还是退步呢?
个人分类: 学习交流|9377 次阅读|13 个评论
先专再全
bricklayer 2011-2-3 20:17
决定改掉一个坏习惯: 求全而不求精的坏习惯。 首先,为了能去名企研究院做研发,定位数据挖掘领域,在创造之中积累知识,一些基础有需要再看; 平时的闲书:哲学,数学物理(主要是思想和发展史),英语; 太极一定要练,锻炼耐心; 不做管理,只做技术研发,目标是做领域的技术专家。 失去耐心或遇到挫折的时候,从零开始,以初学者的心态看问题。 不能再瞎忙了,要制定一个合理的时间安排。 十年如一日,相信定有所成。
个人分类: 生活点滴|143 次阅读|0 个评论
从零开始
bricklayer 2011-2-3 11:43
成功者的哲学总告诉我们:从零开始。 什么是“从零开始”? 为什么要“从零开始”? 如何“从零开始”? 什么是“从零开始”? “从零开始”就是忘记以前的所有,不管你以前多么的不幸还是何等地辉煌过,无论是对自己一无是处或一无所知而痛苦自责,还是自以为学识渊博无所不能而洋洋自得,以一个初学者的心态,重新开始,如饥似渴地学,一步一步做。 为什么要“从零开始”? 从零开始”用什么好处? 一. 以从零开始的心态,觉得世界是多么地新奇,保持一份强烈的好奇心,求知欲,这样你会非常快乐。 二. 以从零开始的心态,能够使以一种非常简单的心理看问题,这样能够摆脱很多心理上的缚束,心放得开,因此更具有创造力。 三. 以从零开始的心态,在你做一件事毫无信心的时候或觉得厌烦了的时候,能够使你能够保持长久的耐心和信心。 四. 以从零开始的心态,能够使你胜不骄,没有永恒地终点,终点即起点。 五. 以从零开始的心态,能够使你败不馁,心里上告诉自己,“怕什么,我才刚刚开始”。 《道德经》第一章有一句,“ 故常无欲以观其妙,常有欲以观其徼 ”,我觉得如下这种解释更为合理: 如果我们对一件事物一无所知的时候,我们就想探探它的深渊高妙何在;当对它有所了解的时候,我们就急切地想看看它的尽头(或终点)在哪里(徼,有“边界”的意思 )。 想想我以前我看一本大厚书的时候,刚开始还是觉得挺有信心的,想探求这书中讲了什么高深奥妙的道理或技术;当看着看着,就没什么耐心了,总不时地往后面翻,看看还有多少页,总是感叹,“看不完了,还有这么多”。 如果做到从零开始? 太极拳动作本身简单,更是一个考验人毅力和耐心的时候。如果你每次都以一个初学者的心态,你定能坚持。 下面看一则苏格拉底的故事。 有一天,一个学生在课堂上问苏格拉底,怎样才能成为像苏格拉底那样学识渊博的学者。苏格拉底没有直接作答,只是说:“今天我们只做一件最简单也是最容易的事,每个人把胳膊尽量往前甩,然后再尽量往后甩。”苏格拉底示范了一遍,说:“从今天开始,大家每天做三百下,能做到吗?”学生们都笑了:这么简单的事,有什么做不到的?过了一个月,苏格拉底问学生:“哪些同学坚持了?”教室里有百分之九十的学生举起了手。一年过后,苏格拉底再次问学生:“请告诉我,最简单的甩手动作,有哪几位同学坚持做到了今天?”这时整个教室里只有一个学生举起了手,这个学生就是后来成为著名哲学家的柏拉图。 大家一定惊叹柏拉图的意志力。具有耐心和意志力很简单,忘记昨天所成,把自己当成一个三岁小孩,从零开始。简单好奇的眼光看问题,你不仅快乐,而却还能得到意外收获。多么划算阿。 难怪说真正的大师都虚怀若谷的; 难怪苏格拉底常说,“我自知一无所知”; 难怪Steve Jobs告诫我们:stay hungry, stay foolish. 在我们在做一件事情失败或失去耐心了的时候,请告诉自己:“我本来就笨,本来学得慢,大不了重新开始做,做一百遍一千遍,我就不相信做不好。 大智若愚的道理懂了吗?
183 次阅读|0 个评论
汉语植物名用字正音
antiscience 2011-1-22 13:37
随便翻开一本汉字字典,大量汉字涉及植物名(比如草字头或木字旁的字),但今天的 我们根本不认识它们,更谈不上通晓古人使用那些字时的意义(meaning)和指称(reference) 了!即使当今中国植物学界常用的许多汉字,也不容易读准确。其中有些字出现频率又非常 高,为方便初学者,避免一错再错,这里选了一部分,只列出正音。故意不列误读,以免被 “带到沟里”!因为有时候读者本来会读,经常见到错误的读法,反而忘记了正音。个别字 的读音可能有争议;我整理时也可能出错,请大家补充,使用时小心。 详见附件PDF文件: ChineseNames.pdf
2730 次阅读|0 个评论
什么样的加密是安全的?
热度 2 chzg99 2011-1-17 10:04
Jonathan Katz和Yehuda Lindell的《Introduction to modern cryptography》给出了一连串的解释,相当循循善诱。 我常想有些人写书该说的总是不说,这是教材的通病,恰恰是教材才应该说内容背后的故事,初学者才能知道这是如何来的,为什么要这样。Jonathan Katz适合做老师,但他的学问也做得非常好。有时候何必要故弄弦虚呢,搞得全世界人都看不懂,以为这样才牛。 什么样的加密是安全的?在每个人的心里都有一种直观的定义,所以有些人认为对安全的这种直观定义转成形式化定义是很容易的,没必要去严格的形式化定义。这样的想法是错误的。一方面每个人对安全的含义都有不同的感受,甚至就算是一个人在不同的环境下也会有不同的感受。因此,把直观定义转换成一种合适的定义并非易事。例如对于加密来说,我们认为加密方案就是达到如下效果:只有知道密钥的人可以读取明文。然而这样一件事如何形式化呢?各位可以开动脑筋想想。 这个问题我们也经常问学生:加密的安全应该如何定义?通常会得到如下几种回答: 回答1、对于一个给定的密文,如果敌手不能够发现密钥的话,就说该加密方案是安全的。这样的定义是偏离了问题的本质。加密的目的在于保护被加密的明文,密钥仅仅是达到这一目的的手段而已。举个最不靠谱的例子,考虑一个加密方案,该加密方案不需要密钥就直接输出明文,显然在这种情况下没有敌手能够发现密钥。但是该加密方案也不能够 达到任何加密效果。 回答2、如果敌手不能够发现密文所对应的明文的话,就说该加密方案是安全的。这样的定义较好一些,甚至在一些密码学课本中可以发现这样定义的。但是仔细思考一下,会发觉依然不能令人信服。例如,有一个加密方案,它暴露了90%的明文信息,而剩下的10%的明文信息敌手仍旧很难获得,在上述定义下该方案认为是安全的。但是这在通常的加密应用中是显然不能够接受的。例如工作合同中大部分是一些标准的通用条款,只有工资需要去保密。如果工资属于明文的90%的那部分,那么如果90%的明文信息暴露了,加密就起不到如何作用了。 回答3、如果敌手不能够发现密文所对应的明文的任何信息,就说该加密方案是安全的。这样的定义看起来是一个不错的定义,但是会产生一些潜在的问题。回到上面讲的工作合同的例子,如果想确定实际的工资是不可能的,但是有某种可能知道已被加密的工资数大于或小于每年10万美元,那么你还会认为这个加密方案是安全的么?显然回答是否定的。这就引出了下一步的讨论。 回答4、如果敌手不能够从密文中得到关于明文的任何有意义的信息,就说该加密方案是安全的。这已经非常接近真实的定义。然而这个定义有一点遗漏:它没有定义什么是有意义的信息。不同的信息在不同的应用中会有不同的意义。这引出了密码学中关于安全定义的非常重要的原则:安全定义应当满足所有潜在应用的需要。这是非常必要的,因为一个人不可能知道将来会产生什么样的应用。因此,一些经典的密码方案成为了通用密码库的一部分,而这些密码库可以使用在许多不同的应用环境中。理想情况下安全性应该为所有可能的使用提供保障。 5、最终的答案:如果敌手不能够从密文中计算出关于明文的任何功能,就说该加密方案是安全的。这一定义提供了非常强的保证,在适当的形式化之后,被认为是当今对加密最正确的定义。 当然,虽然现在我们已经想到了安全加密的正确要求,从概念上来说,仍旧需要通过数学形式化的方式来陈诉这一要求,这本身就是一件重要的任务。
个人分类: 读书|5009 次阅读|2 个评论
新年,新的思考
xuyangcheng 2011-1-2 18:41
学习,学生的天职。(个人愚见,共同思考,共同分享,提高。) 意见不同者可交流,切勿拍砖!! 可是,学习有方向性,怎样把握?我想这是一个合格的或者称职的学生应该仔细琢磨的问题。 1,外语是学习的有力工具。 记得有博文写到,优秀的学者至少有一门外语非常熟练,读写自如。有一门外语能够看懂信息,说的是什么问题。我想前者大部分人都知道是英语。而后者仁者见仁智者见智,俄语,法语,德语均可。没有这个工具,即使你的工作做得很漂亮,没法得到大家,或者更多同行的指导,交流。所以,语言必须的学好,你在的行业世界第一,那好,你就用它告诉世界,此行业现在发展到什么地位。做个慷慨的学者,科学无国界。你的行业不是世界第一,那么你必须学好,用它来了解行业的发展,进而逐渐做好,做漂亮。 2,专业的学习有两种情况 做基础研究和做应用性研究。根据自身的情况选择好,这个是我们的关键。既然有选择,就有得与失。选择前者,需要你忍受寂寞,坚持,相信自己,做到最好。这样很少有人和你想的一样,或者理解你。而对于后者而言,显得简单不少,将新的理论,成果应用到实践中,为国家,人民造福,这样的人在当前社会上容易得到尊敬,认可。结合自身的特点定位好,我想是每个研究生,或者初学者最值得思考的问题了。 3,有一两项运动项目或者爱好 强身健体是必须的,身体是革命的本钱。这句话真的没错,但好多的人都没怎么践行,或者意识到了,没怎么行动。既然选择了科研,不管是基础研究,还是应用研究,都会遇到好多问题。会有让你承受的痛苦与快乐,有了让你释放的压抑或者科研压力的适当的渠道,这样生活更好。。。。。
2788 次阅读|0 个评论
初学者案例
热度 8 ChaomeiChen 2010-12-8 13:01
本例读者对象:从来没有用过CiteSpace的初学者。 数据用的是CiteSpace本身附带的Terrorism的数据。本例主要侧重于主要几个步骤和功能。 目标是用最少的几步做出第一个跨时间的文献共被引网络。 参数选取,解读,和其他用法将在今后的案例中给出。 PDF文件大约3MB。 如有问题,建议等,可在此留言。 案例1
个人分类: CiteSpace使用指南|31562 次阅读|29 个评论
如何拥有一个初学者的心态
entropy 2008-10-14 13:50
如何拥有一个初学者的心态 从 褪墨 作者:弥缝 初学者看待问题的角度多种多样,但专家的看待问题的角度少之又少。 禅宗大师 Shunryo Suzuki 不要迷惑于表象而要洞察事务的本质,初学者的心态是行动派的禅宗。所谓初学者的心态是指,不要无端猜测、不要期望、不要武断也不要偏见。初学者的心态正如一个新生儿面对这个世界一样,永远充满好奇、求知欲、赞叹。 能够禅悟初学者心态将会使你受益无穷,以下是初学者心态的几个方面: * 直奔主题 技巧1:不管整个过程的细节,直奔主题 我们的思维方式具有连贯性,例如,去超市购物时,我们心想着的一般是打算买哪些和在哪能找到它们。这时我们很有可能会忽略以下事情:出去时关门的动作,看到站在窗户旁的邻居,车上挡风玻璃上的溅起的雨滴还有路上的交通噪音等等。 我们学习新事物的时候也会发生类似的情况。我们总期望事情向我们预想的那样或者期望到将来的某个时候我就可以做这件事了,反而不去考虑下一步我该做什么。我经常会这样,你呢? * 跌倒了7次,就站起来8次 技巧2:跌倒也是学习的一部分 昨天我的朋友带着她刚会走路的女儿到我家做客。这个小女孩叫Stephanie,走起路来好像被拉着一般,摇摇晃晃地走了几步就扑通倒了。不过带着一副坚定表情的她,又站起来,就这么重复下去。尽管没有明显成功的迹象你还带着坚定的心去学习一件事是什么时候呢? * 无知的心态 技巧3:返璞归真,空才是大智慧 在武术里,无知的心态就是勇士的智慧所在。因为我们很容易错误地判断当前形势:面对强大的对手或者高难度的挑战时,我们往往会认为输了的机会很大;反之遇到弱一些的对手或者容易搞定的事情时,我们会轻易地认为自己肯定没问题。我们都可能这两种情形中犯错。无知反而能让我们拥有一个没有拘束的心,能够及时由当前情况做出判断,而不受事先我们的判断的影响。无知的心态就是给自己的直觉留有很大余地。 在我看来,无知的心态会让我们更容易得到暗示,因为我们只能知道目前事情发展的进度。比如:我的两个朋友刚进入青春期,在这个时期人一般会有很大的变化,前一天还在一块玩着扮演武士的游戏,第二天就向我吐露偷偷在自行车后座与男朋友偷偷接吻的事。如果我把我的观点强硬地塞给她们,那么我将错过她们的变化过程甚至和她们断绝关系。 * 扔掉应当 技巧4:没有秩序才能更好建立秩序 我可以写这样的一本书,这本书就是写我应当怎样做,以前我应当做什么以及现在我应当做什么,你也可以写的吧?应当这个词让我看起来跟一名专家似的,不断地对我说,你现在就应该做这个。而作为一个初学者呢,他们的心中往往没有应当这个词。这里我不是鼓励大家扔掉自己的道德原则,而是我认为大多数的应当其实就是要把他人的一些的理念放在自己身上实现而已,这些应当是可以摒弃的。 * 运用经验 技巧5:利用自身的经验和智慧 虽然初学者的心态有上面说的种种优点,但是过马路时却不怎么管用了。你肯定不会因为怕被汽车压扁而去学习新的过马路的方法。运用你自身的经验和与生俱来的智慧也是很重要的。我学习初学者心态不是要否定经验,而是保持一个开放的心态把自身的经验用在新的领域之中。 * 丢掉专家的帽子 技巧6:不要高估自己的行为 其实我们人人都是专家。工作上的专家,带孩子的专家,过马路的专家,签自己名字的专家。要想丢掉专家的帽子不是件容易的事情,因为这需要让自己承认自己一无所知。我们所知道的一切都属于过去,现在的每一刻都是新的,都在给你新的挑战。丢掉专家的帽子,会让你用一个开放的心态去倾听他人所说的话,那时你有可能发觉一个初学者也会教给你一些东西。 * 充分体会每一刻 技巧7:充分享受生命,享受每一刻 你有没有带过小孩去看电影?小孩往往会给你些惊喜,他会在影院的走道上看着大屏幕,他会拿着每一个爆米花仔细地去观察,他会观察每一个坐在周围的观众,听到一些音乐的时候他会害怕。如果屏幕上有怪物出现,他会怕得趴在你的腿上,遇到好笑的片段他会笑得很大声。他体会着在影院的每一刻。 设想下像他那样的生活方式!一天中的大多数时候,我们在做白日梦,或者沉浸在过去,或者在憧憬未来。然而时间一直往前走,并不顾忌我们的存在,也不顾忌我们现在的任何一刻是什么样。如果我们浑浑噩噩地生活,我们会失去更多。而初学者心态却能让我们接受一切,那时你会发现就算再普通的事物也会有亮点。 * 抛弃理所当然的常识 技巧8:抛弃常识,变得更富创造性 这儿常识指我们习惯性的将所见事物规划到某一特征的行为。如果你常常被这种先入为主的习惯性行为所影响,你很容易就被这些理所当然的常识给限制和困惑。只有抛弃偏见,才能不断创新。 * 不要害怕出丑 技巧9:专注于你现在做的事情,忘掉那些观众 上一次学习新玩意是什么时候?只学了一阵子吗?当我们是孩子的时候就开始不断学习新的事物。然后我们到了二十岁,三十岁,年纪越大,就越担心再次做一名初学者。为什么?可能是不想再看到自己失败时的傻样子。 别人可能在你刚起步的时候偷偷地笑你,但是我们自己可以选择是否需要别人的在意。只有你脱离了外物所累,才能专注于现在所行之事。 * 提问的精神 技巧10:敏而好学,不耻下问 初学者的心态在于使用自己的提问的精神,而不是为得到一些答案。禅里面有这样一个故事: 一个教授去拜访日本的禅宗大师请教禅的问题。大师给递给他倒茶,当教授的杯子倒满了之后,大师仍然在倒水。茶水溢到了桌子上面。 满了!教授说,不要再倒了! 就像这个杯子,大师说,你已经被自己的想法和猜测塞满了,除非你跟空杯子一样,不然我怎么跟你讲禅呢? 这个故事不但可以用在学习禅上面,也可以用在学习其他任何事物上。提问的精神是让自己拥有开放的心态去接受新的事物,而不抱任何事先猜测的想法。 如果你理解得深刻的话,你会了解到初学者心态的珍贵之处。它会改变我们体验生活的方式。它也在使你的生活时常有着新鲜感,而且也使我们时刻有着年轻的心去学习新事物。 然而还有一些问题我还没有解决。主要是:如何制定目标?这个和初学者心态冲突吗?目标的制定是基于一个人的生活方式和对未来的希望和期望,是对未来的一种设想。个人来说,我追求初学者的心态也制定目标。但有时会觉得这里面有冲突。你觉得呢? 原文:How to Live Life to the Max with Beginners Mind - Goodlife Zen 译者和修改:弥缝(参考最初译文) 褪墨|时间管理 - 弥缝 褪墨是一个关注时间管理、个人提升和演讲技巧的博客。想提高自己?为什么不来褪墨看看呢~
1927 次阅读|0 个评论

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-24 00:08

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部