当前位置:编程学习 > JAVA >>

一个优秀的JAVA程序员有哪些标准 ?

  我想以此衡量和要求自己 --------------------编程问答-------------------- 优秀,本身就没有标准
我觉得,能够自己独立完成项目,独立获取需要的知识的程序员,就是优秀的 --------------------编程问答-------------------- 没有标准! --------------------编程问答-------------------- 首先人品要好 --------------------编程问答--------------------     有独立解决问题的能力 --------------------编程问答-------------------- 人品吧!! --------------------编程问答-------------------- 1、确实头一条要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。 --------------------编程问答--------------------  我编程基本功不行,即数据结构和算法的掌握程度不行,即使JAVA 学的再好,心里也很虚 --------------------编程问答-------------------- 1、团队精神要到位;
2、对计算机有热爱,并且愿意献身与这个行业;
3、有自己的思想,而不是一台机器,用自己的想法构造出计算机语言;
…… --------------------编程问答-------------------- 支持#6    人品不好.技术再好也是个垃圾. --------------------编程问答-------------------- 对数据库掌握好,java基础扎实,对模式的设置心中有数。 --------------------编程问答-------------------- 人品好 + 1 --------------------编程问答--------------------
引用 7 楼 fcbayernmunchen 的回复:
我编程基本功不行,即数据结构和算法的掌握程度不行,即使JAVA 学的再好,心里也很虚

我跟lz的情况相似,那就写吧,写出点东西来,就不虚了 --------------------编程问答-------------------- 人品+技术! --------------------编程问答-------------------- 只会JAVA 注定最终你最多只能成为一个优秀的JAVA程序员。  --------------------编程问答-------------------- 1.在一定时间内独立解决问题之于还能帮助队友
2.知识面要广
3.考虑问题要细和实际
4.代码不仅完成功能,更要有规范性
5.在团队中要有一定影响了
6.团队相处一定要友好

就是优秀
--------------------编程问答--------------------
引用 14 楼 qiaox 的回复:
只会JAVA 注定最终你最多只能成为一个优秀的JAVA程序员。

  这位同胞说得对。 --------------------编程问答-------------------- 好的! --------------------编程问答-------------------- 相信自己 --------------------编程问答-------------------- 最关键的就是要能加班! --------------------编程问答-------------------- 人品,聪明的脑袋瓜。。。嘿。。其它都不怎么重要。。。 --------------------编程问答-------------------- 1、人品

2、努力

3、多思考

4、多看书,多写代码,多交流

5、多关注

6、发帖多给分 --------------------编程问答-------------------- Java的思想。。。。
  独立完成代码的能力。。 --------------------编程问答--------------------
引用 6 楼 cnzhcn 的回复:
1、确实头一条要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。

怎么都只是对个人的要求呢,不断的学习和良好的团队合作,这个不能漏了哦 --------------------编程问答--------------------
引用 7 楼 fcbayernmunchen 的回复:
 我编程基本功不行,即数据结构和算法的掌握程度不行,即使JAVA 学的再好,心里也很虚


   java 开发 和j2ee 开发好像和算法、数据结构没多大关系吧
    工作2年多了,一直都是j2ee开发,很少涉及什么算法和数据结构问题。无法就是些CRUD,js处理,以及性能优化。最重要的是设计,而不是某一项技术。 --------------------编程问答-------------------- 团队精神应该是最主要的 --------------------编程问答-------------------- 1.对编程有极大的兴趣 
2.热衷于了解并学习各种技术,并一定要达到精通的层次 
3.能忍受的住枯燥的情绪 
4.能接受别人善意的否定 
5.刻苦耐劳 
6.团队精神
等等。。。  --------------------编程问答--------------------
引用 6 楼 cnzhcn 的回复:
1、确实头一条要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。



人品很重要! --------------------编程问答--------------------
引用 9 楼 dafeicao 的回复:
支持#6 人品不好.技术再好也是个垃圾.

支持!!! --------------------编程问答-------------------- 首先要能吃喝拉撒. --------------------编程问答-------------------- 回帖系统每天会加10分? --------------------编程问答-------------------- 技术+素质 --------------------编程问答-------------------- 加班有个狗屁用,加班的代码都是糊上去的

