我,一个写代码的 程序员 感悟

2014-12-03  来源:本站原创  分类:励志篇  人气:9 

写blog已经快两年了,起初仅仅是为了自己“备个案”,结果慢慢演变成为了“分享成瘾”。

前几天一个朋友给我的blog留言,谈到希望在新年里能够看到的不仅仅是我对技术的分享,更希望能够看到对于技术学习、职业发展的规划。因此想到了写一点什么分享一下自己这些年的一点点“收获”,周星驰的喜剧之王里面说到他是一个演员(虽然被叫做跑龙套的),我想我,就一个写代码的。

爱这行

从事任何行业都一样,只有真正的爱上了这份工作,才会投入热情,才会在顺境中自我警醒,在逆境中寻找突破。这个行业的竞争很激烈,你停下来走,别人就立刻会跑步超过你,没有对这一行业的一种热情,就很难在困境中保持一种执着的态度坚持到底。

踏踏实实“扎马步”

今天无意中看了“校长”的“程序员&司机”,其中谈到了关于程序员速成的问题。其实速成班毕业的 “系统杀手”早已在遍布大江南北,只是在互联网时代,互联网的应用型软件生命周期越来越短,业务驱动主导的情况下,这种速成方式看起来反而提高了企业生产效率。但这样的人才也就只能写几个Facebook上的插件应用或者iGoogle上的Gadget,真的要出Google,Amazon,Yahoo改变互联网世界的企业,还是需要踏踏实实先学“扎马步”的人。

很多在学校的同学或者刚刚毕业的朋友都看什么热门学什么,Spring,AJAX,Hibernate等等,又有多少人在看Spring之前把J2SE的NIO,XML,Collection等先好好学习一下,在看AJAX之前把Http协议、DTD、XML Schema好好看一下,在学习Hibernate以前先把J2EE事务规范搞清楚。Java最大的好处就是开源,能够让人们站在更高的起点来作出更多的创新,但是对于学习者来说,不了解自己站在什么上面的时候,可能摔下来会很痛。在用的时候多问一些为什么,在遇到问题的时候多找找原因,在了解以后多提出一些优化的方案,这样才会进步的更快,走的更远。

记得我前一阵子回家的时候和妈妈聊起最近的工作,虽然妈妈不太明白,但是也知道我现在做的东西技术含量比较高,嘱咐我“千万不要什么都教给自己的同事,徒弟带出就不要师傅了”(这当然是老一辈的观念了)。我和她说:“不要担心,这种学的会的不教迟早也会,学不会的教了也学不会”。其实这里说的学的会的就是技术,而学不会的就是经验和能力。这个行业的人在日积月累过程中并不会去比较掌握的知识面有多广多深,毕竟这行业更新很快,其实能力强的人在多年的学习中就积累了很多的找问题,分析问题,总结问题,提出建议,发掘创新的能力,这些才是这行业人在发展中最宝贵的财富,也是一个人成长的标志。开始的过程中,踏踏实实地“扎马步”,了解一些最基本的知识,那么上层技术的发展对于他来说仅仅只是一个短暂的学习过程,甚至可以触类旁通。因此还是要奉劝每一个新入行的同学,踏踏实实,静下心来做技术,就算工作安排得都是一些浮躁和重复的工作,用高效的方式来结束那些重复劳动,多留一些时间给自己打基础。

逆境养兵、顺境攻城掠地

普通人的工作经历通常都是起伏不定的,一个人的能力是否能够得到体现,不仅仅靠自己的努力,有时候也需要“天时”、“地利”。马云比较有名的一句话:“今天很残酷,明天更残酷,后天很美好,但是大多数人死在明天晚上,看不到后天的太阳!!!”,其实也在说明一件事,就是很多时候需要一种坚持的精神才能得到宝贵的机会。

