当前位置:万佳范文网 >

工作总结 >个人工作总结 >

java工作总结(通用5篇)

java工作总结(通用5篇)

java工作总结 篇1

经过三个星期的学习,我们终于把这个图书馆管理系统做出来了,虽然做得不是很完美,但是却是我们这个小组的每一个成员辛苦了三个星期的成果,我们为此感到开心。

java工作总结(通用5篇)

说实话,我们这一组的JAVA都学得不是很好,上课也听得不是很明白,所以在刚开始做的时候,我们每一个人都认为这是一个不可能完成的任务,刚开始我们也想过要放弃,想想这么难怎么可能完成呢!可是后来看到其他组都在认真的做任务,我们想想也不能这样放弃,至少也得试试,如果不会的话,再去请教会的人,学习不就是从不会到会的!

于是第一个星期我们把任务分配好了,但是这一周我们把大部分的时间浪费了,也没有做出来什么,只是把一个简单的界面做好了。

不过我们也很开心了,因为至少是我们自己做出来的,虽然没有太完善。

第二个星期我们开始做每一个版块的功能模块,一共要完成三个版块,我们六个人分成两组我们这组要完成最近一个系统维护版块,这个版块包括两大模块,更改密码和用户管理,而我个人主要负责的是用户管理这个版块。

在实训的过程中我们还学到了JAVA的图形化界面。

这让我们很轻松的'就能把一个界面弄出来,而不需要让我们打很我繁琐的程序代码,当然我的这个模块的界面我花了半天就做出来了,做出来之后,接下来就是接监听,这对我来说是一个难点,起初我是一点也不会的,自己看书也只是看得懂,但也编不出来,当时我很着急,看到人家都做出来了。

没办法,我只能去请教其他同学,同学们还是很友好的,很耐心的讲解给我听,后来终于搞得有点明白了,把我们这一部分的监听做出来了。

第三个星期,是我们大家共同讨论难点的时候,因为我们把所有界面都做出来,监听弄好了,最主要的是连数据库,这对我们来说是一个不小的挑战,第一天我们一点头绪都没有,后来看到有同学去问老师,我们就去请教那个同学,最后我们还是弄出来了,但不是很完美,存在许多的缺陷。

而且我们对于这一块还是弄得不太明白,糊里糊涂的。

就这样,实训三周的时间就结束了,我们也总算把这个图书馆管理系统弄出来了。

在实训期间,让我重新认识了JAVA这门课,在还没有实训的时候,我是对他没有一点兴趣也没有了,但是经过三周的实训让我对它产生了浓厚的兴趣,我想学习以后学习JAVA我不会像以前那样漫不经心的。

java工作总结 篇2

本次培训分为两个阶段。前五天是第一阶段。我们学习了理论知识,巩固和深化了所学的编程知识。下面说说个人感受和经历:

一、我学习理论知识

在最初的五天实践培训中,我们学习了java编程的理论课程。班主任幽默严谨。在老师的指导和启发下,我们巩固了以前在学校学过的编程知识,加深了它,澄清了一些以前对编程技术了解的错误或模糊的概念。

在课堂上,我们还以java中GUI编程常用的swing框架和JAVA的容器系统为切入点。在此期间,框架不仅学习了一般的编程知识和技能。在对框架全面系统的了解中,我也学到了框架中的泛型技术和架构思想的知识。在企业的实际编码过程中,每一个框架都构成了软件的基石。只有掌握几个框架知识,我们才能在实践中高效发展,才能使我们的产品立足于市场败之地。

在理论课的学习过程中,我们也暴露了一些问题,比如在学校上课学习时,对所学知识只是知其然而不知其所以然,不太愿意深钻,和超前学习一些知识。

二、项目开发实战练习

在结束了理论知识的学习之后,后五天我们在实训基地进行了项目开发的实战练习。

项目的名称是superVCD,是由海辉曾经所接的一个远程音乐唱片管理软件项目的精简版。虽然有所精简,但是其内容对我们学习仍具有相当的价值,对我们了解真实的软件的设计规范,编码规范,文档规范以及客户对软件的需求很有参考价值。该内容囊括了GUI设计和编码,容器与泛型的知识,规范文档编写,测试及日志系统,甚至要求我们实现一个专用的轻量级数据库系统,这无疑是对我们很好的一次历练机会,同时可以积累丰富的知识。