以后那个加班写代码的跑路了,接手就要哭了 --------------------编程问答-------------------- 1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 

  2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking,   multithreading,reflection,event,handling,NIO,localization,以及其他)。 

  3.你应该了解JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。 

  4.如果你将要写客户端程序,你需要学习WEB的小应用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序的SWING,AWT,   SWT。你还应该对UI部件的JAVABEAN组件模式有所了解。JAVABEANS也被应用在JSP中以把业务逻辑从表现层中分离出来。 

  5.你需要学习java数据库技术,如JDBCAPI并且会使用至少一种persistence/ORM构架,例如Hibernate,JDO,   CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。 

  6.你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如:oracle,mysql,mssqlserver。 

  7.你需要学习JAVA的沙盒安全模式(classloaders,bytecodeverification,managers,policyandpermissions, 
codesigning,   digitalsignatures,cryptography,certification,Kerberos,以及其他)还有不同的安全/认证   API,例如JAAS(JavaAuthenticationandAuthorizationService),JCE   (JavaCryptographyExtension),JSSE(JavaSecureSocketExtension),以及JGSS   (JavaGeneralSecurityService)。 

  8.你需要学习Servlets,JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。 

  9.你需要熟悉主流的网页框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如MVC/MODEL2。 

  10.你需要学习如何使用及管理WEB服务器,例如tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护WEB程序。 

 11.你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。   
  12.你需要掌握各种流行中间件技术标准和与java结合实现,比如Tuxedo、CROBA,当然也包括javaEE本身。 

  13.你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或JAXR(JavaAPIforXMLRegistries)。 

  14.你应该学习如何利用JAVAAPI和工具来构建WebService。例如JAX-RPC(JavaAPIforXML/RPC),SAAJ   (SOAPwithAttachmentsAPIforJava),JAXB(JavaArchitectureforXMLBinding),JAXM(JavaAPIforXMLMessaging),   JAXR(JavaAPIforXMLRegistries),或者JWSDP(JavaWebServicesDeveloperPack)。 

  15.你需要学习一门轻量级应用程序框架,例如Spring,PicoContainer,Avalon,以及它们的IoC/DI风格(setter,constructor,interfaceinjection)。 

  16.你需要熟悉不同的J2EE技术,例如JNDI(JavaNamingandDirectoryInterface),JMS   (JavaMessageService),JTA/JTS(JavaTransactionAPI/JavaTransactionService),JMX   (JavaManagementeXtensions),以及JavaMail。 

  17.你需要学习企业级JavaBeans(EJB)以及它们的不同组件模式:Stateless/StatefulSessionBeans,EntityBeans(包含Bean-   ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的EJB-QL),或者   Message-DrivenBeans(MDB)。 

  18.你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic,JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。 

  19.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流JAVA规格和执行。例如AspectJ和AspectWerkz。 

  20.你需要熟悉对不同有用的API和frame   work等来为你服务。例如Log4J(logging/tracing),Quartz   (scheduling),JGroups(networkgroupcommunication),JCache(distributedcaching),   Lucene(full-textsearch),JakartaCommons等等。 