今天是我进入阿里巴巴满3年,这3年让我感触很深的是:1.逆境不要气馁,厚积薄发。2.顺境不要懈怠,一股作气,把握机会展现自己最大的能力。3.在逆境和顺境的转换过程中,创造机会,不要坐等机会,要学会不在其位,也谋其职。最后一点就拿我自己的亲身经历来说,我原来就职于一家通信公司,因此对于互联网应用的开发和架构设计要比很多人弱,进入阿里巴巴以后工作了半年(主要作业务开发),正好阿里软件创立,当时被分配到了阿里软件第一个产品负责客户模块,当时的应用是通过MDA框架配置搭建的,开发人员很大程度上不需要自己做太多的编码,但是这个平台并没有搭建过如此复杂的大型应用,因此存在着不少问题,当然这些问题都是通过业务产品线的人反馈给平台部的人,当时平台部门人员很少,但是却要修复和完善诺大一个平台,因此常常搁置开发人员的反馈。当时在自己工作之余就琢磨和研究平台,同时跟踪调试平台,最后直接给出解决方案,逐渐的就融入到了平台开发中,最后被吸收到了平台部门,进入平台部门以后遇到了两位很好的老大,根据我的特质给我安排了研究和学习的工作。接下去就是不断地参与阿里软件各个基础平台的构建,核心技术的研究和探索,找到了兴趣和工作的最佳结合点。因此,当你困惑的时候首先不是去抱怨,而是审视一下自己是否还有作的不够的,是否还有可以提升的空间,多给自己制造一些机会,也许我们不用等到后天,也不会死在明天夜里,明天早晨我们就看到了太阳。

海纳百川、冰冻三尺

很多朋友可能听老师或者前辈也说过类似的话,就是作为一个技术人员要广也要钻。就好比现在很多人都要DB Scale out,同时也要Scale up。我从自己的角度来说一下广和钻的看法。广:1.要有容人之量。(很多时候程序员最大的毛病就是喜欢在技术上比较,未尝不是好事,但是一个人的能力总归有限,多看看别人的,多听听别人的,也许能够让自己少用时间获得更多的收获,特别是自己战友的声音)2.触类旁通,多问个为什么,多跨过界去学习。在阿里巴巴,PD、SA、DBA、UI等等职位各司其职,作为开发的我们其实也应该去了解如何去画Use Case,如何假设服务器和应用环境,如何写一些略微复杂的SQL,了解一些DB的特性,如何能够简单的作出一些基础的页面,使用简单的css来美化一下门面。这些就是需要多跨过界,多虚心的去学习。钻:1.本职工作技术一定要扎实,每作一个技术点就要把技术吃透,同时延伸开来,发掘更多的技术亮点。2.多接触新鲜事物,但是有选择的去了解,有目的的去学习和实践(目的的源泉就是工作的需求)。3.学会分享,一个人自己搞懂一个技术很容易,一个人要把他熟悉的技术写下来就会发觉原来自己还有那么多没有搞清楚,一个人如果要把写下来的东西宣讲给别人听,他就会发现,原来写下来的仅仅是那么一小块,因此学会分享,从自己了解,到记录分享,到演讲传播就是一个不断深化和广化的过程。个人觉得小公司锻炼人(啥都自己干),大公司培养人(该干的要干好),因此自己常回头看看自己在广和钻上的不足,可以让自己进步的更快,学的更全面。

学中医积累经验,学西医寻找突破

中医以对人体经络血脉了解为基础,通过望闻问切来寻找病理根源,行医年限越久,找问题解决问题的经验越强。西医以科学技术为手段,通过试验化的方式不断寻找突破,并且将成果积累并且传递给更多的人,但是否年限越久越有能力,或者是使用得器材越广越资深,这点全要看个人对于医术的理解,如果仅仅停留在对器械的使用和对成果的依赖,那么只会成为一个庸医。当然这里绝对没有对中西医的差别化或者评价,仅仅要说明的是,在手段丰富的情况下,容易忽视了本质,只看到了皮毛,积累的时候多一些追根溯源,站在别人的成果上才更踏实,因此在对经验积累上向中医多学一些,在寻找突破,传播技术上多学一点西医的风格。不过说到低,还是要看学习的人,静的下心,沉得住气,才会有积累,才会有突破。

不做一个纯粹的“技术人员”

不做一个纯粹的“技术人员”,其实也就是说要培养自己多方面的能力,我仅仅把自己想到的一些点列出来说说:

1. 项目产品化的思想。现在就算在学校里面给导师作项目都讲究一个商业价值,更不要说在企业里工作。作为一个开发或者架构师最重要的就是要有产品化的概念,这也是项目是否成功的关键。软件的目的是为人服务,如何服务的好,那就要以一个产品的思路去做项目,而不是作为实验室的实验品,为客户提供好服务就会给公司带来商业价值,对自己的工作也会有很好的肯定。这是一个良性循环,反之则是恶性循环(多赢变成多输)。如何做到产品化,首先就是需要去了解需求,而不是布置需求,其次就是设计时多听取一些不同角色的意见,最后就是在客户的反馈过程中反省。

