高级程序员必须具备的技能

电脑杂谈  发布时间:2020-07-16 13:02:10  来源:网络整理

php高级程序设计模式,框架与测试_c语言高级程序_高级程序管理器

宏:

1. 技术广度

至少您必须精通多种开源技术,并且已经研究了struts \ spring等的源代码.

2. 项目经验

从头到尾一直遵循着几个大型项目. 头指需求阶段,包括需求研究.

尾部是指交付之后,包括维护阶段.

3. 建筑经验

具有分布式系统的体系结构和开发经验. 他在跨系统结构优化和数据存储性能指标方面拥有丰富的经验. 应该熟悉哪些缓存,的垂直分段,业务抽象和水平拆分.

c语言高级程序_高级程序管理器_php高级程序设计模式,框架与测试

4. 工业领域

至少您应该精通一两个业务. 所谓熟练程度是,例如,做金融证券业务,至少要等一半的经济分析师. 从事电力业务的人至少应等待一半的电力工程师.

5. 个人修养

我有自己独特的见解,而不是每个人.

微观上:

1. 您需要精通面向对象的分析和设计(OOA / OOD),参与模式(GOF,J2EEDP)和集成模式. 您应该非常了解UML,尤其是类高级程序管理器,对象,交互和状态图.

2. 您需要学习JAVA语言及其核心库的基本知识(集合,序列化,流,网络,多线程,反射,事件,处理,NIO,本地化等).

3. 您应该了解JVM,类加载器,类反射和垃圾回收的基本工作机制. 您应该能够反编译类文件并了解一些基本的汇编指令.

php高级程序设计模式,框架与测试_c语言高级程序_高级程序管理器

4. 如果要编写客户端程序,则需要学习WEB小程序,必须掌握GUI设计的思想和方法,以及桌面程序的SWING,AWT,SWT. 您还应该了解UI组件的JAVABEAN组件模式. JAVABEANS还用于JSP中,以将业务逻辑与表示层分离.

5. 您需要学习Java技术(例如JDBCAPI),并且将至少使用一种持久性/ ORM框架,例如Hibernate,JDO,CocoBase,TopLink,InsideLiberator(内部JDO红色工厂软件)或iBatis.

6. 您还应该了解对象关系的阻抗不匹配的含义,以及它如何影响业务对象与关系的交互及其操作结果. 您还需要掌握不同产品的使用,例如: oracle,mysql,mssqlserver.

7. 您需要学习JAVA的沙盒安全模型(类加载器,字节码验证,管理器,策略和权限,代码签名,数字签名,加密,证书,Kerberos等)以及不同的安全性/身份验证API高级程序管理器,例如JAAS(JavaAuthenticationandAuthorizationService),JCE(JavaCryptographyExtension), JSSE(JavaSecureSocketExtension)和JGSS(JavaGeneralSecurityService).

8. 您需要学习Servlet,JSP和JSTL(StandardTagLibraries)以及可选的第三方TagLibraries.

9. 您需要熟悉主流的Web框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及它们的相关模式,例如MVC / MODEL2.

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

11. 您需要学习分布式对象和远程API,例如RMI和RMI / IIOP.

高级程序管理器_c语言高级程序_php高级程序设计模式,框架与测试

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样式(设置程序,构造函数,接口注入).

16. 您需要熟悉各种J2EE技术​​,例如JNDI(JavaNamingandDirectoryInterface),JMS(JavaMessageService),JTA / JTS(JavaTransactionAPI / JavaTransactionService),JMX(JavaManagementeXtensions)和JavaMail.

17. 您需要学习Enterprise JavaBean(EJB)及其不同的组件模式: 无状态/ StatefulSessionBean,EntityBean(包括Bean-ManagedPersistence [BMP]或Container-ManagedPersistence [CMP]及其EJB-QL)或Message-DrivenBeans(MDB).

18. 您需要学习如何管理和配置J2EE应用程序服务器(例如WebLogic,JBoss等),以及如何使用其附加服务,例如集群,连接池和分布式处理支持. 您还需要了解如何在其上打包和配置应用程序,以及能够监视和调整其性能.

19. 您需要熟悉面向方面的编程和面向属性的编程(均缩写为AOP),以及它们的主流JAVA规范和实现. 例如AspectJ和AspectWerkz.

高级程序管理器_php高级程序设计模式,框架与测试_c语言高级程序

20. 您需要熟悉各种有用的API和框架来为您服务. 例如,Log4J(日志记录/跟踪),Quartz(调度),JGroups(网络组通信),JCache(分布式缓存),Lucene(全文搜索),Jakarta Commons等.

21. 如果要与旧系统或本机平台连接或要使用旧系统或本机平台,则需要学习JNI(JavaNativeInterface)和JCA(JavaConnectorArchitecture).

22. 您需要熟悉JINI技术及其相关的分布式系统,例如掌握CROBA.

23. 您需要JavaCommunityProcess(JCP)及其不同的JavaSpecificationRequests(JSR),例如Portlet(168),JOLAP(69),DataMiningAPI(73)等.

24. 您应该精通JAVAIDE,例如sunOne,netBeans,IntelliJIDEA或Eclipse. (有些人更喜欢使用VI或EMACS编写文档. 无论您使用什么: )

25. JAVA(准确地说是一些配置)是冗长的,它需要大量的手动代码(例如EJB),因此您需要熟悉代码生成工具,例如XDoclet.

26. 您需要熟悉单元测试系统(JNunit),并学习不同的生成和部署工具(Ant,Maven).

27. 您需要熟悉JAVA开发中常用的一些软件工程过程. 例如RUP(理性统一过程)和敏捷方法.

28. 作为跨平台软件的开发人员,您需要能够了解有关不同操作系统(例如GNU / linux,sunsolaris,macOS等)的熟练操作和配置的更多信息.

29. 您还需要跟上Java开发的步伐,例如,现在您可以深入学习javaME,以及各种新的Java规范和技术应用程序,例如新的Web富客户端技术.

30. 您必须对开放源代码有所了解,因为至少有许多Java技术直接由开放源代码驱动,例如java3D技术.


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-282372-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 王鹏立
        王鹏立

        小王子

      • 卫宣公姬晋
        卫宣公姬晋

        个人至于那么在乎么

      • 王莉莉
        王莉莉

        炒股也只是一项技能和职业而已

      热点图片
      拼命载入中...