平时我们很少有机会能够完成一个如此规模的项目,所以在这次项目实战训练中,我的收获也有很多。

第一,我学会了如何规范的编写代码和文档。文档和代码是团队各成员在项目开发交流合作中的纽带,风格随意混乱的代码和缺失或语义不明的文档会让团队中的其他成员不能理解和使用自己写的程序,我在平时编写代码比较随意,并不注重这一点,经历这次实战演练之后,我一定会严格的遵守编码规范。

第二,我学会了如何理解和分析客户的需求。软件为客户而生,只有理解了客户的需求才有写出优秀的软件的可能,在这次实战演练中,老师教会了我们如何组织团队正确的理解和分析客户的需求,并写出完善的需求分析,并用于项目开发。

第三,我学会了对按照需求对软件架构进行设计,这点我想是我们许多同学之前都非常欠缺的,因为我们在学校的时编写代码篇幅短小,功能单一,所以设计思路通常只留于脑内,非常模糊。而在这次项目开发演练中,老师手把手的教会我如何从需求中抽象出问题,并将之模块化,然后逐步求精,就如同为高楼大厦搭建栋梁。

第四,我学会了如何团队合作,共同开发。作为项目开发小组的组长,我的体会更加深刻。独木难支,光靠一个人的力量是远远不够的。只有管理组织好一个团队,才能够最终完成项目的开发,或许在编程技术水平上团队成员有高有低,但是,每个人都有自己的闪光点,总可以在团队的找到适合自己的位置,每个人在自己的团队中做的贡献,创造出不可磨灭的重大价值。

第五,我学会了如何与客户沟通并展示自己的项目,软件项目的开发最终需要的是客户的认可,让客户了解并认可自己的产品最好的办法就是用言语将自己的项目的最好的一面展示出来,在最后一天里,实训的老师组织了项目的答辩,给我们提供了锻炼自己的`表达能力,展示自己的项目的舞台。

在实战的过程中,我对项目开发流程有了切实的体会:学会了如何编写规范合格的代码和文档;学会了了正确理解分析客户需求并设计项目的方法;体会到了团队合作精神的重要性,明白了组织团队进行项目开发的具体流程,还了解到了向客户展示产品以及与客户进行沟通的技巧。

经历过这次实习实训,我们不仅在编程的理论知识上有所巩固和深化,更重要的是有了实战进行项目开发锻炼动手能力的机会,积累了一笔宝贵的经验。实训虽已结束,但我们的不断学习的征途才刚刚迈出第一步。今后的路还很长,还有很多机会去实习提高,我们要以更加积极的姿态去充实自己,学习,不断地迎接挑战。

java工作总结 篇3

一、考核期内主要业绩,工作创新、工作质量及成效:

1、.5.10—.7:联通116114站开发

完成116114网站首页登录及注册、公告模块、红段子短信发送、地区二级联动、及一些公共代码的实现,在这个项目中学习了新的知识freemarker及ibatis,熟悉了jquery的使用,并对统一框架有了一定的了解。并在规定时间内完成了开发任务。

项目描述:

联通116114站主要实现红段子的定制与包月。红段子内容包括短信和彩信。是由用户注册成为会员,自行在网上发布红段子,经审核后发布,再由个人用户到网站上包月或点播定制的一个业务。红段子站建设目的,就是为了满足和实现红段子发布,定制流程。

视频黄页个人定制:个人用户通过搜索引擎方式查询视频黄页,不注册也可以进行查询搜索,查询时用户可选择地区,行业,然后输入关键字进行搜索。搜索出结果后,个人用户可点击视频黄页,进行预览或定制或包月。

2、.7—.9.15:质检考评系统0502、0503、0504版本测试

这段时间主要熟悉质检系统的业务及需求,学习一些测试的基础知识,如单元测试、集成测试、压力测试、性能测试等,并能使用自动测试工具qtp进行一些重复的需要手动测试的功能,使用loadrunner模拟多个用户实施并发负载及实时性能监测。熟悉web应用在websphere及weblogic服务器上的部署。在测试的这段时间,对质检系统的所有的功能都有了一定的了解,并发现了许多系统以前存在的问题,项目提交测试部之后,没有太多功能上的问题。也为后期参与质检项目开发作好了准备。

但0504版本与其他版本依赖关系比较大,没有测试环境,许多功能没有测试,这个版本出现的问题比较多。所以在以后工作中需要注意这些问题,及时向上级反馈工作中的问题。

3、.9.15—.11.15:质检考评系统0505开发

主要负责计划考评(人工事后,自动事后,轮次)的相关需求、质检标准等功能的实现及其他需求的测试。学习了struts1的相关知识,对质检系统业务有了进一步了解。这个版本的开发都在规定时间内完成了任务,版本质量也没有太大的问题。

4、.11.16—.1.10:甘肃12580项目开发

主要完成彩信模块所有的功能的实现,主要用到了jquery、dwr、ibatis、spring、boss验证、uma及webservice等技术

5、.1.11—.2质检项目0506开发及测试

二、自我评价(包括本人需要向上级汇报的其它方面内容):

1、在这半年多的时间里,学习了很多新的知识,都是以前没有接触过的,可能刚工作的时候有些浮躁,想有新的任务,又害怕做不好,但是最后都能如期的完成领导交付的`任务,并学到新的技术,所以,事后会觉得没有什么是做不好的,只要自己动手去做,克服急躁情绪,积极、细致地的对待每一项任务。

