Others

URL的井号

2011-03-12. Category & Tags: Others Others

一个显著变化,就是URL加入了"#!“符号。比如,改版前的用户主页网址为 http://twitter.com/username 改版后,就变成了 http://twitter.com/#!/username 在我印象中,这是主流网站第一次将”#“大规模用于直接与用户交互的关键URL中。这表明井号(Hash)的作用正在被重新认识。本文根据HttpWatch的文章,整理与井号有关的所有重要知识点。 一、#的涵义 #代表网页中的一个位置。其右面的字符,就是该位置的标识符。比如, http://www.example.com/index.html#print 就代表网页index.html的print位置。浏览器读取这个URL后,会自动将print位置滚动至可视区域。 为网页位置指定标识符,有两个方法。一是使用锚点,比如a name=“print”/a,二是使用id属性,比如div id=“print” 。 二、HTTP请求不包括# #是用来指导浏览器动作的,对服务器端完全无用。所以,HTTP请求中不包括#。 比如,访问下面的网址, http://www.example.com/index.html#print 浏览器实际发出的请求是这样的: GET /index.html HTTP/1.1 Host: www.example.com 可以看到,只是请求index.html,根本没有”#print"的部分。 三、#后的字符 在第一个#后面出现的任何字符,都会被浏览器解读为位置标识符。这意味着,这些字符都不会被发送到服务器端。 比如,下面URL的原意是指定一个颜色值: http://www.example.com/?color=#fff 但是,浏览器实际发出的请求是: GET /?color= HTTP/1.1 Host: www.example.com 可以看到,"#fff"被省略了。只有将#转码为%23,浏览器才会将其作为实义字符处理。也就是说,上面的网址应该被写成: http://example.com/?color=%23fff 四、改变#不触发网页重载 单单改变#后的部分,浏览器只会滚动到相应位置,不会重新加载网页。 比如,从 http://www.example.com/index.html#location1 改成 http://www.example.com/index.html#location2 浏览器不会重新向服务器请求index.html。 五、改变#会改变浏览器的访问历史 每一次改变#后的部分,都会在浏览器的访问历史中增加一个记录,使用"后退"按钮,就可以回到上一个位置。 这对于ajax应用程序特别有用,可以用不同的#值,表示不同的访问状态,然后向用户给出可以访问某个状态的链接。 值得注意的是,上述规则对IE 6和IE 7不成立,它们不会因为#的改变而增加历史记录。 六、window.location.hash读取#值 window.location.hash这个属性可读可写。读取时,可以用来判断网页状态是否改变;写入时,则会在不重载网页的前提下,创造一条访问历史记录。 七、onhashchange事件 这是一个HTML 5新增的事件,当#值发生变化时,就会触发这个事件。IE8+、Firefox 3.6+、Chrome 5+、Safari 4.0+支持该事件。 它的使用方法有三种: window.onhashchange = func; body onhashchange=“func();” window.addEventListener(“hashchange”, func, false); 对于不支持onhashchange的浏览器,可以用setInterval监控location.hash的变化。 八、Google抓取#的机制 默认情况下,Google的网络蜘蛛忽视URL的#部分。 但是,Google还规定,如果你希望Ajax生成的内容被浏览引擎读取,那么URL中可以使用"#!",Google会自动将其后面的内容转成查询字符串_escaped_fragment_的值。 ...

万众期待商务部3.9号作出的最后裁决

2011-03-05. Category & Tags: Others Others

