intro

程序员在最初阶段要从流程、语法、调用三个层次要求自己。

1.流程

能够把一个最简单的程序编辑、编译、运行成功,强调的是掌握编程的环境和流程。

(1)计算机基础知识

1)操作系统

2)计算机、内存、硬盘

3)目录、文件

4)程序设计语言、程序、编辑、源程序、编译、可执行程序、运行

(2)编程环境

1)了解所要使用的计算机

2)操作系统安装

3)程序设计语言安装要求环境

4)程序设计语言安装盘

5)安装程序设计语言

(3)编程流程

2.语法

掌握程序中最基本的语法、运算、基本功能。

主要掌握:进入程序参数、退出程序命令、赋值语句、条件语句、循环语句、引用、字符串操作、算术运算、文件操作等。

主要掌握:窗口、标示控件、文本框控件、命令按钮控件、列表控件、下拉框控件、表格控件等。掌握对控件属性赋值、对属性的读取、增加事件、对事件的调用等。

3.调用

掌握程序中对数据库、库函数、动态链接库等外部环境的调用。

 

编程能力有两个方面的含义,一是编程语言,二是编程本身能力。编程技术的提高需要时间积累和项目积累。

1)新手不要急于求成,要把时间放长一点,先把基础知识学好,基础越扎实,今后编程水平就越有可能提高。看书至少要花三个月时间。主要选择计算机原理、程序设计原理以及所学语言相关(入门类)三类书籍。

2)对不懂的概念要注意收集,将其牢记在心。这个时候最好不要找人去解答,而是把所有的书籍反复看完3遍之后,再去找人解答。

3)有了一定的基础知识之后,就要自己想办法安装编程环境。

4)开发环境安装完成后,新手就可以编写显示“Hello World!”程序了。

5)接下来可以学习算术运算编程。计算器示例;日历显示示例。

6)完成算术运算的学习后,可以编写更复杂的完整的程序了。学生信息定理程序:接受一个学生信息(学号、姓名、班级、年龄)并把它保存在计算机中,同时提供增加、删除、修改、查询功能。

7)对自己以前的程序进行修改,培养不断提高自己编程水平的意识。

8)在这些过程中若遇到问题,先看帮助。帮助不行,最好直接问人。

9)在这些都完成之后,程序员可以有目的地针对自己将要开发的内容进行相应的技术学习和准备了。

10)编写程序的时间估计需要2~3个月。一般而言,一个新手学习一门语言需要半年左右的时间。

 

新手在面试时常见有以下几个问题:

1.简历灌水

很多新手认为,不写夸大一,可能连面试的机会都得不到。但是,到了面试,一切都会暴露的。在招聘程序员的时候,面试官中一定会有一个懂程序的高手(用人单位的高手),而这些人自信心很强,具有好斗的潜意识。你说强,他就要让你把强说出来,好让他表现自己。所发这个职业特点注定你不能太夸大自己。

2.恐惧心理

3.表现欲强

既要看到应聘者的能力,又要看到应聘者表现能力的方式。

4.准备不足

5.性格内向

面试的时候,要避免一问一答,要主动地在重点问题上谈谈自己的看法和想法,主动和面试官进行沟通。

6.逻辑不清。

程序员最重要特征之一就是逻辑性,凡事要讲逻辑、讲条理、有条理才能成为程序。

7.潜力不明

用人单位招收程序员一般有两种类型,一类是招来即用的,一类是培训后使用的。

有一点要特别说明,应聘者千万不要过度地表现自己的学习欲望,说一些“到单位之后,我会好好学习的”之类的话,认为用人单位是一个学校,只要当一个好学生就可以了。用人单位要的不是一个学生,不会提供一个免费培训基地。面是让你为它创造财富的。不如说“我到了单位后,将多做工作,为单位创造财富贡献自己微薄之力”之类的话。

面试官可以理解你现在编程技术达不到所要求的水平,但是不能容忍今后你达不到所要求的水平。关键是让面试官看到你的潜质。

总之,新手在面试时,要准备充分,要端正自己的心态,即不要过分地表现自己,也不要恐惧犹豫,说话要条理清楚,注意面试中的各个细节,尽可能地向面试官展示自己良好的职业素质,展示自己未来的发展潜力,这样面试官就可能对你有一个良好的印象,有助于获得这个就业机会。

面试只是应聘者素质的集中反映。素质的形成可以是在面试之前,也可以是在面试之后。只要我们注重培养和提高自己的素质,我们就可以在任何时候面对任何的面试。

 

学习新的语言

第一个要分析这个语言的类型自己是否已经掌握,如果已经掌握,那么学习的时间会很很短,一般在一个星期到半个月就行了;如果没有学过,则学习时间会很长,一般要2~3个月或者更长,而且非常痛苦。

对程序员而言,学习新的语言,第一,建议不买什么资料,买了资料也不要花时间一字一句地去看。主要的学习手段就是动手编程序,通过在编写范例程序的过程中学习!第二,一定要找到一个懂这种语言的人,如果能够找到人问的话,一定要找人去问。第三,程序员千万不要自己去“刻苦钻研”,因为,程序员有一定的语言基础,心中只要记住“流程”、“语法”、“调用”就可以了。

 

与新手不同的是:

1)要特别注意语言的语法差别。

2)要特别注重程序的调试方法。

3)要特别注重程序运行环境。

4)要特别注重程序中的各种调用。

 

高手情结

新手正常的心理现象,它反映了程序员对未知领域的向往,说明程序员还有远大的理想,还有激情,还有奋斗的目标。

 

加班

程序员加班发展趋势是:开始阶段是主动加班时间不断增加;第二阶段是单位强制性的被动加班时间不断增加,主动加班时间减少;第三阶段是被动加班时间逐步减少,主动加班时间逐步增加;第四阶段是自己和单位都不要求加班。

 

语言

一个程序员一般至少要精通二门语言。这两门语言一个应该是面向过程的语言,一个是面向对象的对言。至于了解和掌握多少其他的语言,那就要根据工作需要和个人职业规划来定了。一般3~5门也就足够了。这也就是说,一个程序员一般要掌握五六种程序设计语言,其中两门必须精通,其他3~4门只要求一般掌握,可以利用它们进行编程就行了。

1.精通一门到什么程度

通俗地说,如果你能当这个语言的老师(反映出对语言的理论和语言架构的掌握程度),又能熟练地用这门语言解决各种问题(反映出对语言的使用能力),那就可以说精通这门语言了。

2.其他3-4门要怎么才算掌握

只要能用这种语言开发一个项目,开发中没有太多问题,那就可以算掌握了。当然,开发的时候,断断续续,走一步、查一步、问一步,问题如同连环绊脚石,这样则不能算掌握了。

 

调试与编程

程序出错一般有:未定义、语法和运行出错这3个方面。

1.未定义

未定义往往是程序员忽略定义或定义后名称与定义不一致造成的。

1)“先定义,后使用”

2)程序员在对函数名、变量名、文件名、数据库名、表名、字段名定义的时候,不要信手拈来,一定要定下心来仔细斟酌,这个名字不但息要能懂能记得,别人一看也要能懂能记得。

 

入门调试

1)运行程序

2)设置断点、取消断点

3)运行到断点

4)单步跟踪(step into)

5)单步执行(step over)

6)显示变量、对象、源程序

7)退出调试

 

程序员的上升空间

1.技术上的反思和提高

2.走向软件设计师,一般这种转变需要花上到两年时间。

3.走向项目经理

4.走向管理者

5.走向软件营销

6.原地发展

7.跳槽走人