21.如果你将要对接或者正和旧的系统或者本地平台,你需要学习JNI   (JavaNativeInterface)   and   JCA   (JavaConnectorArchitecture)。 

  22.你需要熟悉JINI技术以及与它相关的分布式系统,比如掌握CROBA。 

  23.你需要JavaCommunityProcess(JCP)以及他的不同JavaSpecificationRequests(JSRs),例如Portlets(168),JOLAP(69),DataMiningAPI(73),等等。 

  24.你应该熟练掌握一种JAVAIDE例如sunOne,netBeans,IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了:) 

  25.JAVA(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet。 

  26.你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。 

  27.你需要熟悉一些在JAVA开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。 

  28.你需要能够深入了解加熟练操作和配置不同的操作系统,比如GNU/linux,sunsolaris,macOS等,做为跨平台软件的开发者。 

  29.你还需要紧跟java发展的步伐,比如现在可以深入的学习javaME,以及各种java新规范,技术的运用,如新起的web富客户端技术。 

  30.你必需要对opensource有所了解,因为至少java的很多技术直接是靠开源来驱动发展的,如java3D技术。
--------------------编程问答-------------------- 人品+自学能力 --------------------编程问答-------------------- 这个标准 需要自己制定 --------------------编程问答-------------------- 做事先做人 --------------------编程问答-------------------- 做事先做人 --------------------编程问答-------------------- 顶~~~~~~~~~~~~~~~~~~~ --------------------编程问答-------------------- 满足需求,$_$ --------------------编程问答-------------------- 一个人做10个人的事 拿半个人的工资, 老板最喜欢这样的
--------------------编程问答--------------------  感觉做java web开发,要学的知识太多了 --------------------编程问答-------------------- 合作,学习,排错~~~~~~~~~~~~~~~~~~~~~~~ --------------------编程问答--------------------
引用 6 楼 cnzhcn 的回复:
1、确实头一条要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。


正解!!!!!~ --------------------编程问答-------------------- 1、要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。 
--------------------编程问答-------------------- 不断学习 --------------------编程问答-------------------- 首先就把自己限定在Java程序员这个程度了,就注定最多只能是优秀吧。 --------------------编程问答-------------------- 想你觉得优秀的人看齐! --------------------编程问答-------------------- 迎难而上 --------------------编程问答-------------------- 不断学习,充电! --------------------编程问答-------------------- 1、要有一个平和的心态
2、一个较好的态度
3、足够的耐力
4、好学的内动力
--------------------编程问答--------------------
引用 33 楼 happysmhzp 的回复:
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 

2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking,   multithreading,r……



这么好的回复为什么没有推荐呢??? --------------------编程问答-------------------- 不断学习,坚持住=好的程序员 --------------------编程问答--------------------   面向对象学好。
   --------------------编程问答--------------------  
每天回帖即可获得10分可用分!小技巧  --------------------编程问答-------------------- copy and paste operation is very good --------------------编程问答--------------------
引用 1 楼 coolbamboo2008 的回复:
优秀,本身就没有标准
我觉得,能够自己独立完成项目,独立获取需要的知识的程序员,就是优秀的

赞成 --------------------编程问答-------------------- 技术是死的.当然也是必备的.

人是活的,人品最重要,敢于负责,善于团队合作,善于分析和解决问题. --------------------编程问答-------------------- 你自己觉得自己优秀就是了啥,如果觉得自己不优秀,那就超着自己想法的方向做 --------------------编程问答-------------------- 1、良好的沟通能力。
2、扎实的基本功,JAVA API最好大部分都能信手拈来。
3、良好的学习能力,理解力,进取心。
4、关注新技术。
5、良好的英语水平。
6、强大的意志。 --------------------编程问答-------------------- 优秀的java程序员注重的是人品。技术根本不是问题。个人修养非常重要/ --------------------编程问答-------------------- 团队开发还是团结首要,不能过于孤立,你再厉害也只是你自己厉害,不代表整个团队,支持JAVA,支持J2EE开发,哈哈~ --------------------编程问答-------------------- 定。。。。。 --------------------编程问答-------------------- 女朋友不能是.net的 --------------------编程问答-------------------- 由本书叫《Java程序员上班那点事》,对Java初学者有一定帮助。
LZ可以看看 --------------------编程问答--------------------
引用 1 楼 coolbamboo2008 的回复:
优秀,本身就没有标准
我觉得,能够自己独立完成项目,独立获取需要的知识的程序员,就是优秀的

mark --------------------编程问答-------------------- nu li la  --------------------编程问答-------------------- 一种平静的心态比什么都重要! --------------------编程问答--------------------
引用 33 楼 happysmhzp 的回复:
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 

  2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking, multithreading,re……

看着都难,别说学了 --------------------编程问答--------------------
引用 6 楼 cnzhcn 的回复:
1、确实头一条要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。


哈哈 --------------------编程问答-------------------- 努力!!
--------------------编程问答--------------------
引用 33 楼 happysmhzp 的回复:
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 

2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking,   multithreading,r……

 太疯狂了吧!! --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 牛人,高手,对任何技术都精通,很好的学习跟解决问题的能力。 --------------------编程问答-------------------- 学习中,帮顶! --------------------编程问答-------------------- 这个还有啥标准么>? --------------------编程问答-------------------- 不能找.net的女朋友 --------------------编程问答-------------------- 1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。

    2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、 HtmlConverter、jar、 java、javac、javadoc、javap、javaw、native2ascii、serialver,如果这些命令你没有全部使用过,那么你对java实际上还很不了解。

    3、工具:必须至少熟练使用一种IDE的开发工具,例如Eclipse、Netbeans、JBuilder、Jdeveloper、IDEA、JCreator或者Workshop,包括进行工程管理、常用选项的设置、插件的安装配置以及进行调试。

    4、API:Java的核心API是非常庞大的,但是有一些内容笔者认为是必须熟悉的,否则不可能熟练的运用Java,包括:◆java.lang包下的80%以上的类的功能的灵活运用。

    ◆java.util包下的80%以上的类的灵活运用,特别是集合类体系、规则表达式、zip、以及时间、随机数、属性、资源和Timer.

    ◆java.io包下的60%以上的类的使用,理解IO体系的基于管道模型的设计思路以及常用IO类的特性和使用场合。

    ◆java.math包下的100%的内容。

    ◆java.net包下的60%以上的内容,对各个类的功能比较熟悉。

    ◆java.text包下的60%以上的内容,特别是各种格式化类。

    ◆熟练运用JDBC. 8)、java.security包下40%以上的内容,如果对于安全没有接触的话根本就不可能掌握java.

    ◆AWT的基本内容,包括各种组件事件、监听器、布局管理器、常用组件、打印。

    ◆Swing的基本内容,和AWT的要求类似。

    ◆XML处理,熟悉SAX、DOM以及JDOM的优缺点并且能够使用其中的一种完成XML的解析及内容处理。

    5、测试:必须熟悉使用junit编写测试用例完成代码的自动测试。

    6、管理:必须熟悉使用ant完成工程管理的常用任务,例如工程编译、生成javadoc、生成jar、版本控制、自动测试。

    7、排错:应该可以根据异常信息比较快速的定位问题的原因和大致位置。

    8、思想:必须掌握OOP的主要要求,这样使用Java开发的系统才能是真正的Java系统。

    9、规范:编写的代码必须符合流行的编码规范,例如类名首字母大写,成员和方法名首字母小写,方法名的第一个单词一般是动词,包名全部小写等,这样程序的可读性才比较好。

    10、博学:掌握J2EE 、Oracle 、WebLogic、Jboss、Spring、Struts、Hibernate 等流行技术,掌握软件架构设计思想、搜索引擎优化、缓存系统设计、网站负载均衡、系统性能调优等实用技术。
 