华为“黑室”命系商务部防线 http://www.c114.net ( 2011/3/5 09:07 ) 许多人还在为华为此前的胜利欢呼:美国法院已经下达初步禁止令,禁止摩托罗拉向诺基亚西门子(下称“诺西”)移交华为的商业机密,但华为正在忐忑地等待另一场判决。 3月9日,中国商务部反垄断局将会就诺西收购摩托罗拉无线业务一案作出初步表态,这将决定性地影响这单全球电信业重大并购案的成与败。 商务部一旦放行,支撑着华为每年在全球数十亿美元的销售额的知识产权和商业秘密将落于对手之手,华为的长期损失可能高达数百亿美元。 此前,涉及侵犯华为知识产权的摩托罗拉与诺西的交易并购已获得美国、欧盟等8个国家或地区的反垄断许可,中国商务部的表态将是华为最后的防线。 起诉摩托罗拉 2月23日,美国法院下达初步禁止令,禁止摩托罗拉在与诺西的交易中移交华为的商业机密。 本报获得的这份起诉书显示,十几年来,华为与摩托罗拉签署的一系列合同,作为构成华为和摩托罗拉商业关系的一部分,华为就产品设计、设备操作以及设备支持给摩托罗拉提供了一系列的保密信息。基于合同,摩托罗拉不开发自己的产品,而是从华为购买并贴牌转售华为的UMTS、GSM和其他技术产品。 这些信息对华为的重要性不言而喻,“上述保密信息对于华为的UMTS和GSM两项收入每年达数十亿美金的业务尤为重要。”华为在诉状中称。 同时,这些信息从2000年起就开始持续性为摩托罗拉创造价值。 从2000年至2006年,华为提供给摩托罗拉的产品的销售金额已经从1400万美元提升到3800万美元,销售的区域也从中国扩展到了全世界。至今,摩托罗拉从华为的购买金额已经达到了大约8.78亿美元。 当然,这些机密信息受到双方保密协定的严格约束。在合作的过程中,华为与摩托罗拉签订了数份合同,合同约定,摩托罗拉不得向第三方披露华为的保密信息并且保护华为的保密信息的机密性。 这一切随着2010年7月19日,诺西宣布其将并购摩托罗拉的无线网络基础资产而改变,这是一项高达12亿美元的交易。在双方签署的交易合同中,摩托罗拉和诺西分别同意交易,将包括“CDMA、GSM和UMTS技术以及UMTS下第三方无线接入网技术”。 让华为无法接受的是,交易中摩托罗拉大量GSM和UMTS技术,连同其UMTS下第三方无线接入网技术一直以来都由华为提供并且相关技术涉及到华为的保密信息。另外,多达7500名摩托罗拉员工随着交易转到华为的竞争对手诺西,当中的很多人直接掌握着华为的机密。 悲情华为 2010年9月26日,华为高管徐直军通过电子邮件的方式向摩托罗拉表明对于华为披露给摩托罗拉的保密信息和知识产权将会被非法地披露给诺西的担忧,这封邮件同时也被抄送给了诺西的高层。在邮件中,华为拒绝了转让合同但同时表达了华为愿意就争议商讨具有合作性的解决方案。 2010年10月13日,摩托罗拉和诺西通过电子邮件给华为发了一封联合信函就华为转让合同提出建议。在信中,摩托罗拉和诺西承认摩托罗拉将在合同转让后向诺西披露华为的保密信息是摩托罗拉与诺西交易的一部分。同时,还声称将要被诺西雇用的摩托罗拉的员工将持续享有接触根据华为与摩托罗拉合同提供给摩托罗拉的华为保密信息的权限,这也意味着掌握华为保密信息的摩托罗拉员工将成为华为直接竞争对手诺西的员工。 这与华为和摩托罗拉合同规定不得向第三方披露华为保密信息的相关规定相悖。 本报获悉,作为曾经密切的合作伙伴,在起诉前,华为和摩托罗拉双方的首席法务代表有长达几个月的谈判。摩托罗拉的法务代表也到访过华为,但摩托罗拉一直未能拿出一个有效的办法保护华为的知识产权,华为最终决定动用法律的力量。 对于华为而言,这个即将到来的春天并不温暖。 在赢得官司前的2月18日,华为声明接受美国外国投资委员会(CFIUS)要求,撤销去年5月购买美国小型科技公司3LeafSystems专利技术的交易。 这是一项只有200万美元的小型交易,但美国外国投资委员会却认为这场收购会威胁到美国的安全。 事实上,华为与摩托罗拉和诺西之间的知识产权争议,也是美国政府以“国家安全”为由拒绝华为收购摩托罗拉无线网络业务的结果。 华为和摩托罗拉存在合作10年的伙伴关系,摩托罗拉掌握了华为大量的保密信息。在这种情况下,摩托罗拉寻找被并购方时,有理由首先接受华为的收购。然而,美国政府认为华为的收购计划存在 “国家安全”的问题,拒绝华为的申请。 最后防线 状告摩托罗拉,华为为自己设置了第一道防线,而中国商务部的审查将是第二道防线,也是最后一道防线。 对于这次诉讼,华为罕见地把关于诉讼的新闻稿放到了公司的网站上,并附上起诉书的全文。 华为有关人士对本报记者表示,对法院的判决结果表示欢迎,也相信商务部会做出正确的判断,对于商务部最终作何表态,华为表示不便置评。 诺西似乎对商务部的最终批准胸有成竹。即便在法院判决之后,诺西曾称,将力求在第一季度完成对摩托罗拉相关业务的合并工作。此前,该项交易需要通过9个国家审查,已经有8个国家予以放行,唯一没表态的只剩中国商务部。诺西表示:我们正继续与中国有关部门展开合作,以使这项交易获得批准,并希望摩托罗拉的员工能够尽快加入诺西。 有报道称,2010年年底北京移动就摩托罗拉GSM设备退网事宜作出最终决策,完全由其现网的另一厂家诺西提供所有设备,至此诺西自宣布并购摩托罗拉后在中国市场的第一次商业利益已经体现,其控制了北京移动GSM网络100%的份额。 尽管这是否对国家安全造成威胁有待论证,但按照美国、英国否决华为的逻辑,北京城内的上至亿万富翁、下至普通百姓的通信安全可能受到威胁。 与华为一样,许多人也在等待商务部的表态。 国务院和全国人大法工委反垄断立法顾问王晓晔教授在署名文章中直言:建议商务部在华为与摩托罗拉知识产权纠纷达成协议后再审批相关申请,以保护中国这个在通信领域不多见的,掌握了较多核心技术的企业的权益。 华为在美国的收购表明,美国针对中国企业进入美国市场,有几道防线来保护美国企业和产业,但中国在相似的高科技产业投资、并购领域,欠缺美国那样严格的审查程序,这又减弱了中国企业在全球竞争中的筹码。 迄今,全球很多国家都已经建立起类似美国CFIUS的组织或法律法规,如日本政府设“公正交易委员会”审查外资并购,法院有权紧急停止企业并购行为;印度限制外资进入媒体、通信服务等领域,外资申请需经17个部门批准等。今年2月11日,国务院办公厅发布了《关于建立外国投资者并购境内企业安全审查制度的通知》,中国也正在开始着手推进外资并购安全审查的相关工作。 北京邮电大学教授谢明敦称,中国《反垄断法》应将跨国的垄断性企业在华机构纳入重点适用对象,尤其对美国公司在华经济活动加以更为严格的监管,严格审查跨国公司在华兼并、收购和重组行为,尽快从法理上根除跨国公司的超国民待遇。 诺西收购摩托罗拉一案,或将成为展现中国政府立场的关键事件。

