`
csstome
  • 浏览: 1521698 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

程序员, 超越软件蓝领的七种武器

阅读更多

信息技术的发展时间虽然不长,但其爆炸式的发展速度使信息技术迅速覆盖社会和人类生活的各个角落。程序员们是这场信息化浪潮的见证者之一,更是其中的主要参与者,这是时代赋予每个程序员的机会和责任。

  信息技术的更新速度是惊人的,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封。本人在工作期间曾看见过很多程序员只要有闲暇时间就浏览一些没有太大作用的网页,在网上聊天,打游戏,浪费了大量的时间,十分不可取。而另外一种情况是,IT技术的日新月异使很多程序员眼花缭乱,什么都想学,却又不知从何学起,今天看看这个,明天学学那个,贪多不熟。

  虽然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

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

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

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

  其实学好一种就够用了。

<!--Here is the bottom-->
分享到:
评论

相关推荐

    程序员的七种武器,想当程序员的一定要看哦!

    一点小小的体会与程序员们分享 一点小小的体会与程序员们分享 一点小小的体会与程序员们分享 一点小小的体会与程序员们分享

    软件员的七大武器,成功的程序员

    以下是七个核心知识点,它们构成了软件员的七大武器: 1. **开发工具**:熟练掌握至少两到三种开发工具是程序员的基础。C/C++因其高效和灵活性成为系统级软件开发的首选,而JAVA则以其跨平台特性和与WEB的良好集成...

    程序员的七大武器---程序员的七大武器

    程序员的七大武器

    程序员必备的7种武器

    "程序员必备的7种武器"概括了程序员在工作中最常使用且至关重要的技能,下面将对这些武器进行深入解析。 1. **正则表达式(Regular Expressions)**:正则表达式是一种强大的文本处理工具,用于匹配、查找、替换或...

    程序员的7种武器 有了这七种武器,虽不敢说笑傲江湖,但将自己立于不败之地还是可以的

    ### 程序员的七种武器:立于不败之地的关键技能 在当今这个信息技术飞速发展的时代,作为一名程序员,要想在这个竞争激烈的环境中脱颖而出,就需要掌握一系列关键技能。本文根据给定的信息,将为您详细解析这些所谓...

    程序员软件测试专业简历模板

    程序员软件测试专业简历模板程序员软件测试专业简历模板程序员软件测试专业简历模板程序员软件测试专业简历模板程序员软件测试专业简历模板程序员软件测试专业简历模板程序员软件测试专业简历模板程序员软件测试专业...

    程序员简历模板-软件工程师

    程序员简历模板-软件工程师程序员简历模板-软件工程师程序员简历模板-软件工程师程序员简历模板-软件工程师程序员简历模板-软件工程师程序员简历模板-软件工程师程序员简历模板-软件工程师程序员简历模板-软件工程师...

    软件工程课程设计(管理系统)-程序员SUMER

    软件工程课程设计(管理系统)--程序员SUMER 软件工程课程设计(管理系统)--程序员SUMER 软件工程课程设计(管理系统)--程序员SUMER 软件工程课程设计(管理系统)--程序员SUMER 软件工程课程设计(管理系统)--程序员SUMER ...

    程序员必备

    程序员防颈椎,广播操,身体健康,写代码更有精神更。

    程序员高级程序员 程序设计辅助理解软件

    2. **高级程序员**:作为高级程序员,不仅需要精通至少一种编程语言,如C语言,还需要理解软件工程的整个生命周期,包括需求分析、系统设计、编码、测试和维护。此外,他们还需要具备良好的团队协作能力,解决复杂...

    程序员必备软件集合!代替windows 自带软件的超强替代品大集锦

    标题中的“程序员必备软件集合”指的是为程序员量身定制的一系列高效、实用的工具软件,这些软件能够替代Windows操作系统自带的一些基础应用,提供更加强大、专业的功能。这些替代品通常具有更高的性能、更多的定制...

    软件工程课程设计-学生管理系统-程序员SUMER

    软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---学生管理系统--程序员SUMER 软件工程课程设计---...

    C_C++程序员大全 代码+学习软件

    总之,“C_C++程序员大全 代码+学习软件”是一个全面的资源,旨在帮助学习者深入理解C/C++语言,通过实例学习和实用工具的使用,逐步成长为一名精通这两种语言的专业程序员。对于想要在IT领域,特别是系统级编程和...

    软件工程课程设计及实验报告与个人小结-程序员SUMER

    软件工程课程设计及实验报告与个人小结---程序员SUMER 软件工程课程设计及实验报告与个人小结---程序员SUMER 软件工程课程设计及实验报告与个人小结---程序员SUMER 软件工程课程设计及实验报告与个人小结---程序员...

    作一个真正合格程序员的七种素质

    ### 作一个真正合格程序员的七种素质 在IT行业中,成为一名合格的程序员不仅需要扎实的技术基础,还需要一系列软技能和个人素质。以下是成为一名真正合格程序员所必备的七种关键素质。 #### 1. 团队精神和协作能力...

    程序员测试软件程序员测试软件

    标题中的“程序员测试软件”指的是在软件开发过程中,程序员如何自我测试或互相测试代码以确保其质量和正确性。这是软件开发的重要环节,因为通过测试,可以发现并修复潜在的错误和漏洞,提高软件的稳定性和可靠性。...

    程序员的最佳翻译软件

    还在为没找到合适的翻译软件苦恼吗? 程序员的最佳翻译软件,精准,配备多国语言

    程序员资料整理软件2.3

    从网上下载了程序员资料整理软件2.3感觉不错,1、增加了保存功能。编辑区点右键-&gt;保存,快捷键:ctrl+s 2、增加了打开文件及文件夹的功能。这样可以把常用的工具分类放到一个文本文件中直接打开了,支持按钮、右键...

    软件程序员考试初级真题.7z

    《软件程序员考试初级真题》是一份集合了2009年至2018年间历年软件程序员考试初级阶段的真实试题的资源。这份压缩包文件,名为"软件程序员考试初级真题.7z",旨在为备考者提供一个全面了解考试趋势、熟悉题型和提升...

    软件工程思想 程序员软件工程思想

    《软件工程思想》是一本深入探讨软件开发与程序员之道的著作,作者凭借其丰富的软件开发经验,以独特的视角和创新的构思,呈现了一部既趣味盎然又发人深省的书籍。书中不仅涵盖了软件工程的基本原则和方法,还融入了...

Global site tag (gtag.js) - Google Analytics