本篇文章来源于:开发学院 http://edu.codepub.com   原文链接:http://edu.codepub.com/2009/1208/18536.php --------------------编程问答-------------------- http://down.51cto.com/data/51879/ --------------------编程问答-------------------- 引用 6 楼 cnzhcn 的回复:
1、确实头一条要人品好,有好的人品,才有好的职业道德,才有团队合作精神。
2、要有java技术的敏感度,能够察觉出新技术对所处行业的影响;
3、要有快速学习的能力,这就要求一个人要有对java技术的整体理解,这样对日新月异的新技术才能够很快融会贯通;
4、要有目标,一个个切实可行的目标组成的目标链条。
5、要懂得生活、热爱生活,不能让自己变成一台机器,不通人情,没有人味。 --------------------编程问答-------------------- 做网页有什么前途而言,要学java看你在什么方面应用,除了网页我感觉什么方面都好! --------------------编程问答-------------------- 首先是人品,其次是技术,工作经验咯 --------------------编程问答-------------------- 路过。。。。。。。。。。。。。。。 --------------------编程问答-------------------- #33楼和#78楼,回答的真详细啊 --------------------编程问答--------------------
引用 78 楼 queen25 的回复:
1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。

  2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、 HtmlConverter、jar、 java、javac、javadoc、javap、javaw、native2ascii、serialver,如果这些命令你没有……

顶顶... --------------------编程问答-------------------- 我是来看评论的 --------------------编程问答--------------------
引用 78 楼 queen25 的回复:
1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。

    2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、 HtmlConverter、jar、 java、javac、javadoc、javap、javaw、native2ascii、serialver,如果这些命令……

我不及格了 --------------------编程问答-------------------- +1
引用 59 楼 lipingqingqing 的回复:
1、良好的沟通能力。
2、扎实的基本功,JAVA API最好大部分都能信手拈来。
3、良好的学习能力,理解力,进取心。
4、关注新技术。
5、良好的英语水平。
6、强大的意志。
--------------------编程问答-------------------- 一个优秀的Java程序员,不应该是一个Java Purist。 --------------------编程问答--------------------
引用 89 楼 healer_kx 的回复:
一个优秀的Java程序员,不应该是一个Java Purist。


任何语言的Purist最多是个Coder~ --------------------编程问答--------------------
引用 77 楼 zheng525zheng 的回复:
不能找.net的女朋友

有才 --------------------编程问答-------------------- --------------------编程问答-------------------- 人品+技术! --------------------编程问答-------------------- 技术+人品,同意啊 --------------------编程问答-------------------- 好好学习 天天向上 --------------------编程问答-------------------- 新手很多看不懂  呵呵 --------------------编程问答-------------------- 坚持不懈的努力
不怕困难永远不服输的精神
热爱学习的激情不弱
良好的素质教养
--------------------编程问答-------------------- 独立解决问题 --------------------编程问答--------------------
引用 33 楼 happysmhzp 的回复:
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 

  2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking, multithreading,re……

补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,