如何确定自己是否适合做程序员

如何确定自己是否适合做程序员,第1张

syuanlei1987

·努力成为无所不知的最佳答题者

专注于

一份工作是否适合你至少有三个标准:你擅长什么,你喜欢什么,什么对你最有价值(也能赚钱)。从程序员职业的角度来看,有很多标准来判断一个人是否适合做程序员。

看看你是否符合以下几个核心标准:

1 理解能力或自学能力

如果你在成长过程中一直认为没有老师的指导你就无法学习,那么你就不是做程序员的料。如果你只是为了测试而学习一些东西,然后再也不会去看它,那么你也不是程序员的材料。

在编程的过程中,遇到 *** 作系统、IDE、环境、语言等bug,你能不辞辛苦的去解决吗

2 逻辑能力

如果你想学习编程,你需要有一定的逻辑能力。那些缺乏逻辑能力的人无法快速找到逻辑漏洞并写出清晰的代码。没有耐心的伴侣会变得越来越烦人。逻辑也决定了程序员天花板的高度。

3抽象思维

这种能力大致决定了程序员的上限。如果你没有这种能力,你就不能抽象世界上的一切。如果你在学习代码的时候花了超过一天的时间来理解指针,那你就不是程序员的料。(同样,“不适合”意味着你不可能成为一名优秀的程序员,但你可以成为一名优秀的程序员。)

4 浓度

专注是兴趣的衍生,当你对某件事非常感兴趣时,你就会进步很快。例如,有些人喜欢玩“LOL”或“吃狗”,即使你连续玩几个小时,你仍然可以得到刷新,但也利用他们的业余时间看视频和看人行道。为什么因为你觉得它很有趣。如果编写代码很有趣,那么专注就不是问题。

5 想象力和记忆力

记忆并不意味着照相式记忆,它只是意味着你能记住有哪些类,有哪些函数,以及每个函数的一般过程是什么样的。然后,当你走路或乘坐地铁时,你可以运用你的想象力在脑海中重建代码。我听说人们有时可以在梦中编写代码,但我还没有开发出这种技能。当然,这些能力不是必需的。你需要锻炼。

6 沟通技巧

许多人认为程序员不需要能够沟通,只要他们能写好代码。事实上,唯一不需要沟通技巧的人是砖瓦工人。如果您想成为一名架构师,您至少需要能够清楚地解释您的计划,并更好地传达您的计划。当然,如果你已经是一个伟大的神,你不交流也没关系。桃李不言,下溪不言。你独自编写每个人的代码,你什么都不说,人们就会把你当上帝看待。

事实上,很少有人能做到以上几点。如果他们能做好其中的2-3件事,他们通常“适合”做程序,并在软件行业找到合适的工作。

问题一:现在所说的高级语言都有哪几种? 高级语言:由于汇编语言依赖于硬件体系,且助记符量大难记,于是人们又发明了更加易用的所谓高级语言。在这种语言下,其语法和结构更类似普通英文,且由于远离对硬件的直接 *** 作,使得一般人经过学习之后都可以编程。高级语言通常按其基本类型、代系、实现方式、应用范围等分类。 程序设计语言的类型: 1命令式语言。这种语言的语义基础是模拟“数据存储/数据 *** 作”的图灵机可计算模型,十分符合现代计算机体系结构的自然实现方式。其中产生 *** 作的主要途径是依赖语句或命令产生的副作用。现代流行的大多数语言都是这一类型,比如 Fortran、Pascal、Cobol、C、C++、Basic、Ada、Java、C# 等,各种脚本语言也被看作是此种类型。 2函数式语言。这种语言的语义基础是基于数学函数概念的值映射的λ算子可计算模型。这种语言非常适合于进行人工智能等工作的计算。典型的函数式语言如 Lisp、Haskell、ML、Scheme 等。 3逻辑式语言。这种语言的语义基础是基于一组已知规则的形式逻辑系统。这种语言主要用在专家系统的实现中。最著名的逻辑式语言是 Prolog。 4面向对象语言。现代语言中的大多数都提供面向对象的支持,但有些语言是直接建立在面向对象基本模型上的,语言的语法形式的语义就是基本对象 *** 作。主要的纯面向对象语言是 Smalltalk。 虽然各种语言属于不同的类型,但它们各自都不同程度地对其他类型的运算模式有所支持。 程序设计语言从机器语言到高级语言的抽象,带来的主要好处是: 1高级语言接近算法语言,易学、易掌握,一般工程技术人员只要几周时间的培训就可以胜任程序员的工作; 2高级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序可读性好,可维护性强,可靠性高; 3高级语言远离机器语言,与具体的计算机硬件关系不大,因而所写出来的程序可移植性好,重用率高; 4由于把繁杂琐碎的事务交给了编译程序去做,所以自动化程度高,开发周期短,且程序员得到解脱,可以集中时间和精力去从事对于他们来说更为重要的创造性劳动,以提高程序的质量。