2、测试工作,刚做测试工作的时候,大家都不太愿意去做,一是觉得自己不会这技术,二是觉得自己的初忠是搞开发这一块,刚出来就做测试,也没有什么经验,总觉得不合适,但做过一段时间后,我深刻感受到开发的做测试的一个好处(当然是没有接触项目前),根据项目需求,可以很快的熟悉项目的业务,不再局限于做开发的只熟悉某一个模块的功能,而不了解其他模块的实现。并且,在以后做开发的时候自己会考虑更全面一些,思维也拓展更开一些。

3、在工作中需要不断的学习,通过项目不断提高自己的各项技能,做到脚踏实地,不怕多做事、做小事,在点滴实践中完善提高自己。

4、在工作中可能会遇到一些纠结的小问题,自己可能花很多时间也解决不了,如果多问问同事可能很快就可以解决问题,所以,不用爱面子,多向同事请教,但也不是有问题就问。

5、这半年工作时间里,发现和解决问题的能力,个人的技术都有了很大的提高,在项目中遇到问题,不会再像刚开始不知道从何下手,不知道如何去定位一个问题,而现在都能较快的处理在工作中遇到的问题。

java工作总结 篇4

中国有很多精于编码的人,但是中国软件行业,尤其是网络应用开发方面误区很大,很难形成有规模的软件开发力量和产品能力,不但比美国差距甚远,和印度相比也是颇有不如。

这些问题不是在于中国程序员的智商和工作努力状况,也不是在于国家和民间对开发的投入程度,而是很大程度上,有一些对技术,对程序开发,对项目设计方面的思想误区,这些误区,导致了软件行业的产品化能力不足,缺乏规模化和大型复用系统研发能力,可以说,改变认识误区,是解决软件行业小作坊模式和个体英雄模式所带来的局限性的重要工作。

中国有很多小朋友,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的很漂亮,一些技术细节相当出众,也很有钻研精神,但是他们被一些错误的认识和观点左右,缺乏对系统,对程序的整体理解能力,这些人,一个网上的朋友说得很好,他们实际上只是一些Coding fans,压根没有资格称为程序员,但是据我所知,不少小网络公司的CTO就是这样的coding fans,拿着吓人的工资,做着吓人的项目,项目的结局通常也很吓人。

作一个真正合格的程序员,或者说就是可以真正合格完成一些代码工作的程序员,应该具有的素质。

1、团队精神和协作能力

把它作为基本素质,并不是不重要,恰恰相反,这是程序员应该具备的最基本的,也是最重要的安身立命之本。

把高水平程序员说成独行侠的都是在呓语,任何个人的力量都是有限的,即便如linus这样的天才,也需要通过组成强大的团队来创造奇迹,那些遍布全球的为linux写核心的高手们,没有协作精神是不可想象的。

独行侠可以作一些赚钱的小软件发点小财,但是一旦进入一些大系统的研发团队,进入商业化和产品化的开发任务,缺乏这种素质的人就完全不合格了。

2、文档习惯

说高水平程序员从来不写文档的肯定是乳臭未干的毛孩子,良好的文档是正规研发流程中非常重要的环节,作为代码程序员,30%的工作时间写技术文档是很正常的,而作为高级程序员和系统分析员,这个比例还要高很多。

缺乏文档,一个软件系统就缺乏生命力,在未来的查错,升级以及模块的复用时就都会遇到极大的麻烦。

