第一篇:高级JAVA、PHP程序员岗位职责
1.负责公产品软件设计、开发、测试和维护工作,主要为C++、java、php。
2.负责任务的质量和完整性,包含故障分析、解决、修复,一般文档编制。
3.发现和指出项目或计划中的设计问题。
4.总结产品研发经验,持续改进产品性能。
5.为产品的市场推广提供技术支持。
6.报据用户或公司其他部门的要求进行设计修改和设计改进。
7.研究项目技术细节,编写相应的说明书。
第二篇:php程序员岗位职责
1.设计、开发和建设集团形象网站及其他宣传类网站。
2.负责集团网站及其他相关网站的及时更新、功能扩充及改版工作。
3.完成领导交办的其他工作。
第三篇:Java程序员的PHP印象
Java程序员的PHP印象
阅读次数: 674次 发布时间: 2010-08-11 09:43:13发布人: 网络转载
来源: 网络转载
Java开发经验:8年+。PHP开发经验:<3个月。
想做一个网站,因为有多年的Java经验,所以一开始自然是想用 Struts+ibatis,虽说 Java Web 开发配置挺繁琐的,但有多年的积累,自然也不是大问题。
在筹备的过程中,逐渐发现,我要做的网站,最好是基于一个成熟的CMS或者WIKI系统做定制,否则白手起家工作量太大,可是,经过对比选型,我发现在这方面的开源领域,Java阵营毫无抵抗的输给了PHP阵营。
痛苦啊,抉择啊,我想选PHP吧,Drupal 或者 Droomla,但又担心从头搞定PHP耗时太长,于是希望能够混搭使用,也就是偏重前台展示的部分,使用PHP在Drupal上定制,而偏重后台业务逻辑的,使用Java开发,两者之间用 Web Service 互通。
但是,这种混搭风也有问题,那就是开发的复杂度高,从环境搭建到测试,都麻烦,而且Java很耗资源,对虚拟主机的要求高,所以,最终在这个项目上放弃了使用Jaa的念头(至少是暂时的),完全转向了PHP。用PHP写代码的过程中有些感悟,总结如下: 上手复杂度:PHP胜
我用 Java 做了 2-3 年的 Swing 开发,然后转向WEB,第一个接触的框架是 Struts,当时的感受就是要配置的东西太多了,前后鼓捣了三个多月,才感觉渐入佳境了。
如今PHP从开始了解到现在总共三个月左右的时间(而且只是业余时间),其中有一周的时间在看PHP官网的文档,了解主要的语言特性,后面基本上就是边看边改代码,并照猫画虎的写东西。虽说当年对软件开发的理解不能和今天相提并论,但客观的说,PHP的确简单、易学,而且特别适合做WEB开发。开发感受:各有胜场 PHP最让我不爽的地方:
经常是出错后屏幕一片空白(White Screen Of Death,都有专有名词了,可见这是PHP出错表现的一大特性),什么信息都没有。
开发工具的auto complete能力远不如java。PHP比较爽的地方:
php中,数组和哈希表等价,而且是使用最广泛的数据结构,变长参数+数组做参数,能大大提高写代码的灵活性。基本上不用为NPE担心。
访问数据库比JDBC简单多了,不用什么持久化框架也能很快的写出类似DAO的代码。
许多专为WEB设计的特性,使得从页面获取信息,或者向页面输出信息都变得非常轻巧。谈不上爽或者不爽的特性:
echo 的内容直接到前台页面上了,一开始我以为echo和java的System.out一样,会写到日志。
由于不像Java那样对classpath以及class的路径有着严格的要求,一时之间还不习惯,原来创建一个Java类放在什么地方基本上没什么可考虑的,但现在经常要决策一个文件该放在哪个目录下。
因为可以OOP,也可以不OOP,所以,增加新功能点的时候,经常很纠结O还是不O。
代码风格啊!太习惯了getData这样的命名,是在不适应get_data这样的函数,因此,执着着,没有入乡随俗的改过来,也好,一眼就可以看出,哪些是属于框架的,哪些是属于我的。平台对比
如果拿PHP和JAVA比,我觉得PHP是瑞士军刀,而JAVA则是家庭五金维修工具N件套,N >= 100,在解决网站开发这一问题上,PHP的确是小巧、易用,但也有不尽如人意的地方。
比如,我发现J2EE中几乎必不可少的JDBC连接池,在PHP中约等于无,所以,用户请求过来,如果需要访问数据库,都是现连、现取、现关,究其原因,是架构不同造成的。
实际上,J2EE中有Web Container的概念,用户请求是由Container分配的线程完成的,线程可以使用进程的内存空间交互数据;而PHP是依附于Apache的,每次用户请求,Apache都启动一个新的进程来执行PHP脚本,进程执行完,一切资源都回收了,所以在默认情况下,一个PHP脚本想要留下点“全局”的东西并不容易(我一开始就被 global 这个关键词给骗了);当然,也不是说不同的请求之间完全没法交换数据,只是这样需要使用共享内存,或者使用文件做持久化。
不过,Apache用进程处理请求应该比线程模式要更加健壮,因为在J2EE中,因为一个线程的问题导致整个Container挂掉的情况屡见不鲜。OOP PHP主流版本已经对OOP的支持很好,但因为历史原因,好多PHP的开源项目的代码都是不那么OOP的。一开始,我是跟着框架的习惯,用不怎么OOP的方式写代码,在写了十几个零散的函数之后,终于忍不住,又全部重构成对象了。
做了这么多年的Java,OOP的思想已经非常深入,虽然当年从学校出来的时候,也是从结构化程序设计转向面向对象的,但N年之后,再从面向对象转向结构化,这种不习惯的感觉更加强烈。也许是OOP真的是更加符合自然的思考习惯吧,现在看着一长串的零散的函数,很有一种不安全的感觉,况且还要挖空心思的为方法起名,以避免冲突,累!总结
1、应该把PHP纳入自己的开发工具箱
2、PHP不够完美,但可圈可点之处甚多。
3、面向对象为PHP增色不少
4、在开源领域,PHP方面比较发达的是最终应用,所以才有那么多人使用wordpress建独立博客,哪怕没有开发经验;而JAVA方面比较发达的是开发框架和类库,给程序员们使用的。从这个角度来讲,Java是个小众的语言。
第四篇:如何成为高级Java程序员
如何成为高级Java程序员
给一个刚出社会的程序员新生一个建议,想成为一个优秀的程序员,高级程序员,不能眼高手低,不能认为开发新项目,技术研发才学到东西,不能看不起维护系统,不要以为自己懂的技术越多自认为自己很牛叉。假如你忽略了一个问题那么你永远成为不了优秀的程序员、高级程序员,那就是系统优化。
一、JAVA。要想成为JAVA(高级)工程师肯定要学习JAVA。一般的程序员或许只需知道一些JAVA的语法结构就可以应付了。但要成为JAVA(高级)工程师,您要对JAVA做比较深入的研究。您应该多研究一下JDBC、IO包、Util包、Text包、JMS、EJB、RMI、线程。如果可能,希望您对JAVA的所有包都浏览一下,知道大概的API,这样您就发现其实您想实现的很多功能,通过JAVA的API都可以实现了,就不必自己费太多的脑经了。
二、设计模式。其实写代码是很容易的事情,我相信您也有同感。但如何写得好就比较难了。这个“好”字包括代码可重用性,可维护性,可扩展性等。如何写出好的代码往往要借助一些设计模式。当然长期的代码经验积累,只要您用心,会使您形成自己代码风格。相信您的代码也比较符合代码的可重用性,可维护性,可扩展性。但既然前人已经给我们总结出了经验,我们何不踩着前人的肩膀前进?
三、XML。现在的系统中不使用XML几乎是不可能的。XML的功能非常强大,它可以做数据转换、做系统的配置、甚至可保存您的系统业务数据。因此您必须了解XML,包括它的语法,结构。您还需要比较熟练的使用解析XML的一些API,比如JDOM,SAX等,因为在我们一般的项目中,XML往往担当系统配置信息的作用,您需要用这些API解析这些配置信息,开发完美的项目。
四、精通使用一种或两种框架。像在《如何成为java初级程序员》中提到的那样,“框架都会有许多可重用的代码,良好的层次关系和业务控制逻辑,基于框架的开发使你可以省出很多的开发成本”。但我这里希望您能精通,更多的是希望您能通过框架的使用了解框架的思想。这样您在开发一个项目时思路会开阔一些,比如您会想到把SQL语句与您的java代码分开,再比如您会考虑把您的业务逻辑配置到XML或者数据库中,这样整个项目就很容易扩张了。
五、熟悉主流数据库。其实真正比较大的项目都是有人专门做数据库的,但往往很多项目要求作为(高级)工程师的您也参与数据库的设计以及SQL的编写。所以为了更好的为国家做贡献,建议您还是多了解一些主流数据库,比如SQLSERVER,ORACLE,多连接SQL和存储过程以及触发器。如果您不是“科班”出身,您还需要补充一些数据库原理方面的知识。
六、精通一种或两种WEBServer。尽管我再《如何成为java初级程序员》里讲过它,我还是要强调您要精通一种或两种。因为作为java工程师,特别时想成为高级JAVA工程师的您,您不可避免地要部署您的项目到WebServer上,而且只有当您精通一种WebServer,您才可能最大限度地使用它的资源,这往往可以节省很多时间和精力。
七、UML。我知道您肯定想成为高级工程师,因此您有必要了解或熟练或精通UML,这取决于您有多大决心想成为高级工程师和项目经理。在比较正规的开发团队中,UML是讨论项目的交流工具,您要想做一个软件工程师,您至少要能看懂,您要想做高级工程师,您要能通过它来描述您对项目的理解,尽管这不是必须,但却很重要。
八、站在高度分析问题:这不是一个知识点,也不是通过书本就能学得到的。只所以提到这一点,是因为我比您还着急,我希望您更快的成为一个高级的软件工程师,而不是一个一般的软件工程师。希望您在工作中多向您的系统分析员、需求分析员、系统设计员学习,多站在他们角度上去看您在开发的项目。在最好在项目之初先在您的脑海里对项目有个大致的分析、设计,然后和他们进行比较,找找差别,想想缺点。
九、工具。与在《如何成为java初级程序员》里提到的不同,您在这个阶段可能接触到不同的工具了,尽管您还需要使用JB或者IDEA,但能可能对ROSE,Together要多了解一些,因为您要画UML了。不要再对Dreamweaver等HTML编辑器情有独钟了,那些JSP页面让初级程序员去写吧。
1、具有1-5工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的可以加群。
第五篇:JAVA高级程序员招聘考题
姓名:日期:时间:
1.请问您在开发中或学习中运用过哪些架构(struts,hibernate,spring,webwork,xword等),请谈谈您对所使用的架构的理解及使用心得?
2.请问您是否用JAVA开发过web service,请谈谈您对它的理解及心得。
3.请问您对LINUX的使用熟不熟?有没有在LINUX下配置过WEB 服务?LINUX下的常用命令你记得哪些?
4.有两个表,学生记录表(STU_ID,学生名称,班级名),学生成绩表(REC_ID,STU_ID,学科名,成绩分数),a)请写一个SQL语句,统计出每个学生的总成绩。
b)请写一个SQL语句,查出A学生B科的成绩。
5.您是否使用过EJB,请描述一下您对EJB的理解及使用心得。
6.请简要说明一下JAVA中的接口的用处。
7.请写一个简单的单例类,并说明一般在什么情况下会使用单例类,有什么好处。