问题二:电脑高级语言还有那些? 从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。经过努力,1954年,第一个完全脱离机器硬件的高级语言--FORTRAN问世了,40 多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、Delphi、JAVA等 电脑语言举例 (1)C语言: /This is a sample/ #include void main() { printf(hello); } (2)D语言: module hellod; import tangoioConsole; void main(char[][] args) { cout(hello)newline; } 最简单的C语言如下所示: main() { } 最简单的D语言如下所示: void main() { }

问题三:高级语言有哪些 程序设计语言的类型:

1命令式语言。这种语言的语义基础是模拟“数据存储/数据 *** 作”的图灵机可计算模型,十分符合现代计算机体系结构的自然实现方式。其中产生 *** 作的主要途径是依赖语句或命令产生的副作用。现代流行的大多数语言都是这一类型,比如 Fortran、Pascal、Cobol、C、C++、Basic、Ada、Java、C# 等,各种脚本语言也被看作是此种类型。

2函数式语言。这种语言的语义基础是基于数学函数概念的值映射的λ算子可计算模型。这种语言非常适合于进行人工智能等工作的计算。典型的函数式语言如 Lisp、Haskell、ML、Scheme 等。

3逻辑式语言。这种语言的语义基础是基于一组已知规则的形式逻辑系统。这种语言主要用在专家系统的实现中。最著名的逻辑式语言是 Prolog。

4面向对象语言。现代语言中的大多数都提供面向对象的支持,但有些语言是直接建立在面向对象基本模型上的,语言的语法形式的语义就是基本对象 *** 作。主要的纯面向对象语言是 Smalltalk。 虽然各种语言属于不同的类型,但它们各自都不同程度地对其他类型的运算模式有所支持。

百度百科上找的,希望对你有所帮助

问题四:常见的高级语言有哪些 C#、C/C++、JAVA、VB、Pascal、Python、P恭rl、Ruby。。。。。多了,不下几百种

问题五:常见的高级语言有哪几个? C++(VC,C++ Builder),Java,C#,VB,Pascal(Delphi,Free Pascal)

数值计算 F储rtran

数据库开发 VFP,PowerBuilder

网页开发 PHP,ASP

问题六:计算机中高级语言有那些? 机器语言

电子计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由“0”和“1”组成的指令序列交由计算机执行,这种语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。机器语言,是第一代计算机语言。

2 汇编语言

为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。

汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。

3 高级语言

从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。经过努力,1 9 5 4年,第一个完全脱离机器硬件的高级语言―F O RT R A N问世了,4 0多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有F O RT R A N、A L G O L、C O B O L、B A S I C、L I S P、S N O B O L、P L / 1、P a s c a l、C、P R O L O G、A d a、C + +、V C、V B、D e l p h i、J AVA 等。

高级语言的发展也经历了从早期语言到结构化程序设计语言,从面向过程到非过程化程序语言的过程。相应地,软件的开发也由最初的个体手工作坊式的封闭式生产,发展为产业化、流水线式的工业化生产。