3、规范化,标准化的代码编写习惯

作为一些外国知名软件公司的规矩,代码的变量命名,代码内注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。

有些coding fans叫嚣高水平程序员写的代码旁人从来看不懂,这种叫嚣只能他们自己压根不配自称程序员。

代码具有良好的可读性,是程序员基本的素质需求。

再看看整个linux的搭建,没有规范化和标准化的代码习惯,全球的研发协作是绝对不可想象的。

4、需求理解能力

程序员需要理解一个模块的需求,很多小朋友写程序往往只关注一个功能需求,他们把性能指标全部归结到硬件,操作系统和开发环境上,而忽视了本身代码的性能考虑,有人曾经放言说写一个广告交换程序很简单,这种人从来不知道在百万甚至千万数量级的访问情况下的性能指标是如何实现的,对于这样的程序员,你给他深蓝那套系统,他也做不出太极链的并访能力。

性能需求指标中,稳定性,并访支撑能力以及安全性都很重要,作为程序员需要评估该模块在系统运营中所处的环境,将要受到的负荷压力以及各种潜在的危险和恶意攻击的可能性。

就这一点,一个成熟的程序员至少需要2到3年的项目研发和跟踪经验才有可能有心得。

5、复用性,模块化思维能力

经常可以听到一些程序员有这样的抱怨,写了几年程序,变成了熟练工,每天都是重复写一些没有任何新意的代码,这其实是中国软件人才最大浪费的地方,一些重复性工作变成了熟练程序员的主要工作,而这些,其实是完全可以避免的。

复用性设计,模块化思维就是要程序员在完成任何一个功能模块或函数的时候,要多想一些,不要局限在完成当前任务的简单思路上,想想看该模块是否可以脱离这个系统存在,是否可以通过简单的修改参数的方式在其他系统和应用环境下直接引用,这样就能极大避免重复性的开发工作,如果一个软件研发单位和工作组能够在每一次研发过程中都考虑到这些问题,那么程序员就不会在重复性的工作中耽误太多时间,就会有更多时间和精力投入到创新的代码工作中去。

一些好的程序模块代码,即便是70年代编成的,拿到现在放到一些系统里面作为功能模块都能适合的很好,而现在我看到的是,很多小公司软件一升级或改进就动辄全部代码重写,大部分重复性工作无谓的浪费了时间和精力。

6、测试习惯

