Maison >développement back-end >tutoriel php >程序员之路【上】
这些在IT业内被无数人津津乐道的名字。在这里,笔者从一个职业程序员的角度,想和大家谈谈自己的感受。
为什么要做一个程序员
提到这个问题似乎会让人觉得太简单、太幼稚。看看现在程序员舒适的工作环境、丰厚的薪水、过着“快乐”的白领生活,一切仿佛都不言自明。其实这是只看到了程序员的一面。我们的另一面则不为大众关注:没日没夜的工作,通宵加班是家常便饭;整天和键盘打交道,把自己的这些枯燥的生活又有多少人能切身体会?没有对软件事业本身的执著、对源代码近乎朝圣般的痴迷,这一切都是普通人不能忍受的。但是当你的程序完全通过了测试,成为一个合格的产品。这个时候的喜悦,又是如此?
有规矩,成方圆
程序开发是一件灵活性很强的工作。例如:变量I增加1,在C语言里面可以有:I++、++I、I+=1、I=I+1等多种写法。但是,这并不说明编程就可以随心所欲,天马行空。良好的编程习惯可以提高工作效率,减少不必要的失误。尤其是对初学者来说更是要注意的是:
第一点:编程的时候,首先要建立好的数据结构。编程序的时候,如果在开始数据结构设计错误,那么在后来你不得不花大代价来修改程序。笔者自己就曾有过这样的惨痛教训:一个程序写了2500多行,突然发现基本数据结构不合理,结果全部推翻重写。“磨刀不误砍柴工”
第二点:代码尽可能重用与模块化。无论是面向过程还是面向对象,代码重用都是基本原则之一。例如:如果要画一个青苹果和一个红苹果,就写一个函数来画苹果,把颜色作为参数传进去。这样只要调用同一个函数传递不同参数就可以画出不同颜色的苹果。这样做的好处一是程序?
第三点:良好的编写风格。一个程序,不可能是绝对完美,以后永不用修改的。既然要修改,就必然要重读和理解原来的代码。而良好的编程风格,可以使人更方便和迅速理解程序的结 构,从而可以最大限度地提高修改的效率。在这里,笔者举出一些比较好编程的风格要求:1.统一Count明显比叫iii更容易被理解其真实的逻辑含义和数据类型。所以变量和函数名多起几个字母,让它有意义一点,将来理解也比较方便。2.代码的逐层缩进格式。这几乎已经成为一种标准,这种格式使得代码之间的层次关系非常明显,对于程序的逻辑理?代码位置的有条理性。把相关功能的代码集中起来,放在一起,这样在以后阅读代码时候,可以尽量避免在不同文件模块之间频繁切换。由于要考不利于理解。如果循环的确太多、代码太长,就应该考虑重新再划分出更细的子函数。好的编程风格当然不止这些,这也需要在学习过程中慢慢体会。
第四点:注重程序测试,注意异常处理。这往往是业余编程爱好者和职业程序员的一个明显的差别。业余编程爱好者往往只注重程序可以正常运行,而职业程序员除此之外还必须关注程序在异常情况下也可正常运行,至少可以正常终止。而这是建立在对程序充份理解和测试基础上的?
千里之行始于足下。做程序员有更多的曲折和困难。但是只要真心热爱软件开发,愿意为之而付出,最后将使你体会到个中乐趣。来吧,还犹豫什么,踏上这条程序员之路,昂首向前走吧!
学编程是先学什么?
对于广大编程初学者来说,存在着这样普遍的认识:学习程序设计选择编程语言
很重要,开口闭口就是VisualBasic、Visual C++、Delphi、Power Builder等一些现在比较流行的开发工具。经常看见有初学者问:我学C/C++,究竟是学VisualC++好,还是学Borland C++ Builder好呢?或者就是要求在Visual Basic和Delphi之间作出选择。学习程序设计和学习程序设计语言究竟是怎么一个关系?初学者究竟应该如何取舍呢?就此我们打个简单的比方:学习程序设计就好比学习射击,而程序设计语言就对应射击中的*、手枪、步枪等各种枪械。学习射击必须要选择一种枪械,不可能没有枪还能学好射击的,也不可能同时学会使用所有的枪械。但是,如果掌握一种枪械的射击,再学别的也就触类旁通了。因为在熟悉一种枪械的同时,也学习了射击技术本身。再学其他的,自然事半功倍。学习程序设计也是一样,必然要从学习一门程序设计语言开始入手。同时在学习的过程中?
建议:学习程序设计不必苛求一定要从某一种语言入手,可以在Visual Basic、Delphi、Borland C++ Builder或者DOS下的Pascal、Turbo C(或Borland C)中间选择自己比较容易接受的一种进行学习。从中主要学习的是编程本身的思想,学习的是用程序设计的眼光来看待问题。或许,学习的效果不能马上看到,但是可以学到扎实的基本功,而这对于将来的进一步发展是有很大好处的。这些基本功包括:
免费领取LAMP兄弟连原创php教程光盘/《细说PHP》精要版,详情咨询官网客服:http://www.lampbrother.net
PHPCMS二次开发 http://yun.itxdl.cn/online/phpcms/index.php?u=5
微信开发 http://yun.itxdl.cn/online/weixin/index.php?u=5
移动互联网服务器端开发 http://yun.itxdl.cn/online/server/index.php?u=5
Javascript课程 http://yun.itxdl.cn/online/js/index.php?u=5
CTO训练营 http://yun.itxdl.cn/online/cto/index.php?u=5
|