6 0年代中后期,软件越来越多,规模越来越大,而软件的生产基本上是人自为战,缺乏科学规范的系统规划与测试、评估标准,其恶果是大批耗费巨资建立起来的软件系统,由于含有错误而无法使用,甚至带来巨大损失,软件给人的感觉是越来越不可靠,以致几乎没有不出错的软件。这一切,极大地震动了计算机界,史称“软件危机”。人们认识到:大型程序的编制不同于写小程序,它应该是一项新的技术,应该像处理工程一样处理软件研制的全过程。程序的设计应易于保证正确性,也便于验证正确性。1 9 6 9年,提出了结构化程序设计方法,1 9 7 0年,第一个结构化程序设计语言―P a s c 定 l语言出现,标志着结构化程序设计时期的开始。8 0年代初开始,在软件设计思想上,又产生了一次革命,其成果就是面向对象的程序设计。在此之前的高级语言,几乎都是面向过程的,程序的执行是流水线似的,在一个模块被执行完成前,人们不能干别的事,也无法动态地改变程序的执行方向。这和人们日常处理事物的方式是不一致的,对人而言是希望发生一件事就处理一件事,也就是说,不能面向过程>>

问题七:计算机高级语言是什么?有哪些? 20分 高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,如目前流行的VB、VC、FoxPro、Delphi等,这些语言的语法、命令格式都各不相同。

高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类:

解释类:执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序。

编译类:编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(* OBJ)才能执行,只有目标文件而没有源代码,修改很不方便。现在大多数的编程语言都是编译型的,例如Visual C++、Visual Foxpro、Delphi等。

问题八:高级语言和低级语言的区别是什么 C 是一种比较特殊的语言,它具备高级与低级语言的特性,可以直接对硬件进行 *** 作,又可以进行一些问题的编程,语句可以说是最简单易懂的了

汇编则不同,它直接作用与硬件,以mov为主要,把数据细化到cpu和内存的寄存器里,cs ss 等等都是里面的,但是一个语句在C语言里用一句printf就可以实现的东西用汇编要好几句。

basic就更高级,它需要专门的平台,比如dos,类似java 但是java只要有java虚拟机平台就可以运行了,所以兼容性好的很

C++和C差不多,但是C++是针对对象的编程,我们的 *** 作定统,游戏等,都是用C++编写的。

看看这个,你就明白了,希望对你有帮助!

一、为何要学编程?

每个人的动机不一样。大致有:

1、为了找个好工作;或为了有更好的机会和更好的发展。

2、看到别人超厉害,所以也想学。

3、实际工作中很多场合需要。

4、从小就立志做个程序员,做软件工程师。

5、振兴中国的软件事业。

。。。。。。

================================================

二、如何学编程?

1、多看好书。

差书误人子弟,不但浪费时间和精力,而且打击人的信心,差书使人很久都不会,让会让人怀疑自已的学习能力。

现在的书很多,但好书很少,特别是被大家公认很有价值的好书,更是少之又少。历经多年时间考验和市场风雨不残酷洗礼而仅存的巨著,更是极其稀少。中国历史上文学小说类书本多如牛毛,但仅存的巨著,也只不过<<红楼梦>>等四本名著而已,编程方面也是如此。

2、多动手。

这一点很重要。而且特别重要。“纸上得来终觉浅,绝知此事要躬行。”陆游的千古名句说的就是这个道理,并且同样适合于编程方面。

================================================

三、用什么语言最好?

这主要取决于应用领域,每种语言都有自已的长处和不足。

1、汇编语言和C语言在单片机及工控领域用较多。另外C语言也是一种通用语言,是学C++/c#的起点。

2、C++系统编程等多个方面,最常用的编译器是VC。

3、C#/java网络编程方面新兴的。

4、VB通用。

5、还有Delphi等。。。。。。

个人建议:从未编过程的,就从学vb开始。有基础的可直接学c++/VC。

===================================================

四、有什么好书?

几年前,台湾著名技术作家侯捷先生曾经写过一篇影响很大的书评文章,叫做《MFC四大天王》。文章的意思是说在MFC的浩瀚书海中,只要认真研读和学习其中四本,就可以“五岳归来不看山”。侯先生虽以MFC为例,但是这个道理却同样适合于MFC之外的很多具体技术领域,这不能不说是一个有趣的统计现象。