2. 多一些设计,少砌两块砖。代码写的再好,其实也只是用砖块砌墙砌的比较好罢了,这年代已经不会为了节省两块砖而给一个优秀工作者了,同时技术的日新月异,总是摆弄技巧,学习花拳绣腿已经跟不上时代了。多了解一些行业背景,多参与一些架构设计,将业务设计用良好的架构体系来实现,那才是一个称得上有能力的技术人员。

3. 学会前瞻,学会自己找事。记得我刚进平台组,最不适应的就是我的老大基本不太给我布置太详细的任务,这就好比进入大学,老师不给作业,自己反而心里没底了,其实自己找事的过程就是一个自己学习的过程,当我一天下来感觉没干什么,没学到什么,心里就开始发虚。如何能够前瞻性的去选择一些目标,如何对现有情况提出一些创新和建议,都是一种更高能力的要求。现在SIP组也是一样,在我们这个组里虽然现在每周还是布置一定工作,但是我对其他两个同学的要求也是希望能够有前瞻性,学会发现问题,预防问题,更甚者就是提出创新。当你具备了这种环境的时候,你就需要锻炼自己的能力了。

4. 做个让老大放心的人。这点也许很多人和我一样在业务上很早就让老大觉得可以安心睡觉了,但是其实另一方面,如何在商业角度看问题,如何培养新人,如何协调部门合作等等,都会让你的老大更加安心。另一方面来看,其实在这些能力的培养过程中,你不再局限于业务水平的提升,让自己在更多方面更加成熟。

六脉神剑

今天是我进入阿里巴巴3年整。在阿里巴巴有个说法,只有在阿里巴巴工作了3年,才能算是一个真正的阿里人,因为理解阿里巴巴的文化,需要三年时间的沉淀。这里就从一个写代码的角度分享一下阿里巴巴的六脉神剑文化。

客户第一:如果你是做架构的,作平台的,作开发工具的,那么客户就是和自己一样的开发者,多学习一下开源项目的精神,多从使用者角度去考虑问题,那么你的东西才会被更多的人认可和使用,永远不要去做一个“玩具”的开发者。如果你是做产品的,那么就多听,多想,多问,永远不要急着去写代码。

拥抱变化:敏捷开发的基本原则。互联网应用尤其如此,不要害怕变化,在需求和架构之间找到平衡点(说起来比较容易^_^)。

团队合作:一个人的力量始终有限,分享,交流,合作能够让自己事半功倍,学的更多,看得更远。

诚信:说到就要做到,做了就要做好,做软件开发一样也需要有责任感,贴满狗皮膏药的代码上如果注释是你的名字未来也会给你蒙羞。踏踏实实地用心去写代码,去设计架构,不经意间得到的要远远比那么一点工资来的多。

激情:还是那句话,你如果不爱这行,乘着年轻赶快转行。

敬业:专业执着,精益求精

很感谢各位能看完这篇感受分享,以上都仅仅是个人的一点感受,能够引起共鸣那么证明我们的经历很相似,如果能够给到你一点帮助,那写这些就真的有意义了。不论你在别人眼里是一个资深架构师还是开发人员,其实如果你爱这个行业的话,你应该就是一个写代码的,但是每个人的经历都是一本“写代码的自我修养”,珍惜自己的选择,让自己在兴趣和工作中找到最佳结合点。

