还是用C/C++编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而JAVA即其相关的技术集JAVAOne很可能会成为未来的主流开发工具之一。其次,能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,CBuilder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。另外,需要掌握基本的
为什么
数据库是如此重要?作为程序员,他们自然有自己的理由:很多
应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中
关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握
SQL的基本语法。虽然很多
数据库产品提供了可视化的
数据库管理工具,但SQL是基础,是通用的数据库操作方法。如果没有机会接触商业
数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL,Postgres等。
了解操作系统
当前主流的操作系统是
Windows,Linux/
Unix,熟练地使用这些操作系统是必须的,但只有这些还远远不够。要想成为一个真正的编程高手,需要深入了解操作系统,了解它的
内存管理机制、进程/
线程调度、信号、
内核对象、
系统调用、
协议栈实现等。
Linux作为开发源码的操作系统,是一个很好的学习平台,Linux几乎具备了所有
现代操作系统的特征。虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。懂得网络协议
TCP/IP。
在互联网如此普及的今天,如果您还没有对互联网的支撑协议
TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了
软件运行的模式,从最早的客户/服务器结构,到今天的WEBServices,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,深入掌握TCP/IP协议是非常必要的。至少,需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。
明白DCOM/CORBA/XML/WEBServices存在的意义
随着技术的发展,
软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间平台,DCOM是
微软COM(
组件对象模型)的扩展,而
CORBA是OMG支持的规范。XML/WebServices重要性不言而喻,
XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是
分布式计算的基石之一。
不要将软件工程与CMM分开
大型
软件系统的开发中,工程化的开发控制取代
个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员,一个优秀的程序员是将出色的编程能力和开发技巧同严格的
软件工程思想有机结合,编程只是软件
生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能,如市场
分析,可行性分析,需求分析,结构设计,详细设计,
软件测试等。
需求理解能力
程序员要能正确理解任务单中描述的需求。在这里要明确一点,程序员不仅仅要注意到
软件的功能需求,还应注意软件的性能需求,要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。
模块化思维能力
长按二维码向我转账
受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。
阅读
好看
已推荐到看一看
你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
取消
分享想法到看一看
确定
最多200字,当前共字
微信扫一扫
关注该公众号