通常在某一个具体细分的技术领域,会自然而然地出现3-5本顶级著作,它们彼此互相配合,形成一个完整的体系。对于学习者来说,只需要认真研读这几本书,就足以升堂入室。我乐于将这种现称为“四书五经现象”。对于读者来说,如果能够找到该领域中的“四书五经”,则无论在时间上还是金钱上都是最经济的选择。好书几本,胜过烂书几捆,这个体会想必大家都有。在此,帮助大家遴选各个技术领域里的“四书五经”。

编程的书可谓汗牛充栋,其中经典也是不泛其数,但绝大多数的过来人,都一致认为,要想很快的入门并尽快的投入到编程实践中,只要其中的四到五本也就够了,即只看经典中的经典,圣经级的书就可以了。

所谓活到老学到老,程序员是个终身学习的职业,要不断的看书,直到放弃编程的那一天。所以,您要读的好书也绝非以下推荐的这些书哟,呵呵。

一句话,由于我们的时间、精力、金钱都是有限的,如何以最小的代价换得最大的收获。

================================================================

五、经典好书分类热销榜

1、java

java编程语言(第三版)---java四大名著----James Gosling(java之父)

java编程思想(第2版)----java四大名著----Bruce Eckel

java编程思想(第3版)----java四大名著----------------Bruce Eckel

java 2核心技术 卷I:基础知识(原书第7版)---java四大名著-----Cay Horstmann

java 2核心技术 卷II:高级特性(原书第7版)----java四大名著-----Cay Horstmann

Effective java中文版------java四大名著--------Joshua Bloch

精通Struts:基于MVC的java Web设计与开发---孙卫琴

精通Hibernate:java对象持久化技术详解---孙卫琴

Tomcat与java Web开发技术详解------------孙卫琴

java与模式------------------------------阎宏

2、c#

C#程序设计-------Charles Petzold“windows编程泰山北斗”---C#语言“倚天屠龙双剑”

C# Primer中文版--------Stanley BLippman---C#语言“倚天屠龙双剑”

NET框架程序设计(修订版)--------Jeffrey Richter“windows编程泰山北斗”---NET平台四大天王

C# Windows程序设计----------Charles Petzold“windows编程泰山北斗”------NET平台四大天王

NET程序设计技术内幕-------------Jeff Prosise---NET平台四大天王

NET本质论--第1卷:公共语言运行库(中文版)--------Chris Sells---NET平台四大天王

3、C++

C++程序设计语言(特别版)---c++八大金刚----Bjarne Stroustrup“C++之父”

C++ Primer (第3版)中文版----c++八大金刚---Stanley BLippman

C++ Primer (第4版)中文版----c++八大金刚---Stanley BLippman

C++标准程序库—自修教程与参考手册--c++八大金刚--Nicolai MJosuttis

C++语言的设计和演化-----c++八大金刚----Bjarne Stroustrup“C++之父”

深度探索C++对象模型---c++八大金刚----Stanley BLippman

Essential C++中文版---c++八大金刚---Stanley BLippman

Effective C++中文版 2nd Edition-----c++八大金刚------Scott Meyers

More Effective C++中文版----c++八大金刚------Scott Meyers

C++编程思想(第2版) 第1卷:标准C++导引--------Bruce Eckel

C++编程思想(第2版)第2卷:实用编程技术 --------Bruce Eckel

C++程序设计--------------------------谭浩强

C++ 程序设计教程(第2版)--------------钱能

C++ Primer Plus(第五版)中文版---Stephen Prata

广博如四库全书The c++ programming language、c++ Primer

深奥如山重水复Inside the c++ object model

程序库大全The c++ standard libray

工程经验之积累Effective c++、More Effective c++、Exceptional c++

c++八大金刚:

1、Essentital c++---lippman---C++之父,旁枝暂略,主攻核心,轻薄短小,初学者

2、The c++ programming language----C++之父,技术权威,用词深峻,思想深远,c++百科全书代表,圣经。

3、c++ Primer----lippman---纵横书市十数年,c++最佳教本,c++百科全书代表。

4、Inside the c++ object model-----lippman----揭示c++底层,非常好,非常难。

5、Effective c++-----通过50个编程实例,展示专家经验,行文有趣,深处浅出。

6、More Effective c++----通过35个编程实例,展示专家经验,行文有趣,深处浅出。