新型合金材料比钢铁坚硬两倍 具有塑料可塑性

2011-03-05. Category & Tags: Others Others

**据美国物理学组织网站报道,目前,科学家最新研制一种金属合金材料,它比钢铁更坚硬,但却像塑料一样万能通用,可吹塑制成任意的形状。**数十年以来,材料科学家尝试研制一种最理想的材料,它能够吹塑形成复杂结构,且像塑料一样易于塑造和低成本,但不失去金属的强度和坚固度。 ![新型合金材料比钢铁坚硬两倍 具有塑料可塑性](http://dmml.nu/wp-content/plugins/rss-poster/cache/99cd7_0740500743510157.jpg) 美国耶鲁大学材 料科学家简-施罗斯(Jan Schroers)带领一支研究小组发现块状金属玻璃(BMGs)能够随意排列原子,而不像普通金属中有序的晶体结构,该合金材料能够像塑料一样随意地吹 塑成普通金属无法实现的复杂外形,期间并不失去金属的硬度和坚固度。目前,他们将这项最新研究发表在3月1日出版的《材料期刊》杂志上。 施罗斯说:“块状金属玻璃像普通金属,但却可以像塑料一样吹塑制造,具有简易性和廉价性。”目前,该研究小组已制造出无缝金属瓶、表壳、微型谐振器和医学埋植器等复杂结构物体,整个制造过程不足1秒,其强度却是普通钢铁的两倍。 块状金属玻璃的成本与高端钢材相近,但加工费用却像塑料一样低廉。施罗斯指出,这种新型材料是由多种材料合成,其中包括:锆、镍、钛和铜。研究小组在低温和低压状态下对该合金材料进行吹塑,该合金材料可明显地变软,很容易像塑料一样形成流体,但不会像普通金属一样结晶化。 低 温和低压使研究小组能将块状金属玻璃具备前所未有的多功能性、简易性和精确性。为了精细地控制和维持理想温度吹塑,研究小组在真空或者液态下加工块状金属 玻璃。施罗斯说:“其优点在于可避免其它金属成形加工工艺中出现的典型性摩擦,吹塑加工能够完全消除摩擦,使我们能建立任何复杂外形的物体,甚至包括纳米 级物体。” 施罗斯和研究小组同事已使用这项最新加工技术为微型机电系统制造微型谐振器,以及陀螺仪和其它谐振应用的微型电动精密仪器。此外,通过吹塑块状金属玻璃,研究小组能够将三个分离加工步骤(塑造、焊接和打磨)合成一个传统金属加工处理,使人们将以前难以处理的费时、耗能加工处理过程缩短至不足1分钟完成。 施罗斯说:“这是塑造金属加工的一个完全典范,块状金属玻璃兼具塑料和普通金属的特性,连同简易、经济和精密性吹塑制作工艺,将潜在地影响近百年来合成塑料及相关加工方法的发展。” 腾讯科技编译

操作系统爱好者录制MS-DOS 5.0到Windows 7的升级视频

2011-03-05. Category & Tags: Others Others

一名操作系统爱好者在YouTube上传了一段非常有意思的视频,它利用VMware录制了MS-DOS 5.0到Windows 1.0,再顺序渐进地一路升级Windows 2.0、3.2、95、98、ME、2000、XP、Vista和7,完成了微软操作系统25周年的一次回顾,同时他还运行了一些历史上的经典应用例如Monkey Island和Doom 2等。一起看图和视频: 观看:Chain of Fools : Upgrading through every version of windows (HQ)

网络公司最需要百项技术 PHP居首

2011-03-05. Category & Tags: Jobb, Others, Php Jobb, Others, Php

感谢 服务器托管租用问答网 的投递, 新闻来源:PHP100 根据2010年Elance第四季关于美国地区的就业资讯整理,发现了关于网络方面的工作机会有大幅的提升,比上一季增加了38%。尤其是在创意,行销及移动产业的工作机会有显着的增幅。除了想法以外企业家也需要有技术的人才,但企业们最需要僱员具备的技能是甚么呢? 根据2010年Elance第四季关于美国地区的就业资讯整理,发现了关于网络方面的工作机会有大幅的提升,比上一季增加了38%。尤其是在创意,行销及移动产业的工作机会有显着的增幅。除了想法以外企业家也需要有技术的人才,但企业们最需要僱员具备的技能是甚么呢?又反应了怎么样的市场趋势呢?下图是Elance整理出公司最需要的百项技术。 图表,Elance也做了一些分析,也就跟目前最热门的两项网络趋势有关,手机及社群网站: 首先他们指出App开发者在市场上的需求增加了20%, 当中iPad类的App开发者市场需求目前每季增长15%,而iPhone类App开发者的市场需求则每季增长10%。同时,市场对于Android的程式开发者也有大量需求。而现阶段对移动设备的程序开发者尚未饱满,同时Apple及Android手机又不断出现在市面上,因此短期内还是需要大量的程序开发人员。 至于网络营销,由于社群网络(如Facebook)的发达,所以是在各个类别中成长速度最快的,企业们非常重视也仰赖线上营销,尤其是社群媒体营销(Social Media Marketing),联盟营销(Affiliate Marketing),以及搜索引擎营销(Search Engine Marketing)这三方面。 另外Elance也特别强调了Html5的增幅也很大,每一季增加了48%的需求,原因是除了需要更新网站的界面外,也需要因应在平板电脑以及行动装置上的浏览经验而做出调整,话虽如此,对Flash(#29)的需求还是持平(甚至走下坡)。另外网站架构方面最需要的人才还是 WordPress(#2)为主,还有Joomla!(#21)及Drupal(#56)。Joomla!(#21)及Drupal(#56)。

Windows 8 安装仅需8分钟?

2011-03-05. Category & Tags: Others Others

**就在Windows 8 M3开始编译的消息传出后,媒体开始四处追踪有关这个最新版的消息,目前最令人兴奋的进展是Windows 8的安装速度,**消息来源显示,在一台内置8核心处理器的电脑,24GB内存的超强悍电脑上(并非SSD,用传统的2TB硬盘),Windows 8的整个安装过程仅用了8分钟,如果换成SSD的话相信还有更大的速度提升。此外,Windows 8的开机和睡眠唤醒速度也有了极大地提升。 虽然操作系统开发还在进行中,但这一成绩已经令人非常满意。不过另外需要提醒的是,如果Windows 8依然采用DVD当做安装介质,那么相信这里的速度瓶颈就会让安装速度慢下来。

哪种编程语言的程序员脏话最多?

2011-03-05. Category & Tags: Jobb, Life, Others Jobb, Life, Others

From cnBeta 博文精选, 感谢 服务器托管租用问答网 的投递, 新闻来源:PHP100 本文是从Cussing in Commits: Which Programming Language Inspires the Most Swearing这篇文章翻译而来。 任何一个程序员都会告诉你,编程中有时你会气得叫骂不已。但你是否知道写C++程序会比写PHP程序或Python程序引起你更多的咒骂呢? [pic ref] 一个叫Andrew Vos的开发人员在寻找一个可以业余时开发的项目时突发奇想,他决定在GitHub上抓取100万条程序注释、评论信息,对其进行扫描,看看里面有多少脏话。他只提取了George Carlin 所说的七个脏词,按编程语言分类对它们进行统计。为了避免语言的流行程度对统计结果的影响, Vos 对每种语言都抓取的相同数量的注释。 C++荣膺桂冠,但优势不是很明显。Ruby和JavaScript旗鼓相当,紧随C++之后。然后就是C,Java和C#,它们处于中间,但数量 于前者相比大幅的下降。Python和PHP程序员可能要么对这种语言很满意,要么是很绅士、有礼貌。当然,并不是说他们没有在注释评论中留下骂语就表明 他们没有咒骂。就像Vos在他的一篇博客里写的,“我用Python,但我的所有咒骂都是跟IE相关的。” 你根本就无法统计究竟有多少开发人员在开发时对着屏幕咒骂,但如果你想找一种被诅咒的相对较少的编程语言时,PHP和Python看起来还是相对较好的选择。 然而,你会发现,读读那些实际的注释评论信息会比这些统计数据更有趣,你可以访问 Vos 在GitHub上的帐户查看一下。我个人最喜欢的一句是:“去他妈的。就这样发布吧。”一点没错。布吧。”一点没错。

程序员从初级到中级10个秘诀

2011-03-05. Category & Tags: Others Others

感谢凑够十条的投递 新闻来源:.techrepublic.com Justin James曾发表过一篇博文《10 tips for advancing from a beginner to an intermediate developer》,为我们分享如何才能完成程序员从初级到中级的蜕变,现将中文译文转载于此,供大家借鉴。 在一封与TechRepublic会员交流的邮件当中,他提到了面向程序员的博客、文章及杂志分成两类:面向初学者类(“hello world”这种类型的教程)以及面向专家类(MSDN杂志)。这个观点很好,有关程序员如何从初级跃升到中级的信息极少。以下是为了实现这种转变需要你去做的10件事。 **1.学习另一门语言 **其实你学的是哪一门语言并没有关系,但是学习另一门语言(不管你已经了解多少种语言)将把你打造为更好的程序员。能学会一门与你日常使用的语言风格迥异的 语言则更佳。打个比方,如果你是C#程序员,学习VB.NET或者Java对你的帮助就没有学习Ruby或者Groovy大。 我说“学另一门语言”的意思是要真正学会它。学习一门语言包括三个领域的知识:语法、内置操作符和库,以及“如何使用”。前面两个简单;我认为一名有经验 的程序员,根据语言的不同,能在半小时到几小时内掌握足以维护代码的语法知识。操作符和库只不过是知识逐步积累的过程,你什么时候想清楚要了解什么了,再 去查阅参考材料也不迟。只有第三项,“如何使用它”-要花上你几个月的时间去跟这门语言打交道,真正的奇迹就在此发生。我建议用这门语言的风格去做一个适 合该语言的项目。 真正学会了另一门语言之后,我敢保证你的程序员水平一定会突飞猛进。 **2.学习先进的搜索技术、手段和及策略 **作为一名好的程序员,不仅仅是技能的问题了,而是你寻找信息的技巧,这个趋势越来越明显。对大部分人而言,仅仅输入“现代语言及开发框架”,这都是泛泛之 谈,记不住多少的。因此,你完成工作的能力通常取决于你的检索能力。不幸的是,了解到如何找到准确而高质量的信息可不仅仅是跑到TechRepublic 来找答案,或者在你选好的搜索引擎上敲几个字那么简单。 “技术(Techniques)”、“手段(tactics)”和“策略(strategies)”看起来是一回事,实际上并非如此。你需要学会的技术是 掌握你喜爱的搜索引擎的高级搜索系统;你需要了解诸如布尔操作符,如何过滤结果(像“非”关键字,域限制等等),关键字的词序扮演什么角色,等等。一句 话,RTFM(Read The Fucking Manual,读那些他妈的手册)吧。 你应该学会这些手段,诸如如何接近特定的搜索,以及了解自己实际上想查些什么。查错误很容易—只需查出错代码即可—但是许多搜索的关键字选择要困难得多。 至于策略,你需要学会的东西,包括像应该使用哪种搜索引擎(提示:普通的搜索引擎不一定就是最佳选择),使用普通搜索引擎前应该访问哪个网站,甚至是应该 到哪个论坛去寻求帮助,等等。 **3.帮助别人 **教别人始终是学习一切东西的最好方法之一。相对而言,由于你在开发领域还是个新手,认为自己没什么可教给人家的,这可以理解。但这毫无意义。记住,你所学 到的一切都是你从别人或别处学到的;因此请尝试一下,成为另外一个人要请教的“别人”。每天尽量花一点时间试着回答TechRepublic上的问题,其 他网站的亦可。读读其他会员的回答,你也可以学到很多东西。 **4.有耐心,常练习 **研究表明,要成为一名“专家”,需要花费10年,或者10000到20000小时的刻意练习时间。真的很久。还有,成为专家不尽然就是执行10年同样的任 务;通常这意味着要在特定领域内执行广泛的任务。需要花费大量的时间和精力才能成为“专家”;做几年程序员是不够的。想在30岁左右成为一名高级软件开发 工程师?要么尽早接受教育/培训,要么你得愿意在闲暇时间进行大量的工作、阅读和练习。我从高中开始编程,还牺牲了许多休息时间去跟踪行业发展、学习新技 能等等。结果,我获得中级和高级程序员的时间就比我的大部分同事都要早得多,随着时间的推移,这些就转化成为很多的金钱。 **5.对教条拒之门外 ** 是时候开诚布公了:也许初级程序员了解的东西还不足以说出做某件事情有一种最好的方式。尊重朋友或者权威的观点是好的,但直到你更有经验之前,不要把他们 的观点说成是你自己的。很简单,如果你所了解的不足以让你独立地找出这些东西来,你又怎么会认为你知道哪一位“专家”是对的呢?话是难听了点,不过请相信 我;由于受某些愚蠢建议的蛊惑,或者追随某些根本不知道自己在说些什么的所谓专家,白白把自己的职业生涯耽搁了几年,这样毛头小伙程序员,我见过多了。这 一点有一个很好的例子,就是面向对象结构的滥用。比如说,许多初级者读了一些有关面向对象的信息后,突然间,他们那简单的应用程序的类图看起来就像埃菲尔 铁塔一样了。 **6.深入学习一点先进理念 **成为一名中级程序员,很大一部分是要在代码里面体现出一些所擅长的概念。就我而言,是多线程/并行性,是正则表达式,以及如何对动态语言进行变化(后两个 在我离Perl渐行渐远后开始退化)。这是如何发生的?多线程和并行处理是因为我读了相关文章,觉得它看起来很有趣,然后再自己把它弄清楚了;然后我就一 直使用这些技术来写应用。我做过一件工作,是用Perl写的,里面运用了大量的正则表达式。我也用一个过程引擎模板和内置数据库系统写过我自己的电子商务 引擎;那时我几乎花了2年时间在这上面。 找到真正令你着迷的东西。也许是图像处理,也许是数据库设计,等等。即便你是一个入门级的程序员,也要尝试一下成为某一自己所关注领域的专家。这会让你相 当快速地进入到中级水平,一旦你到了那个水平,你的专家之路也走到一半了。 **7.学习你的领域里面的基本理论 **写出“Hello World”,跟理解那些字是如何显示到屏幕上的是两码事。通过学习支撑你所从事的工作的“基础/底层工作(groundwork)”,你会变得更加在 行。为什么?因为你会理解事物为何会以这种方式运作,当东西坏了就能知道是哪里的问题,等等。通过掌握工作的底层机制,你变会得更出色。 如果你是Web程序员,读读HTTP RFC和HTML规范。如果你使用代码生成器,好好看看它生成的代码;如果你使用数据库工具,看看它生成的底层SQL语句,不一而足。 **8.看看高级程序员的代码 **在工作中看看高级程序员写的代码,然后问一问事情是如何以某种特别的方式完成的,为什么?可能的话看看开源的项目。甚至即使其他程序员没有最好的编程习 惯,你也会学到许多编程经验。当然,要小心别学到坏习惯。我的意思是说不要生搬硬套人家的东西;你要能领会到哪些是能行的通的,哪些是有道理的,然后再模 仿人家。 ...