我大约在2004年接触编程学习,在2005年拥有自己的一台电脑,开始进行一点编码和开发工作,到今年差不多有十年。期间从事的实际的项目开发不多,内心对这个行业并不认同,算是一个非常不合格的程序员。今年开始我打算认认真真地在这一行业干几年,虽然不知道以后会怎样发展,但至少要对得起时间对得起工资。现在我把学习编程的经历做一个回顾,以后会沿着这个路标走下去,逐渐完善自己的知识体系(每隔一段时间补充一下)。
在学校期间学校开了C、C++、Java的课程,与之相关的理论基础课,离散数学算一个,但是没有学数据结构,导致我对稍微大一点的系统把握不好。在学校参与了一些网站开发的项目,多半是一两个人配合完成的简单静态、动态网站,开始接触Html、javascript、CSS、ASP、JSP、Access数据库、MSSQL数据库,对着图书馆借来的书上的例子一个个模仿着实现,基本上都能完成功能,不存在多少自己的设计思想在里面。稍微大型一点的项目包括一个实验室预约系统、一个生产制造管理系统、一个在线打印管理系统,一个论文管理系统,采用的主要是ASP、.NET(C#)、JSP,在开发的过程中,发现对逻辑复杂一点的网站系统不能直接照搬书上的例子,这时候才有了一点设计的思想。再后来负责一些学校网站的维护,接触了一些开元CMS系统,例如Manbo、Joomla,学习了一点PHP。学校阶段主要从事BS管理系统的开发,积累了一点经验。
1、C、C++、Java、C#
2、ASP、PHP、JSP、.NET
3、javascript、CSS、Html
4、Access、MSSQL、MySQL
5、Mambo、Joomla
6、PhotoShop
----------------------------------------------------------
第二个阶段,我进入公司,开始是做服务器单板维护与开发。后来从事一点存储方面的开发,开始对Linux有一定的接触,熟悉了写shell脚本,Makefile文件,简单的Linux、Windows驱动开发,这段时间虽然看起来挺累,但是真正还要学习掌握的东西都没有深入,现在想来很奇怪,那些时间都到哪去了?
1、Linux环境C编程、Makefile、Shell
2、Linux驱动模型、Linux内核、Windows驱动模型
3、FC协议、NFS协议、PCI协议、SCSI协议
----------------------------------------------------------
第三个阶段,进入第三家公司,从事电信业务软件的开发工作,用的主要是C++和Java,这时候感觉写程序从数据库读写几条数据什么的没什么意思,希望能够向更高的一个层析进步,主动看一些书,接触了SSH(Struts2 + Spring + hibernate)以及设计模式,自己应用框架做一点开发尝试,现在这个阶段刚刚开始。以后的目标会是Java、设计模式,学会思考
1、C++、Java
2、SSH框架、Ajax、Jquery
3、设计模式
4、SQLite轻量级数据库
5、Python学习中