做为一名程序员至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而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分开
现代大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员,一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合,编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能,如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。一句话可以概括我的看法:“创意无限,流程保证”。
拥有强烈的好奇心
什么才是一个程序员的终极武器呢,那就是强烈的好奇心和学习精神。没有比强烈的好奇心和学习精神更好的武器了,它是程序员们永攀高峰的源泉和动力所在。
分享到:
相关推荐
- **描述**:文章提到,学习数据库对于程序员来说是非常重要的。数据库管理是软件开发中的核心部分之一。 - **细节**: - 学习数据库可以帮助提升工作效率,例如通过使用Oracle或SQL Server等产品来提高数据处理...
开发经验:老程序员们通过实践积累的丰富经验,是新入行者无法从教科书中获取的。这些文章可能会分享如何有效解决问题,如何优化代码,如何编写可维护的代码,以及如何协作开发等实战经验。阅读这些经验分享,能让你...
综上所述,成为一名优秀的程序员不仅仅是技术上的积累,更重要的是综合素质的提升。这包括但不限于技术能力、学习能力、人际交往能力和解决问题的能力等多个方面。只有全面发展,才能在这个快速变化的行业中立于...
### 成为优秀程序员的10条修炼秘籍详解 #### 1. 不要拖延工作 在编程工作中,遇到问题如bug或乱码时,应当即刻解决,避免问题积累。拖延不仅会导致问题复杂化,还可能增加后续修复的难度。及时处理这些问题有助于...
标题《优秀程序员之路——C开发经验及技巧大汇总》指的是向程序员介绍和总结在C语言开发过程中积累的经验和技巧。C语言作为编程界经典的语言之一,对于初学者和资深程序员都有着重要的学习价值。描述部分罗列了文章...
这种能力的培养需要时间和实践经验,通常需要2到3年的项目研发经验才能积累足够的经验。 #### 6. 测试习惯 测试是确保软件质量的关键步骤之一。程序员应该具备自我测试的习惯,即在编写完代码后主动进行单元测试和...
从给定的信息来看,本文将围绕“程序员与编程”这一主题进行深入探讨,重点解析侯捷在其文章中提及的关键观点,包括急功近利的心态、扎实基础的重要性以及技术选择中的误区。 ### 急功近利的心态 侯捷指出,很多...
【标题】中的“一个老程序员的心里话”和【描述】中的“一位从业十多年的老程序员通过他的亲身经历为大家总结出来的一些经验”表明这篇文章是关于一个经验丰富的程序员分享他在IT行业长期工作所积累的见解和建议。...
根据提供的文件信息,本文将对“程序员必看文章”中的关键知识点进行详细的解读与扩展,旨在帮助编程爱好者和应届毕业生快速进入程序员的...希望这些内容能够帮助读者更好地理解并掌握成为优秀程序员所需的知识和技能。
《程序员的八重境界》这篇文章以幽默且深刻的笔触,描绘出了程序员职业生涯的不同阶段及其特点。文章不仅对程序员的各种层次进行了细致入化的划分,还鼓励每个从业者明确自己的目标与定位,追求属于自己的那份价值。...
首先,文章强调了对编程的热爱是成为优秀程序员的基础。喜欢编程意味着愿意投入时间和精力去学习和解决问题,这是积累和坚持的开始。无论年龄大小,只要有热情,都能在这个领域找到自己的位置。人不应该轻易放弃,...
这类人可以通过撰写技术文章分享自己的经验和心得,从而获得稿酬和其他形式的收入。随着个人影响力的扩大,他们可能会受到更多媒体的关注。 #### 职业发展阶段 无论是选择哪条路径,从初级程序员成长为高级程序员...
首先,"程序员的七种武器"通常指的是编程者必备的技能和素质,可能包括扎实的编程基础、良好的问题解决能力、持续学习的态度、团队协作精神、对新技术的敏感度、项目管理技巧以及优秀的沟通能力。这些都是在面试中...
本篇文章主要讲述了程序员入坑的指南,内容包括如何成为一个合格的程序员、编程和写文章的相似性、编程需要长期的积累和分布式的努力、入门指南、择业建议等。 首先,作者讲述了成为一个合格的程序员需要一个转换的...
文章标题“程序员深思人生”以及描述中的“你预见过自己5年的职位吗?”这一经典面试问题,引出了程序员对自身职业生涯的思考与规划。 #### 1. 职业生涯的不同阶段 - **不朽的程序员**:这是一种理想状态,指的是...
- **具体做法**:积极参与技术论坛讨论、撰写博客文章、发表研究论文等,这些都能够提升个人品牌知名度。 #### 五、执行:学以致用 **1. 实践应用** - 将理论知识转化为实际操作能力至关重要。 - **案例介绍**:...
本书由CSDN《程序员》杂志创始人蒋涛倾力推荐,作者Leo(张大志)凭借在CSDN平台上的数百篇深度文章积累的广泛读者基础,将自身丰富的行业经验和深刻洞察凝结成书,旨在帮助读者解决职业发展中的困惑,提供实用的...
- **技术文档和博客**:GitHub、Stack Overflow、Medium等平台上有很多优秀的英文技术文章,可以帮助程序员在学习新技术的同时提高英语水平。 - **在线课程**:Coursera、Udemy等网站提供丰富的编程和英语学习课程,...
首先,文章提到程序员分为十个层次,每个程序员都希望不断提升自己的技术水平。作者建议不要盲目购买书籍或追逐最新技术,而应重视基础知识的积累,因为它们具有长久的实用价值。通过回顾技术历史,可以更好地预见...
【程序员学习之路】这篇文章主要探讨了程序员这一职业的定义、发展历程以及成为一名合格程序员所需的基础知识和技能。在文章中,作者首先指出程序员不仅限于计算机专业背景,而是那些以编写程序为职业的人。早期,...