作为一些商业化正规化的开发而言,专职的测试工程师是不可少的,但是并不是说有了专职的测试工程师程序员就可以不进行自测;软件研发作为一项工程而言,一个很重要的特点就是问题发现的越早,解决的代价就越低,程序员在每段代码,每个子模块完成后进行认真的`测试,就可以尽量将一些潜在的问题最早的发现和解决,这样对整体系统建设的效率和可靠性就有了最大的保证。

测试工作实际上需要考虑两方面,一方面是正常调用的测试,也就是看程序是否能在正常调用下完成基本功能,这是最基本的测试职责,可惜在很多公司这成了唯一的测试任务,实际上还差的远那;第二方面就是异常调用的测试,比如高压力负荷下的稳定性测试,用户潜在的异常输入情况下的测试,整体系统局部故障情况下该模块受影响状况的测试,频发的异常请求阻塞资源时的模块稳定测试等等。

当然并不是程序员要对自己的每段代码都需要进行这种完整测试,但是程序员必须清醒认识自己的代码任务在整体项目中的地位和各种性能需求,有针对性的进行相关测试并尽早发现和解决问题,当然这需要上面提到的需求理解能力。

7、学习和总结的能力

程序员是人才很容易被淘汰,很容易落伍的职业,因为一种技术可能仅仅在三两年内具有领先性,程序员如果想安身立命,就必须不断跟进新的技术,学习新的技能。

善于学习,对于任何职业而言,都是前进所必需的动力,对于程序员,这种要求就更加高

但是学习也要找对目标,一些小coding fans们,他们也津津乐道于他们的学习能力,一会学会了asp,一会儿学会了php,一会儿学会了jsp,他们把这个作为炫耀的资本,盲目的追逐一些肤浅的,表面的东西和名词,做网络程序不懂通讯传输协议,做应用程序不懂中断向量处理,这样的技术人员,不管掌握了多少所谓的新语言,永远不会有质的提高。

善于总结,也是学习能力的一种体现,每次完成一个研发任务,完成一段代码,都应当有目的的跟踪该程序的应用状况和用户反馈,随时总结,找到自己的不足,这样逐步提高,一个程序员才可能成长起来。

一个不具备成长性的程序员,即便眼前看是个高手,建议也不要选用,因为他落伍的时候马上就到了。

java工作总结 篇5

java集合类主要负责保存、盛装其他数据,因此集合类也称容器类。java集合类分为:set、list、map、queue四大体系。其中set代表无序、不可重复的集合;list代表有序、可重复的集合。map代表具有映射关系的集合;queue代表队列集合。

java集合类主要由两个接口派生:Collection和Map,是集合框架的根接口。下面是其接口、子接口和实现类的继承树。

下面就一一介绍四大接口及其实现类。

Set接口。set集合不允许包含相同的元素。set判断两个对象是否相同是根据equals方法。如果两个对象用equals方法返回的是true,set不会接受这两个对象。

HashSet是set接口的典型实现,HashSet按hash算法来存储集合中的元素。因此具有很好的存储和查找性能。HashSet判断两个元素的标准是两个元素的equals方法比较相等,同时两个对象的hasCode( )方法返回值也相等。HashSet可以保存null元素。

List集合代表一个有序集合。集合中的每个元素都有其对应的顺序索引。Arraylist和vector是list接口的两个典型实现。他们之间的显着区别就是:vector是线性安全的,而arraylist不是。它们两个都是基于数组实现的list类。List还有一个基于链表实现的LinkedList类。当插入、删除元素的速度非常快。这个类比较特殊,功能也特别多,即实现了List接口,也实现了Dueue接口(双向队列)。可以当成双向队列使用,也可以当成栈使用。

Queue用于模拟队列的数据结构。LinkedList和ArrayDueue是其两个比较常用的实现类。

Map用于保存具有映射关系的数据。Map接口有如下几个常用的实现类:HashMap、HashTable、TreeMap。TreeMap是基于红黑树对TreeMap中所有key进行排序。HashMap和HashTable主要区别有两点:

1、Hashtable是线性安全的,因此性能差些。

2、HashMap可以使用null作为key或者value。

集合类还提供了一个工具类Collections。主要用于查找、替换、同步控制、设置不可变集合。

上面是对java集合类的一般概述,下面就set、list、map三者之间的关系进行剖析。

Set与Map的关系。Map集合中所有key集中起来,就组成了一个set集合。所以Map集合提供SetkeySet方法返回所有key组成的set集合。由此可见,Map集合中的所有key具有set集合的特征,只要Map所有的key集中起来,它就是一个Set集合,这就实现了Map到Set的转换。同时,如果把Map中的元素看成key-value的set集合,也可以实现从Set到Map之间的转换。HashSet和HashMap分别作为它们的实现类。两者之间也挺相似的。HashSet的实现就是封装了HashMap对象来存储元素。它们的本质是一样的。类似于HashSet和HashMap的关系,其实TreeMap和TreeSet本质也差不多,TreeSet底层也是依赖TreeMap实现。

Map与List的关系。把Map的key-value分开来看,从另一个角度看,就可以把Map与List统一起来。

Map集合是一个关联数组,key可以组成Set集合,Map中的value可以重复,所以这些value可以组成一个List集合。但是需要注意的是,实质Map的values方法并未返回一个List集合。而是返回一个不存储元素的Collection集合,换一种角度来看对List集合,它也包含了两组值,其中一组就是虚拟的int类型的索引,另一组就是list集合元素,从这个意思上看,List就相当于所有key都是int型的Map。

下面讲解几个相似类之间的差异。

ArrayList和LinkedList。ArrayList是一种顺序存储的线性表,其底层是采用数组实现的,而LinkedList是链式存储的线性表。其本质就是一个双向链表。对于随机存储比较频繁的元素操作应选用ArrayList,对于经常需要增加、删除元素应该选用LinkedList。但总的来说ArrayList的总体性能还是优于LinkedList。

HashSet与HashMap的性能选项。主要有两个方面:容量和负载因子(尺寸/容量)。较低负载因子会增加查询数据的性能,但是会降低hash表所占的内存开销。较高负载因子则反之,一般对数据的查询比较频繁,所以一般情况下初始容量应该大一点,但也不能太大,否则浪费内存空间。

  • 文章版权属于文章作者所有,转载请注明 https://wjfww.com/zh-cn/zongjie/gerenfanwen/wngvze.html
专题