如何才能成为一个好的程序员,一个好的程序员要具备什么素质?如何才能从程序员发展为一个项目经理?应该掌握什么知识

解决方案 »

  1.   

    程序员应该具备的基础知识和概念
    1. 计算机是有什么组成的,CPU是什么东西,其工作原理是什么。(记住理解最重要!)
    2. 机器语言和微指令集的概念。
    3. 程序的概念。
    4. 汇编语言是低级语言但不是机器语言。
    5. 高级语言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,Java等等) 
    6. 编译程序和解释程序的概念和其原理。
    7. HTML、XML等是标识性语言。
    8. Prolog是人工智能语言。 
    9. 操作系统OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,Linux,等等都是OS,还有一些实时OS,嵌入OS。)
    10. Windows编程说白了就是Windows API的调用。(很多程序员只是会编windows程序,用的是VB,我的建议是这些程序员顶多只是低级编码员,我称其是coder)
    11. VC++、VB、BC、BCB、Delphi、VFP等都只是编程的工具和环境,不是编程语言。
    12. 面向结构的设计概念。
    13. 面向对象的概念。
    14. 软件工程的概念和原理。
    15. 数据库的概念。(要熟悉一些著名的数据库系统和语言的名字,如Oracle,SQL,DB2,Sybase等)
    16. 了解网络概念。
    17. 了解多媒体概念。
    18. 熟悉和掌握数据结构和基本算法。
    一些经验和体会
    1. 真正的程序员用C++;
    2. 动手去编程序;
    3. 动脑去思考;
    4. 要有良好的编程风格;
    5. 读书,读好书,尽量读原版书!
    6. 有自己的学习计划;
    7. 总结自己的经验教训;(准备一个笔记本,记录错误和心得)
    8. 不要怕学新东西;
    9. 要有软件工程的思想;
    10. 善于发现问题,然后去寻找答案;
    11. 向高手请教;(要虚心直到你成为高手)
    12. 和同行交流;(不善于交流肯定不行)
    13. 懂得软件的实质,不要被千变万化的表象所迷惑;
    14. 真正要学习用的是编程语言和方法,不是什么库,什么类,什么工具;(学用那些什么库都比较简单,但光会这些库,我觉得还远远不够)
    15. 学习Windows编程主要是学习Windows OS和Win32 API;
    16. 有空了解一下嵌入式开发;
    17. 有空了解一下PDA软件开发;
    18. 了解一下.NET框架和C#语言,也许它是你新的衣食父母;
    19. 要有耐心,不要作浮躁的人;
    20. 对程序加注释,并保留你的老程序;
    21. 学到的东西越多,了解的越多,你就越接近专家;
    22. 有空去逛逛CSDN,那里有你很多知己;
    23. 要有信心成为一个优秀的程序员。
    教材推荐
      推荐的教材主要还是针对概念来的,最好选用名校的教学用书。
    1. 《计算机组成原理》(熟悉)
    2. 《数据结构》(掌握)
    3. 《操作系统》(了解->熟悉)
    4. 《The C Programming language》(掌握)
    5. 《编译原理》(了解原理)
    6. 《汇编语言》(了解)
    7. 《计算机网络》(了解)
    8. 《软件工程》(了解)
    9. 《关系数据库》(熟悉)
    10. 《The C++ Programming Language》(掌握)
    11. 《面向对象设计》(掌握;结合C++学习)