相关文章
  • 我,一个写代码的 程序员 感悟 2014-12-03

    写blog已经快两年了,起初仅仅是为了自己"备个案",结果慢慢演变成为了"分享成瘾". 前几天一个朋友给我的blog留言,谈到希望在新年里能够看到的不仅仅是我对技术的分享,更希望能够看到对于技术学习.职业发展的规划.因此想到了写一点什么分享一下自己这些年的一点点"收获",周星驰的喜剧之王里面说到他是一个演员(虽然被叫做跑龙套的),我想我,就一个写代码的. 爱这行 从事任何行业都一样,只有真正的爱上了这份工作,才会投入热情,才会在顺境中自我警醒,在

  • 招一个写代码的女生:国外女程序员是什么样的 2014-12-17

    招一个写代码的女生. 如果要找一个女程序员(程序媛).一般来说, 她无论去哪都会随身带着笔记本电脑,坐在咖啡馆角落全神贯注对着电脑,只有在程序编译的空当抿一口咖啡.看着咖啡馆服务生的计算机再一次坏掉了但是他一点辙都没有的样子,她会又无奈又叹息的摇摇头. 那就是她了. 花上一杯小号豆奶拿铁的时间聊一聊,然后给她一份工作. 如果你们可以聊聊Storm, 或者用户私有后端和反应编程(Reactive Programming).再聊聊写程序的设计理念和哲学概念,还有Pinterest或者twitter,

  • 恐惧会让你成为一个更糟糕的程序员 2013-12-28

    昨天上午,我在Twitter上提出了这么个问题: 有没有人写过关于恐惧+编程方面的文章?(这种害怕做出重要改变的思想如何使你成为一个更差的程序员?) 以及 我觉得在小心翼翼(优++)和恐惧(让你不敢去做一些必要工作)之间有一条重要的分界线. 然后各种有趣的讨论接踵而至. 我发现,当我们害怕担忧的时候,思想就会趋于保守,也不敢做任何改动,生怕有个万一.但是这会导致软件变得更糟!它实际上是另一种灾难.如果你害怕做出任何改变,那么你就不能改善软件,也做不了大型的代码清理工作.也许你甚至都不能利用你已经

  • 如何招聘一个能干活的程序员 2014-10-01

    关于一个程序员该具备怎样的能力,这篇帖子 里面一共讲了7点.这7点本身没错,放之四海而皆准.但是对于程序员这一个特定的群体,似乎又显得过于宽泛.有一些比如善于沟通这样的能力更多是靠环境激发出来的.如果不幸混进一个国企,那其实锻炼更多的还是和领导套近乎和推卸责任的能力- 所以我认为,一个优秀的程序员有两个最核心的能力是不可代替的:解决问题的能力与学习能力. 先来说说这个"解决问题"的能力.这个能力是相当宽泛的:debug是解决问题:设计某种架构是解决问题:提高用户体验是解决问题:根据需求

  • 如何"正常"成为一个神级前端程序员 2013-08-19

    专访 资深前端工程师 郭杰2013-07-22 话说 ,对于一个每天写码的程序员来说,"正常"不就是个很冲突的属性吗?!我们一位另一半是程序员的女同事常常用认命的口气说:"我所认识的程序员,除了郭杰外,怎么多少都有点变态呀!"(这里必须注明仅代表个人言论,各位走过路过的程序大神们欢迎来预约专访踢馆).在我们预约专访前,郭杰也跟我们表示了担心,说他这个人没什么很戏剧性.很冲突性的,所以,不太好找采访点......没等他说完,我们就直接把他"掺"到了

  • 如何成为一个优秀的jsp程序员 2013-12-23

    在网上看到很多问题是关于如何学习jsp的,正好网上看到一篇关于学习jsp的文章,就摘了一部分翻译过来,希望能对大家学习jsp有点指 导. 一个普通的错误是把JSP当作简化的 Java.它不是,(事实上, JSP 是简化的 servlets .)程序员通常试着没有学习要求的支持技巧而 直接学习 JSP .JSP 是一个衔接技术,并且成功地连接你需要理解的另外的技术.如果你已经知道 Java , HTML 和 Javascript,这意味着 JSP 将确实是简单的. 需要成为一个成功的 JSP 程序

  • 30分钟,让你成为一个更好的程序员 2014-08-31

    我相信激励是非常重要的.这也是为什么我常常把时间管理(这些书激励我不管改进我的时间管理方法)的书和软件开发拿出来看看.我最近刚看完一本 书,"Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman".这本书推动我仔细的思考我应该把时间花在哪里. 巧合的是最近是我25岁生日,也即将是新的一年.所有这一切都推动着我整理自己的技能,并制定下一年的学习计划. 我把它写到博客里面也是那本书的作者建议.我觉得这个建

  • 一个优秀的Java程序员必须了解的GC机制 2015-01-27

    一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只有全面提升内存的管理效率,才能提高整个应用程序的性能.本文将从GC的工作原理.GC的几个关键问题进行探讨,最后提出一些Java程序设计建议,如何从GC角度提高Java程序的性能. GC的基本原理 GC是什么? 为什么要有GC呢? GC是垃圾收集的意思(Garbage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内

  • 你是一个编写可调试代码的程序员吗? 2014-04-28

    所有的程序最好能够以某种形式的日志记录下来,这样能方便我们即时知道现在在做什么.而且一旦出现异常,其重要性就愈加明显了.我们之所以要把程序员分成三六九等,很大一个原因就是,一个伟大的程序员会去写日志和调试工具,这样一旦出现问题就能调试程序. 如果程序运作正常,那么可能写不写日志没啥区别.但是,不怕一万就怕万一,万一程序崩溃或者出来一个错误的结果,那么这个程序员好不好马上高下立现. 例1:"我们先搞一个调试版本吧." 举个例子,测试人员跑来告诉我说有一个调用函数不工作了.我们先查看了日志

  • 程序员感悟--路该怎么走 2013-10-31

    有一句话我一直记得很深,"当人深处迷茫之中时早已不再迷茫".很绕很矛盾的话,也可能有人听到后会马上跳脚喊,我一直迷茫怎么还是迷茫呢?呵呵.静一下想一下再喊. 大家都这么大了,路该怎么走,你知道么?作为程序员,路该怎么走,你知道么? 05年入学,对IT一无所知,对程序一无所知,甚至对自己也是一无所知.路走到了今天,我感触确实不少,写点东西以飨来者. 科班出身的我们,从开始就按部就班的学着操作系统,数据结构,组成原理:从c到c++,汇编,java这些又是标准课程.面对纷繁复杂的IT界,你每

  • 你是一个努力工作的程序员吗?还是一个懒惰的程序员? 2014-07-29

    当一个人在完成一件体力工作时,你很容易评估他是否在努力的工作.你可以观察他的物理动作,看他流了多少汗水.你还可以看到他工作的成功:砖墙在砌高,地面上挖的坑在变大.对努力工作的认可和褒奖是人性中非常基本的本能反应.这也正是为什么人们对体力耐力体育活动如此着迷的原因之一.这种对体力上的辛苦工作的本能的赏识,在遇到管理一群技术创造型的员工时,却成了一个麻烦问题.高效的脑力工作者通常会被看作并没有在努力的工作. 早在2004年,我还是一个初级程序员,工作在一家有线电视公司,在一个大型团队中开发财务和供销

  • IT职场:我拒绝了一个应聘的女程序员 2015-02-17

    今天那位重点大学过了英语6级和高程的女生我们公司拒绝了-- 其实看到她悻悻的离开,我真有点于心不忍,毕竟我出的题我自己做了5个小时才做出来,却只给她一下午可能真的有点难为她了--可能看到这儿的朋友会觉得我很奇怪,怎么能对一个刚毕业的同学这么苛刻呢? 其实我对她并非苛刻,一个刚过了高程的人我认为写一颗树应该是轻车熟路吧--我之所以给你4个小时去完成我5个小时才能完成的工作就是想看看你有没有耐心去把树写出来.并非让你将所有功能和界面都完成.如果你能写出个大概,能耐心去做,我想我不会对你的工作很苛刻的

  • Sublime Text 2 - 性感无比的代码编辑器!程序员必备神器! 2012-08-12

    代码编辑器或者文本编辑器,对于程序员来说,就像剑与战士一样,谁都想拥有一把可以随心驾驭且锋利无比的宝剑,而每一位程序员,同样会去追求最适合自己的强大.灵活的编辑器,相信你和我一样,都不会例外. 我用过的编辑器不少,真不少- 但却没有哪款让我特别心仪的,直到我遇到了 Sublime Text 2 !如果说"神器"是我能给予一款软件最高的评价,那么我很乐意为它封上这么一个称号.它小巧绿色且速度非常快,跨平台支持Win/Mac/Linux,支持32与64位,支持各种流行编程语言的语法高亮.代

  • 写给新手程序员的一封信 2013-05-15

    首先,欢迎来到程序员的世界.在这个世界上,不是有很多人想创造软件并解决问题.你是一名hacker,属于那些愿意做一些有挑战性的事情的人. "当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题." – WhyTheLuckyStiff 对于下面的文字你不必完全接受,所有这些来自一个其貌不扬的程序员.我喜欢把事情做到最好,而不是对原来的东西修修补补. 仅仅是因为爱好开始做一些创新,这是一个很好的开始!如果你说"我要先学习一下再开始做"那么你永远不会真正开始.每个

  • 编写简练代码是程序员的职业修养之本 2013-10-16

    我曾经接受过一个关于优秀代码标准的电话采访.当时,我脑海中闪过的第一个念头就是:可维护性.如果代码难以被其他开发人员理解,维护或是扩展,都不能称其为优秀的代码.然后,我想到另外一些标准:高效,优雅 (简练,适当运用语言结构,环境适用性) ,模块化,适当的面向对象设计,等等. 当然,能够在没发生错误和没有安全漏洞等问题的情况下运行代码,这是优秀代码理所当然拥有的特质. 在< Code Complete >一书中,作者 Steve McConnel 在代码的可维护性上充分地支持了我的观点: 这本书

  • GitHub:代码是程序员沟通最直接的手段 2015-04-29

    如果不是 Andreessen horowitz 的投资,估计 GitHub 很难被福布斯.CNN.纽约时报等传统媒体注意到.普通大众之前不了解这个工具,是因为它距离记者的世界太远了--GitHub 是一个程序员所使用的托管项目的服务. 但在一些程序员眼里,它不仅是托管项目的地方,还是"开源"项目的大本营,而且是提高程序员"技术水平"和"技术品味"的地方,更是一个程序员社交的地方. 目前托管在 GitHub 上项目的数量为 3263005 个,包

  • 像我这样一个内向的亚裔程序员,如何在西方交到朋友? 2014-12-14

    最近在听高晓松的<晓说>时,听到他议论西方人和中国人的区别:西方人重公德不重私德,重国家而不重个人.中国人正好相反.他讲了很多例子,听起来都是很有道理,并引导我得出自己的判断:中国办不好开源社区也是这个原因. 今天在网上看到的一个事件也印证了这一点:一个亚裔程序员实习生在网上写了一篇求助信,得到了网友的大量热情洋溢的回复和支持,很多人写了大量的篇幅来开导这个程序员小伙. 就我的见识,中国人好像只对绯闻事件或中日开战有这么大的热情.像这样充满人文关怀的讨论并不多见. 这个程序员小伙的忧愁是:像我

  • 结婚生子让我成为一个更优秀的程序员 2014-07-23

    看到这个标题,你的第一想法或许就是,"开玩笑吧,结婚生孩子怎么可能会对编程产生积极影响呢?脑袋秀逗了?!"但是,我想说,这样的情况真的发生在了我的身上. 首先,最为明显的好处是,时刻给我动力,激励我进步.有人说,成功属于拼命的人.当身后有了一个家庭的时候,你就会更加珍惜工作.努力赚钱.以前我只是将web开发当做工作中一件有趣的事,而现在,它的地位立马上升到了--职业生涯的重点.可以这么说,现在的我就像大力水手吃了菠菜一样,充满了力量.洋溢着激情. 另一个好处却是犹抱琵琶半遮面的.地球人

  • 一个不懂营销的程序员的一周营销日记 2015-04-09

    我花了几年时间开发了这个东西,因为我需要它,我想其它人也会跟我一样需要它. 上周我正式发布了它.我所说的"发布",是指在Twitter上发布了一条微博. 我花了一周的业余时间来让世界知道它,下面就是我的所作所为: 将信息提交到MacUpdate上. 很吃惊的发现在之后的一两天里有40次下载. 给一批博客和评论网站发邮件,看看他们是否愿意为我的产品写一篇评论文章. 没有回复. FogBugz好心的在他们的微博里提到了它. 在应用上线的第一天有很多beta版的测试用户都在微博里提到了它.

  • 如何成为一个合格的 Java程序员 2012-08-10

    1. 语法:必须比较熟悉,在写代码的时候 IDE 的编辑器对某一行报错应该能够根据报错信息知道是 什么样的语法错误并且知道任何修正. 2. 命令:必须熟悉 JDK 带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer. HtmlConverter.jar.java.javac.javadoc.javap.javaw.native2ascii.serialver,如果这些命令你没有全 部使用过,那么你对 java 实际上还很不了解. 3. 工具:必须至少熟练使用一种 IDE 的