程序员个人工作总结1
来公司工作一年多了,作为技术部phper,做了一些项目,主要是基于ThinkPHP框架,和PHPCMS的二次开发,自己也研究了wordpress的源码,通过这些工作和钻研,学到了很多web开发方面的新知识,也有了自己的见解。以下是做过的项目总结,以及学到的东西,温故知新。
1.广告联盟系统
*本项目是跨年项目,去年末开始,今年初完成并上线,后期也有修改。
基于ThinkPHP框架开发,网页设计师和前端工程师负责设计和制作网页、js,前后台各一名PHP程序员,我负责数据库设计和后台开发。
项目需求大概是:成为会员之后,可以通过我们提供的代码投放多种形式的广告到网页或者客户端,为我们的产品做推广,每天自动定时读取统计数据,比如安装量,注册量等等,根据一套算法计算广告推广费用,支付给会员。
后台主要功能有:会员管理(会员审核,会员资料,捆绑网站、软件客户端等),广告管理(添加和删除广告,广告类型有弹窗、对联、软件等),结算管理(每天自动计算广告费,生成报表并存档记录,支付管理等),客服管理等。
主要用到的技术和学到的知识:
RBAC(Role-BasedAccessControl),基于角色的访问控制。这是ThinkPHP自带的,对管理员进行角色分组,不同角色具有不同的权限,可以对控制器的每个方法进行权限结点分配。有机会研究一下比RBAC更好的权限控制:Auth类认证。
分表和事务。由于每天产生的数据量很大,需要进行分表,ThinkPHP提供了分表的方法,我要做的主要就是数据库设计,如何合理的建表以及字段,在开发过程中也多次调整。由于涉及到“钱”方面的计算,所以计算费用的时候要非常谨慎,计算的过程要先后向四个表中写入数据,为了防止其中某一步出错而导致数据异常,这里采用了mysql事务机制。
ThinkPHP缓存。许多地方重复用到相同的数据,还有的广告类型可以设定不同的时间出现不同的广告,在一定的时间内只读取缓存就行了,使用ThinkPHP缓存可以提高程序效率。
2.下载站转换程序+改版+扩建
下载站之前是asp程序+mssql数据库,现在要转换成PHP程序+mysql数据库,用PHPCMS进行二次开发。
最麻烦的是转换数据库,要把之前mssql数据库的表和字段,一一对应转换到现在PHPCMS的mysql数据库。幸亏有navicat,很方便把myssql数据库导入到mysql,但是关键的还是要写大量sql语句并且结合PHP程序,按照PHPCMS表的设计,把数据导入。除此之外,新站的所有url要保证和旧站一模一样,由于两个不同语言的程序差别比较大,做新站的同时还要考虑旧站的一些东西,也是让人头疼的一件事情。
这些都搞定了,但是由于美工都忙于其他事情,新的界面没有出来,暂时用老的界面,于是把旧站的所有页面保存到本地,而且以前的页面很多不规范的地方。。
用PHPCMS把新站功能做好了,重新同步并导入线上数据库,经多次测试改bug后正式上线了。
紧接着,全新改版的界面出来了,新版在界面设计上和功能上都有很多不同,是一个全新的升级改版。于是,在原先的基础上,开发新的功能,用新的页面,一个崭新的下载站诞生了。然而,修改不断,不断调整界面和加入新功能,特别是后台加入了很多方便编辑的功能,可以说大几十处细节改进。
之后,网站扩建,由软件站,单机站,加上手机软件站,和资讯站,以及手机站,每个站都是一个单独的子站,每个站都有专门的专题模块,网站规模越来越大。之后进入了维护阶段。最终,一个庞大的站点出来了。
新站的界面和js由网页设计师和前端工程师完成。程序一开始都是一个人弄,后来和另一名phper一起完成开发。
建议以后的项目能有好的需求分析,而不是开发的过程中,不断提出需求的改动,这样很没效率而且增加开发的难度。
主要用到的技术和学到的知识:
不同数据库类型(mssql和mysql),以及不同表结构数据库之间的数据转换。熟练运用了各种sql语句,并且要结合新站程序的功能和数据库表设计。有一个地方开始转换很慢,后来把一个表的两个字段查询出来放到数组中,再结合sql查询,效率大增。
学到了PHPCMS二次开发的各个方面,以及自定义标签,多站点,独立模块开发等,研究了PHPCMS的源码,学到了很多web开发的技巧和新的思路。
3.九游游戏数据接口+游戏盒子
这是C++开发的游戏盒子客户端里面调用的一个网页栏目,这个栏目是通过读取UC九游游戏中心的数据,取出保存到本地数据库,定时增量同步。前端页面通过页面展现,这个项目集成到了小游戏网站后台中。
主要用到的技术和学到的知识:
学会阅读第三方提供的文档和数据字典,构造签名,读取数据,并且实现增量同步。
通过写PHP接口的方式,方便C++获取数据。在前端页面上也可以设置标记,以方便C++在客户端中进行操作。
4.单机站转换程序+改版
这个和软件站转换程序+改版过程差不多。也经过几大步骤:1.数据库转换2.改版3.需求改动4.改bug
此外还帮助一游改过东西。还有一个wordpress的站点间歇性折腾了之后没下文了。
结束语
以上就是今年工作的主要内容,一边折腾,一边思考学习,颇有收获。做单机站的转换程序+改版的时候,就比软件站转换程序+改版更得心顺手,很多同样的功能再次做的时候采用更好的方法,程序上的实现也更加简洁并且有效率。
除此之外自己还研究wordpress源码,它只是一个很流行的博客程序,也不是MVC架构,而是面向过程和面向对象结合的一个软件,但是它的代码很优雅,许多地方很高深。通过研究wordpress的代码学到很多写法和巧妙的思路,写代码思想很重要,我将进一步学习。
新的一年,除了加强以上这些web开发方面的工作和学习,我希望能够承担技术含量更多的任务,接触到更深层次的PHP在web开发领域的知识和技能。
程序员个人工作总结2
我是一名程序员,在过去的一年里,软件研发部团结协作,以及在公司这充满奋斗的环境下,我以严肃认真的工作态度和百折不饶的精神,努力的完成了公司的各项工作,在软件研发、团队协作和个人成长上也取得了一定的成绩。在公司一年的工作已经结束,特向公司总结过去一年的工作如下:
一、软件研发
根据公司的安排,项目的需要。在自身的努力、伍经理的帮组,团队的合作下,克服重重技术困难,增长了工作经验,收获丰盈:以前我在其他公司也做过一些开发,但是底层和架构与页面样式我都是没有涉及到的。通过这一年在本公司的的这些项目程序中的锻炼,我成长了,我学会了很多很多。
面向对象语言的收获。对于当前编程的主流思想是对象,任何事物都可以用对象来表示。以前理解这些话很费解都是从表面上理解,没有从深入的体会,通过这次xx项目的深入,不管是数据还是外部一些条件我们都可以抽象成对象,都可以用对象来表示,具体可以用语言中的类方等。
具备独立完成xx知识方面的能力。以前没有做过xx的东西,加上这次深入的做,这次涉及到的领域也非常广,常用的重要的都有涉及,并且还补充xx实际操作中空白的部分。通过这一年的开发,在xx方面我能胜任这方面的工作,能独立完成这方面的工作。xx方面存在一些不足。通过这次软件的开发,也发现自己的不足,如基础知识掌握不牢,缺乏编程整体思想。这些都是需要在工作中完善和改进的。
二、数据库开发
数据库是伴随着项目以来用的最多最平凡的技术。以前对数据库只是会一些简单常用的操作,经过这一年项目的实战,对数据库的操作增加了一些丰富的经验。为以后的工作和经验的积累都奠定了坚实的基础。同时在项目中还用到了xx数据库,这是我最大的收获。
能熟练的运用数据库技术进行开发。特别是对xx数据库的操作,经过这么长时间的积累,基本上能合理的设计和新建数据库,同时在数据结构上也加强了对数据库的理解。通过项目的实践现在能熟练使用和编写多种xx语句。还掌握了一些关于数据库优化xx语句优化的方法,能进行一些简单的优化。数据是一门比较先进的技术,并不是你会写一些xx语句,能建几个数据库你就是数据库工程师。要成为一个好的数据库管理员是要经过长时间的工作积累。针对自己的不足,在以后的工作和学习中多接触,多运用新的知识点。充实自己的经验和知识储备。
三、团队协作
上面的成功与收获,除了自身努力外,以及公司的支持。是这个团队铸造了我。我们这个团队也是因为有了我们这些拼搏协作的队员,使得它成为一个具有务实、拼搏、创新精神的团队。我与软件研发小组是一个整体,这里的团队总结也就是我在这个团队中的收获。公司下发的任务,下发的工作,件件都是用心去做的。我们这个团队中没有一个人在工作的时候做了工作以外的事情,都是实实在在的做跟工作相关对公司有益的事情。相信在伍经理的带领下现在是这样,以后同样也是这样。公司给的每一个任务不管它多难,如果工作没有完成我们会晚上加班,也要尽可能的完成当天的工作。如果工作实在忙,为了赶进度我们放弃周末休息时间也要尽可能的使项目提前。
现在我们开始项目的时候都会进行研讨,一般都会进行一个效率和逻辑的分析与讨论,保证程序正确的前提尽可能的提高程序的效率。我们小组内只要任何一个人出现技术或其它的问题,我们都会彼此都会尽可能的去帮助他。不会因为某一个人而拖住整个项目滞后。我们在项目中会及时沟通自己的收获,特别是一些针对性的技术问题。这样可以省了很多重复研究的时间,这是一笔很可观的时间。在交流中只要我会的,我懂的,我不会去吝啬。我会积极的去与你交流,我的团队名言“人强团则强,人弱团则削”。
通过公司这快一年的锻炼与学习我真的进步了很多,不管从技术上还是做事上,都不像以前那样了。我在公司学到的懂得的使我飞速成长。
程序员个人工作总结3
首先感谢贵大华圣提供一种舒适的工作环境,感谢各位领导给予我一个展现自我的机会,这半年以来在同事帮助、领导的指导下,自己的不断努力下,自我感觉自己成长了许多,积累了不少的经验,为自己迎接新的挑战又增添了不少的自信心,为自己将来的发展创造了有利的条件,同时也发现自己的不足和弱点。下面对我半年工作进行一下大致的总结参与了对标工作。极力配合项目经理完成对标的相关工作,在此项工作我参与文档分析,指标分解和相关文档的撰写,在此项工作我还参与了遵义市的调研工作,在此项调研工作中我认识到了作为程序员应该怎么进行调研和调研前的一些工作准备,通过相关文档认真学习,掌握了一定的初步编写文档能力,在此项工作中我最大的收获就是掌握一定的和客户交流,作为一个小组成员怎么配合经理完成应该完成的工作。但感觉自己不足之处就是长期面向技术专研与学习以至于不擅长交流和文档编写工作,感觉在调研工作很大程度思想完全不能脱离技术走向业务梳理工作。
另外在项目经理的指引下对jquery和css进行了深入的学习,终于弥补了我在开发中常遇的两大弱点。这也为我的开发中增添了不少色彩。参与基础数据对象管理系统建设。此项目我们小组采用流水式生产模式,我的项目经理根据组员的情况以及优势将项目分为3部分(系统分析及数据库建立,数据访问以及业务逻辑的处理、用户界面及硬件交付),由不同的项目成员完成,我在当中主要负责就是为系统的界面层提供数据访问接口和我业务逻辑处理,极力配合界面开发调用人员完成开发工作以及提供所需数据访问接口和业务处理工作,在此项工作我最大的收获就怎么样去配合完成一个项目,掌握了项目怎么在一个小组当中进行合理的职责划分,怎么根据小组实力进行项目阶段行划分,在此过程中我的技术也得到了很大的提升。尤其是对数据访问这块,我有利的掌握数据库访问过程中的链接池使用。参与燃气公司系统平台的建立工作。
在这个项目我主要的任务就是做一些开发前的技术储备,提前摸索开发过程预知的一些相关技术和一些系统架构思想,我侧重学习的方向就是寻求一种新的架构思想代替现在相对较落后技术架构,目前学习目标就是使用分布式应用开发进行系统搭建,想通过这种架构思想构建一个全新的系统架构模式以供以后所有系统的参照与效仿,也就是面向服务编程思想(sop)就此架构思想我学习了微软的wcf架构。
这也是微软提出相对较新的系统架构模式,当然在此过程中我了解到国外一个相对较新的架构理念,那就是面向资源(rest)系统架构设计模式,据微软官方介绍它是sop的下一代,将来所有的系统如果不是面向服务以及面向资源的系统架构思想将是一个淘汰的、落后的产品。我除了学习这项架构思想外,我还对silverlight进行了学习,这主要是它目前和flash,html5在某种程度有相当竞争的地位,并且它现在被it开发人员(尤其是。net开发人员)视为极品,它在将来的。net开发产品中有着相当大的竞争力度,同时这也是我们小组开发技术上的一个考虑。希望能够在这次开发中使用这些全新的技术,为公司创造一个全新的技术产品。