7、The c++ standard libray---c++标准库的百科全书。

8、设计模式:可复用面向对象软件的基础------good!

4、c

C程序设计语言(第2版·新版)---C语言“倚天屠龙双剑”---Brian WKernighan“C语言之父”

C Primer Plus中文版(第五版)--------C语言“倚天屠龙双剑”---Stephen Prata

C程序设计(第三版)---------------------------谭浩强

C语言大全(第四版)---------------------------HERBERT SCHILDT

C语言接口与实现:创建可重用软件的技术-------------DAVID RHANSON

C语言参考手册(原书第5版)--------------------------Samuel PHarbison

C程序设计教程---------------------------------HMDeitel/PJDeitel

C陷阱与缺陷-----------------------------------Andrew Koenig

5、VB

Visual Basic NET技术内幕-----VB编程三剑客-----------Francesco Balena“vb首席大师”

Windows程序设计-Visual BasicNET语言描述--VB编程三剑客-----Charles Petzold“windows编程泰山北斗”---

NET框架程序设计:Visual BasicNET语言描述--VB编程三剑客--Jeffrey Richter“windows编程泰山北斗”---

Visual Basic 6编程技术大全------------------------Francesco Balena“vb首席大师”

Visual BasicNET 从入门到精通-------------------------Petroutsos,E

高级VISUAL BASIC编程-----------------------------------MATTHEW CURLAND

6、Delphi

Inside VCL(深入核心——VCL架构剖析)----------李维

Delphi 7高效数据库程序设计--------------李维

面向对象开发实践之路(Delphi版)----------李维

7、VC

Windows 程序设计(第5版)-----Charles Petzold“windows编程泰山北斗”---

Windows核心编程----------Jeffrey Richter“windows编程泰山北斗”---

Windows高级编程指南---------Jeffrey Richter“windows编程泰山北斗”---

深入浅出MFC(第二版)-----“MFC四大天王”-------侯捷

MFC Windows程序设计(第2版)---MFC四大天王”---------Jeff Prosise

Visual C++ 技术内幕(第4版)--MFC四大天王”--------David Kruglinski

深入解析MFC-------------MFC四大天王”-----------George Shepherd

Visual C++NET 技术内幕(第6版)-MFC四大天王”------------David Kruglinski

8、vf

Visual Foxpro程序设计参考手册-------------------张洪举

专家门诊——Visual FoxPro开发答疑160问-------------------张洪举

Visual FoxPro 60/90解决方案与范例大全-------------------张洪举

Visual FoxPro软件开发模式与应用案例-------------------张洪举

9、黑客

