成为一名合格的程序员

转载 2006年05月30日 11:06:00

   虽然IT技术发展迅速,但很多技术都是有规律可循,一些基本的概念、原理和方法还很通用,可以举一反三。本人根据自己的体会和经验,向那些刚刚踏入IT行业的新程序员们或正在迷茫的程序员们推荐程序员必须掌握的七种武器,有了这七种武器,虽不敢说笑傲江湖,但将自己立于不败之地还是可以的。

  第一种武器:开发工具


至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是我重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而本人对SUN公司的“网络即计算机”的概念相当欣赏,并相信JAVA即其相关的技术集JAVA One会成为未来的主流开发工具之一。其次,如果能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,C++ Builder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。另外,需要掌握基本的脚本语言,如shell,perl等,至少能读懂这些脚本代码。


第二种武器:数据库


为什么数据库是如此重要?很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法。虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库操作方法。如果没有机会接触商业数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL, Postgres等。


第三种武器:操作系统


当前主流的操作系统是Windows,Linux/Unix,熟练地使用这些操作系统是必须的,但只有这些还远远不够。要想成为一个真正的编程高手,需要深入了解操作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等。Linux作为开发源码的操作系统,是一个很好的学习平台,Linux几乎具备了所有现代操作系统的特征。虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。只有对操作系统有一定的了解后,你会发现自己上了一个新的台阶。


第四种武器:网络协议TCP/IP


在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了软件运行的模式,从最早的客户/服务器结构,到今天的WEB Services,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,所以,深入掌握TCP/IP协议是非常必要的。至少,你需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。


第五种武器:DCOM/CORBA/XML/WEB Services


随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间件平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范。程序员需要做的不仅仅是利用商业的开发平台来开发软件,而是要理解这些技术的初衷,即为什么需要这项技术,如果你能理解了这一点,再回头看这些技术的具体实现,就如庖丁解牛,迎刃而解。XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布计算的基石之一。


第六种武器:软件工程与CMM


现代大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员,一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合,编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能,如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。一句话可以概括我的看法:“创意无限,流程保证”。


第七种武器:强烈的好奇心


什么才是一个程序员的终极武器呢,那就是强烈的好奇心和学习精神。没有比强烈的好奇心和学习精神更好的武器了,它是程序员们永攀高峰的源泉和动力所在。

源:http://news.csdn.net/n/20060122/85988.html

如何成为一名优秀的开发者?

原文链接:http://www.sitepoint.com/good-developer/
  • Aylee_Liu
  • Aylee_Liu
  • 2014年10月18日 19:09
  • 1063

如何成为一名优秀的程序员

无论做什么工作, 都希望能做到最好, 就像参与一款游戏, 每个人都希望能赢到最后. 工作自然也会有其”秘籍”, 让我们更快的实现目标. 有些工作五年的程序员仍然很平庸, 也有刚学一年就技术出众的天才....
  • u012515223
  • u012515223
  • 2016年05月16日 17:30
  • 2562

管理感悟:如何成为一名合格的管理者

大部分的企业都有高层、中层、基层管理者,似乎这是一个分阶层的团队,其实以我个人的性格来看是不太喜欢的,我有时怀念刚创业那两年,公司规模小,也没有分得太细,十来个人就是一起奋斗一起面对,直呼其名,相处融...
  • harrymeng
  • harrymeng
  • 2016年12月09日 09:05
  • 3279

如何成为一个优秀的程序员(宋劲杉)

标签: 程序员编程语言嵌入式行业前景建议 2013-05-30 18:30 1870人阅读 评论(0) 收藏 举报  分类: 职业规划&时间管理&思维方式(2)  ...
  • lin111000713
  • lin111000713
  • 2017年02月09日 09:36
  • 1031

如何才能成为一名优秀的架构师

对于工作多年的程序员而言,日后的职业发展无非是继续专精技术、转型管理和晋升架构师三种选择。那么程序员如何才能晋升为优秀的高薪架构师? 优秀架构师需要具备怎样的素质 ...
  • shuyun123456789
  • shuyun123456789
  • 2017年01月12日 19:31
  • 1091

如何成为一个优秀的研发人员

做一个产品,不可能一个人完成所有的东西,一个产品的开发到发布都是各个角色合作的。产品经理出交互,视觉来切图,开发者进行开发工作,测试做开发的测试,项目经理控制我们的整体进度和流程。 作为一个工程师,...
  • qq_28273051
  • qq_28273051
  • 2017年01月17日 11:16
  • 197

《你好哇,程序员》—教你如何成为一名牛X的程序员

关注安大哥应该是从《漫谈程序员系列》博客开始,他的博客语言幽默风趣,逻辑清晰,而且经常配以丰富的图文,非常直观和容易理解。 再后来了解到,安大哥刚好与我一样也是从事C++开发,就又多了一个关注的理由。...
  • anda0109
  • anda0109
  • 2016年05月03日 22:45
  • 2397

如何假装成为一名好程序员?

最近我对一位资深程序员就工作生活问题进行了深度采访,采访内容如下:Q:请问你工作多久了?5年了Q:你觉得,程序员这份工作对你有什么影响吗?有Q:那你的生活有什么改变吗?也有Q:说到地铁,听说你们南京的...
  • h8y0bDJVUkwE1LboZlE
  • h8y0bDJVUkwE1LboZlE
  • 2017年12月20日 00:00
  • 122

如何成为一名优秀的软件开发工程师

如何成为一名优秀的软件开发工程师     软件开发工程师是当今社会的热门职业,各大IT企业和非IT企业,都有不同程度的软件工程师的需求。特别是在信息化速度加快的今天,软件开发工程师更是成为了一个高薪...
  • u011155153
  • u011155153
  • 2016年05月20日 10:00
  • 1065

如何成为一名黑客(How To Become A Hacker)

英文原文来自http://www.catb.org/~esr/faqs/hacker-howto.html,
  • BlueCloudMatrix
  • BlueCloudMatrix
  • 2015年09月08日 09:57
  • 4462
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:成为一名合格的程序员
举报原因:
原因补充:

(最多只允许输入30个字)