应用密码学(协议算法与C源程序-----------Bruce Schneier

网络信息安全的真相-----------Bruce Schneier

黑客大曝光:网络安全机密与解决方案(第5版)--------STUART MCCLURE

软件加密技术内幕------------看雪学院

加密与解密——软件保护技术与完全解决方案------------看雪学院

加密与解密(第二版)--------段钢

10、汇编

Intel微处理器结构、编程与接口(第六版)---------Barry B Brey

8086、奔腾机汇编语言程序设计---------Barry B Brey

Windows环境下32位汇编语言程序设计(第2版)-----------罗云彬

IBM-PC汇编语言程序设计(第2版) 本书是国内优秀教材--------沈美明 温冬婵

IBM PC汇编语言程序设计(第五版) 这本书籍是国外优秀教材-------PETER ABEL著,沈美明 温冬蝉译

11、驱动开发

Windows WDM设备驱动程序开发指南------------------------------------ Chris Cant

Windows 2000/XP WDM设备驱动程序开发(第2版)--------------------------武安河

WINDOWS 2000/XP WDM设备驱动程序开发-------------------------------- 武安河

12、网络

计算机网络第四版中文版----网络编程三剑客--------------Andrew STanenbaum

TCP/IP详解3卷本--------------------Richard Stevens----网络编程三剑客

UNIX网络编程2卷本--------------------Richard Stevens----网络编程三剑客

用TCP/IP进行网际互联-----------Douglas E Comer

高级TCP/IP编程-------------------Jon C Snader

C++网络编程-----------------------Douglas Schmidt

UNIX环境高级编程(第2版)--------------------Richard Stevens

13、算法

计算机程序设计艺术-------DonaldEKnuth----------算法“倚天屠龙”双剑

算法导论-----------------Thomas H Cormen--------算法“倚天屠龙”双剑

离散数学及其应用----------Kenneth HRosen

具体数学—计算机科学基础--------DonaldEKnuth

14、图形编程

Windows 图形编程----------------FENG YUAN --图形编程界的Charles Petzold之书

15、数据结构

数据结构 C++语言描述》5800(Data Structures C++) William Ford,William Topp 刘卫东 沈官林

数据结构算法与应用-C++语言描述》4900Sartej Sahni 汪诗林 孙晓东等机械工业出版社

16、软件工程

设计模式--可复用面向对象软件的基础

重构—改善既有代码的设计

17、 *** 作系统

深入理解计算机系统(修订版)-------RANDAL EBRYANT

18、Unix

UNIX 网络编程 卷I 套接字联网API(英文版 第三版

UNIX 编程艺术

UNIX环境高级编程(英文影印第2版-----UNIX编程“圣经

UNIX环境高级编程(英文影印版)(第2版)

UNIX环境高级编程(第2版)

UNIX环境高级编程(第2版)---UNIX编程“圣经

UNIX网络编程 第1卷:套接口API(第3版)

UNIX网络编程卷2:进程间通信(第2版)(英文影印版)

UNIX 网络编程(第二版)第2卷:进程间通信

UNIX编程环境

UNIX 网络编程 卷I 套接字联网API(英文版 第三版

UNIX系统编程

UNIX环境高级编程

UNIX 网络编程 卷I 套接字联网API(英文版 第三版)

UNIX网络编程 第1卷:套接口API(第3版)

UNIX 网络编程(第二版)第2卷:进程间通信

UNIX网络编程卷2:进程间通信(第2版)(英文影印版)

UNIX 网络编程(第2版)第1卷:套接口API和X/Open 传输接口API

UNIX网络编程(卷1):连网的APLS:套接字与XTI(第二版)(英文影印版)

UNIX环境高级编程

Unix技术手册

19、Linux

Linux内核设计与实现

Linux内核完全注释

LINUX内核分析及编程

GNU/Linux 编程指南(第二版)

Linux设备驱动程序(第三版)

嵌入式设计及Linux驱动开发指南——基于ARM 9处理器

Linux设备驱动程序 第三版(英文影印版)

Linux内核设计与实现(第2版)

Linux内核设计与实现(英文影印版)(第2版)

linux技术手册

20、游戏编程

Windows游戏编程大师技巧(第二版

游戏之旅--我的编程感悟

OpenGL超级宝典:第三版

OpenGL编程指南(第四版)

java 游戏高级编程

J2ME手机游戏编程入门

游戏之旅——我的编程感悟

游戏开发中的人工智能(英文影印版)

3D游戏:卷2 动画与高级实时渲染技术

面向对象的游戏开发

java 游戏高级编程

3D游戏编程大师技巧

游戏编程精粹

面向对象的游戏开发

3D游戏 卷1:实时渲染与软件技术

3D游戏:卷2 动画与高级实时渲染技…

J2ME手机游戏编程入门

Direct3D游戏编程入门教程(第二版…

21、移动开发

Windows Mobile手机应用开发

SYMBIAN OS C++手机应用开发

Windows Mobile手机应用开发--傅曦 齐宇 徐骏

SYMBIAN OS C++手机应用开发 (第2卷)------------------RICHARD HARRISON著,周良忠 王伯欣译

SYMBIAN OS C++手机应用开发---------------RICHARD HARRISON著,周良忠译

Windows CEnet内核定制及应用程序开发---------周毓林 宁杨 陆贵强 付林林

嵌入式系统Windows CE 开发技巧与实例--傅曦

Palm OS编程实践---绝版

22、单片机

单片机轻松入门----------------------------------周坚(平凡老师)

单片机典型模块设计实例导航-----------------------求是科技

例说8051----------------------------------------张义和 陈敌北

KEIL CX51 V70单片机高级语言编程与ΜVISION2应用实践-----徐爱钧

单片机应用程序设计技术(修订版)--------------------周航慈

8051单片机实践与应用-------------------------------吴金戎

MCS-51系列单片机实用接口技术---------------------李华

23、串并口通讯

Visual C++/Turbo C串口通信编程实践------------------龚建伟

VISUAL BASIC与RS-232串行通信控制(最新版)----------范逸之

24、电子

无线电识图与电路故障分析轻松入门(第二版) -------------------胡斌

无线电元器件检测与修理技术轻松入门(第二版) -------------------胡斌

图表细说电子技术识图-------------------胡斌

图表细说电子元器件-------------------胡斌

图表细说元器件及实用电路-------------------胡斌

================================================================

六、怎样成为一名程序员

通过以下4个阶段的训练, 没有任何编程基础人就可以成为一名普通的程序员。

第一阶段:掌握一种编程语言

学习内容:学习任意一种主流的编程语言。例如C++语言。

学习目标:熟练掌握一种语言的语法和基本的编程技巧。

学习时间:3个月左右

注意事项:编程语言和编程工具是两回事情,编程语言是指C++、Basic、Object Pascal等程序设计语言,它们是像汉语、英语一样的抽象的语法规则,编程工具是指Visual C++ 60、Visual Basic 60、Delphi 70等包括了源代码编辑器、程序编译器在内的集成化、可视化的软件开发工具。C++源程序可以在Visual C++ 60里编写,也可以在记事本里编写,而同一个C++源程序可以用Visual C++ 60编译、执行,也可以用C++ Builder 50 编译、执行,所以: C++ 不等于 Visual C++ 60

第二阶段:掌握一种编程工具

学习内容:学习任意一种主流的编程工具。注意编程工具要和第一阶段学习的编程语言一致,例如你学习的编程语言是C++,那么编程工具要选Visual C++ 60或者C++ Builder 50。

学习目标:熟练掌握这种编程工具基本用法,例如:菜单、组件、程序跟踪调试、编写Windows程序等。

学习时间:3个月左右

注意事项:这个阶段侧重编程工具的使用,同时进一步熟习编程语言,最后达到能熟练编写各种基本的Windows程序。

第三阶段:掌握“算法与数据结构”这门课程

学习内容:算法与数据结构,推荐许卓群的《数据结构》,高等教育出版社出版。

学习目标:熟练掌握各种常用的算法与数据结构

学习时间:4个月左右

注意事项:这是一门不可或缺的软件开发课程,曾经有一本经典计算机专业书籍叫做《数据结构+算法=程序》,这说明了数据结构和算法的重要性。它能帮我们建立良好的程序分析与设计能力。

第四阶段:实现一个模拟的小型软件项目

学习内容:软件项目的开发过程

学习目标:掌握软件项目的基本开发过程和方法

学习时间:4个月左右

注意事项:自己完成一个模拟的小型软件项目,强烈推荐做一个MIS(管理信息系统)软件,参考用书推荐“中小型信息管理系统开发实例系列丛书”,人民邮电出版社,它的例子详实有效,以它为基础再加以扩展,就可以做出实用的MIS软件来。此丛书包括多种开发工具,大家可以选择适合自己的:《VISUAL FOXPRO60 数据库系统开发实例导航》 《java数据库系统开发实例导航》 《VISUAL BASIC数据库系统开发实例导航》《VISUAL C++60数据库系统开发实例导航》 《ASPNET数据库管理系统开发实例导航》 《DELPHI数据库系统开发实例导航》《POWERBUILDER 80数据库系统开发实例导航》。

最后将完成的模拟软件刻成光盘,作为自己的作品去面试,以此踏上自己光辉的职业程序员之路!

信息技术的发展时间虽然不长,但其爆炸式的发展速度使信息技术迅速覆盖社会和人类生活的各个角落

程序员们是这场信息化浪潮的见证者之一,更是其中的主要参与者,这是时代赋予每个程序员的机会和责任

信息技术的更新速度是惊人的,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封

本人在工作期间曾看见过很多程序员只要有闲暇时间就浏览一些没有太大作用的网页,在网上聊天,打游戏,浪费了大量的时间,十分不可取

而另外一种情况是,IT技术的日新月异使很多程序员眼花缭乱,什么都想学,却又不知从何学起,今天看看这个,明天学学那个,贪多不熟

虽然IT技术发展迅速,但很多技术都是有规律可循,一些基本的概念、原理和方法还很通用,可以举一反三

本人根据自己的体会和经验,向那些刚刚踏入IT行业的新程序员们或正在迷茫的程序员们推荐程序员必须掌握的七种武器,有了这七种武器,虽不敢说笑傲江湖,但将自己立于不败之地还是可以的

第一种武器:开发工具至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C和JAVA是我重点推荐的开发工具,C/C以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C编写

而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而本人对SUN公司的“网络即计算机”的概念相当欣赏,并相信JAVA即其相关的技术集JAVAOne会成为未来的主流开发工具之一

其次,如果能掌握一种简便的可视化开发工具,如VB,,Delphi,CBuilder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念

另外,需要掌握基本的脚本语言,如shell,perl等,至少能读懂这些脚本代码

第二种武器:数据库为什么数据库是如此重要?很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法

虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库 *** 作方法

如果没有机会接触商业数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL,Postgres等

第三种武器: *** 作系统当前主流的 *** 作系统是Windows,Linux/Unix,熟练地使用这些 *** 作系统是必须的,但只有这些还远远不够

要想成为一个真正的编程高手,需要深入了解 *** 作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等

Linux作为开发源码的 *** 作系统,是一个很好的学习平台,Linux几乎具备了所有现代 *** 作系统的特征

虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料

只有对 *** 作系统有一定的了解后,你会发现自己上了一个新的台阶

第四种武器:网络协议TCP/IP在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了软件运行的模式,从最早的客户/服务器结构,到今天的WEBServices,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,所以,深入掌握TCP/IP协议是非常必要的

至少,你需要了解ISO七层协议模型,IP/UDP/TCP/>

第五种武器:DCOM/CORBA/XML/WEBServices随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间件平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范

程序员需要做的不仅仅是利用商业的开发平台来开发软件,而是要理解这些技术的初衷,即为什么需要这项技术,如果你能理解了这一点,再回头看这些技术的具体实现,就如庖丁解牛,迎刃而解

XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布计算的基石之一

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

一句话可以概括我的看法:“创意无限,流程保证”

确实对于程序员来说35岁是一个坎,过了35岁大部分程序员都只能转行,主要的原因是技术发展过快,体力跟不上等等。

一、在计算机行业,相信每一位从业者都会听过一句话,这句话就是程序员一旦超过35岁,那么就有可能要转行,他们说这句话的时候非常确定,在他们看来程序员一旦到了35岁或者是40岁那么就必须要去做管理或者做其他服务,甚至还有的人选择自己创业,总之就是不能继续再从事程序员这个职业了,所以说大家都认为程序员吃的是青春饭,那么为什么程序员超过35岁以后就要转行,咱们一起来看一下。

二、第一点编程程序发展速度极快,这一点是非常重要的,在现在的社会尤其是计算机行业新技术层出不穷,越来越多的语言,越来越多的框架都会进行不断的更新,而这些程序员随着年龄不断的增长,绝大部分学习能力都是在退步的,他们往往跟不上行业进化的脚步,而且30岁左右的程序员往往都已经成家立业,在家庭方面就会占用他们许多的时间,所以他们能够花在学习新技术上面的时间越来越少。

三、第二点工作产出越来越少,这句话有些人不理解,其实换的通俗一点就是加班时间,程序员想必会经常加班,而且岁数大的程序员根本无法和刚毕业的年轻小伙子比,他们的精力非常旺盛而且没有家庭需要照顾,如果公司有需要可以随时加班甚至可以通宵,吃喝拉撒全部都在公司也不是太大的问题,相对来说薪酬比老老程序员低得多,所以很多人都说程序员是没有未来的,这个行业也没有任何的安全感可言。

以上就是关于如何确定自己是否适合做程序员全部的内容,包括:如何确定自己是否适合做程序员、高级语言有哪些、怎样成为计算机高手等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9292131.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存