本文目录一览:
- 1、网络工程
- 2、我有必要学汇编语言吗
- 3、常用的计算机编程语言有那些
- 4、编程能自学吗?
网络工程
我就是网络工程专业的,我可以很明确的,负责任的告诉你,在高中的分法是理科的,按大学的分法是工科的。
网络安全是网络里相当重要的一块,它是属于这个金字塔的顶层的,你没有底层知识根本就搞不定的,计算机主要分软件和硬件两个大方向,网络是新兴起的算是第三个大方向(虽然有些人不这么认为),这个网上有详细的介绍,我三言两语也说不清楚,你还是自己看看吧。
网络安全是大三才会学的,得有前面两年的基础做铺垫才行了,要不那些协议你根本就不知道,报文也看不懂你就什么都不知道,看着做个黑客很简单,特别是有很多网站手把手交你攻击,但只要人家技术做一小点改变,不是高手基本上全部就不知道怎么回事了,你得需要相当的耐心去研究那些协议和报文,而且自己还得多看RFC文档,这可是全英文的。
楼上的那个WEIXIXI说的有点片面,在网络里分两个大的方向,一个是工程,就是新做网络或者优化网络,另一个是开发。开发肯定需要编程,工程基本就不需要了,但你要是想做网安方面你就必须得会编程,有很多你想实现的东西是没有现成的,你要想用就必须得自己编。
我有必要学汇编语言吗
以下是我真实的感受,参考一下吧。
我喜欢编程,但没有想过要成为程序员。做为一种爱好就行了,一旦它变成你的职业了,它就不像你想像中
那样令你着迷了。
但我觉得要成为一个真正的程序员,你就想想好你要学习终生!!否则你永远不会是一个合格的程序员。因
为当今的电脑技术发展那么快,从16位3.2系统到16和32位兼并的win98到32位的XP等,以至以后出现的64到
128位系统,每个变化给程序员带来的不是一个单纯的版本的变革,而是一种编程理念的完全变革,如果你
没有足够的精力和热情,你将在不断更新的系统和硬件背景下变得力不从心。当然这不是在劝你放弃,是让
你知道,学编程容易,做程序员难。
就现在来说,已经有够多的程序语言给你选择,C, VB, Delphi, Perl, JAVA, 易语言等等,你是学其
中一门,还是多门,还是全部都要学?当然还有你说的汇编。只会其中一两门是不够的,而是多种语言都能
运用自如,扬长避短,来实现编程目的。你打算用多久时间来学习C,学习汇编,学习Delphi,学习?这不
,你不了解操作系统,不了解数据库,怎么编程?那你又花多少时间去学习它们?你要学的东西太多了,而
不是汇编,或某种语言那么简单。而且你要跟得上时代的步伐哦,当你研究透XP的时候,VISTA已经当行其道,当你研究透VISTA的时候,微软可能破产了,被REDHAT替代。当你研究透32位编程的时候,已经在用4核CPU了,那你之前的程序可能不运行了,又不得不重新编辑代码。
以上只是一些非常小的问题而已。还其它问题。想问你当程序员的基本素质是什么?要知道,做程序员,也许你一辈子都是给别人写程序,当他变成你的职业的时候,就不是说你想编写什么就编写什么了。而是看上级的需要,看市场的需要。因为那不是闹着玩的。你能一个人担当起一个软件项目的所有内容吗?所以,你更需要的是,团队的合作精神。懂得与同等沟通,而不是一味地埋头苦干。
……
……
总之,要想成为一个合格的程序员,你需要学习的远远不是汇编或某一个语言那么简单,看看前人给你的总结吧。
_____________________________
程序员
程序员(英文Programmer)是从事程序开发、维护的专业人员。一般我们将程序员分为程序设计人员和程序编码员,但两者的界限并不非常清楚,特别是在中国。
作一个真正合格的程序员,应该具有的素质。
1:团队精神和协作能力
团队精神和协作能力是作为一个程序员应具备的最基本的素质。软件工程已经提了将近三十年了,当今的软件开发已经不是编程了,而是工程。独行侠可以写一些程序也能赚钱发财,但是进入研发团队,从事商业化和产品化的开发任务,就必须具备这种素质。可以毫不夸张的说这种素质是一个程序员乃至一个团队的安身立命之本。
2:文档习惯
文档是一个软件系统的生命力。一个公司的产品再好、技术含量再高,如果没有缺乏文档,知识就没有继承,公司还是一个来料加工的软件作坊。作为代码程序员,必须将30%的工作时间写用于技术文档。没有文档的程序员势必会被淘汰。
3:规范化的代码编写习惯
知名软件公司的代码的变量命名、注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。 一些所谓的高手甚至叫嚣高手写的代码一般人看不懂,我只能说他不是一名合格的程序员。
4:需求理解能力
程序员要能正确理解任务单中描述的需求。在这里要明确一点,程序员不仅仅要注意到软件的功能需求,还应注意软件的性能需求,要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。
5:模块化思维能力
作为一个优秀的程序员,他的思想不能在局限当前的工作任务里面,要想想看自己写的模块是否可以脱离当前系统存在,通过简单的封装在其他系统中或其他模块中直接使用。这样做可以使代码能重复利用,减少重复的劳动,也能是系统结构越趋合理。模块化思维能力的提高是一个程序员的技术水平提高的一项重要指标。
6:测试习惯
测试是软件工程质量保证的重要环节,但是测试不仅仅是测试工程师的工作,而是每个程序员的一种基本职责。程序员要认识测试不仅是正常的程序调试,而要是要进行有目的有针对性的异常调用测试,这一点要结合需求理解能力。
7:学习和总结的能力
程序员是很容易被淘汰的职业,所以要善于学习总结。许多程序员喜欢盲目追求一些编码的小技巧,这样的技术人员无论学了多少语言,代码写起来多熟练,我们只能说他是一名熟练的代码民工,他永远都不会有质的提高。一个善于学习的程序员会经常总结自己的技术水平,对自己的技术层面要有良好的定位,这样才能有目的地提高自己。这样才能逐步提高,从程序员升级为软件设计师、系统分析员。
作为高级程序员,乃至于设计师而言,除了应该具备上述全部素质之外,还需要具备以下素质:
1、 需求分析能力
2、 整体框架能力
3、 流程处理能力
4、 模块分解能力
5、 整体项目评估能力
6、 团队组织管理能力
常用的计算机编程语言有那些
种类很多,要学的话,主要看你要从事哪个方面,编程都是大同小异,如果你学会一门,其他的学起来也就轻松许多。 如果你想当个普通的公司职员,建议C\C++这类的。 如果你想当个破解人员,建议汇编(我觉得是相当的难...)。 如果你想当个黑客,拥有一定的软件知识(很低层的那种)和硬件知识(使用软件掌控硬件)和网络知识(入侵这类的)。 如果你想当个红客,主要是网络安全知识。
这需要看将来想从事什么类型软件的开发吧。如果在国内开发windows类型应用程序,据说vb比较流行,但如果开发和硬件关系较大的嵌入式程序,则使用较多的还是C语言,而网络这个方面,无论是有线还是无线,大多数都选择了JAVA。以上是从应用角度来讲的,如果从性能和投入方面分析,C语言无疑性能上最好的,但它的复杂度太高,开发和维护费用较大,一般比较好的游戏程序或者速度要求较高的程序会选择C++来开发,而VB等由于它的简易性,可以极大缩短开发周期,也是程序员的宠儿之一。另外有一种语言python在国内逐渐出现,国外好像已经流行了十几年吧,linux的引导程序和BT的一些组件都是用它开发的,具有开发周期短,易维护等特点,运行速度也比JAVA要快,并且面向对象,无平台限制,据说还开放了源码,不过由于在国内流行时间不长,各大公司出于对以前开发代码的兼容性的需要,可能一时间接受不这个语言,但可以明显看出,它的发展潜力相当大。 总而言之,C为基础,掌握JAVA,会用VB,了解python,应该看得出这几个词汇之间的轻重差别吧。:)单机编程语言主要有qb,vb,c++,vc++,c语言,我觉得最常用的是c语言,因为现在我们常用的windows操作系统就是用c 语言编写的.非常常用. 网络编程语言现在用的是html 语言,还有java.ada
asp(含asp.NET)
basic(含VB)
b(C语言的前身)
css
c(含VC)
c#(含VC#.NET)
c++(含VC++.NET)
fortran
foxbase
html(含xhtml和shtml)
jacc(不确定是不是这个名字了,一种开发语言的语言)
java
java script
jsp
latex
lua
pascal
perl
php
prolog
python
ruby
sgml(html和xml用得很多,单独列出,其实也是一种sgml)
shell
sql
tcl/tk
vb script
xml 最常用的是 JAVA C C++ java VB 是比较好学的 最牛的要属C#了
世界上编程语言太多了,就像每个国家都有自己的语言一样的.但是从编程语言发展的角度说:
大概经历 这样 四个阶段: ############################################################
第一个阶段是 机器码编程 (你肯定知道计算机只能识别0和1,以前就是这样编程的).现在的PC计算机依然是这样,冯.诺依曼结构的计算机.你可以去网上搜索 冯.诺依曼 是干什么的.你会想,为什么现在编程不是0,1,计算机怎么识别呢?当你开始编程的时候,你用的编译器就在做这些事情.
########################################################### ##########################################################
第二个阶段是 低级语言,比如汇编语言,台湾叫做组合语言.其实组合翻译还是比较准确的.一般有IBM PC汇编语言,还有ATT的汇编语言.学一个就可以了,另一个只是形式不同.对于Intel的CPU来说,8088 8086是对应于16位的汇编语言,80386以后到现在的奔腾都是对应32位汇编语言.现在大学学的是8088/8086的汇编,这远远落后于时代了.目前已经推出了64位的CPU了. 汇编之所以是低级语言,是因为可以对计算机硬件进行直接操作.尤其是对BIOS的中断调用.最典型的是,在我们操作系统启动的时候(比如XP,LINUX...),内核引导程序就要调用BIOS来获得计算机的硬件信息供内核的调用. 低级不是代表功能不强大. 对硬件进行直接操作的,一般如果代码量小的话,会选择汇编来写.汇编的效率极高.
为什么代码量小才用汇编呢?因为汇编代码别人很难读懂.而且非常难维护.所以在选择汇编语言编程的时候要考虑,我的程序是关注什么方面的.
并不是只有汇编语言才能对硬件编程,C语言一样可以,C++,JAVA都可以,但是考虑到执行效率,汇编比他们都有绝对优势.一般系统级编程用汇编,C语言比较多 很多人说汇编语言将被淘汰,但是在一定的领域,这个东西不会被淘汰的.据我所知,目前的系统启动部分除了用汇编写,还没有用其他语言写过,操作系统的内核,多用C来写,还没有用C++来写.据说Linus以前尝试用C++改写Linux内核,不过后来放弃了.如果有人对我的假设有什么疑义,请推荐给我一个不用汇编写启动的代码,或者内核是用面向对象编程语言来写的OS的程序代码,我将不胜感激.
如果有人有反对意见,我保留我自己看法,因为在计算机上没有不可能的事情! ################################################# #################################################
第三个阶段是:结构化高级语言
这个代表就是C语言,PASCAL语言,FORTANT语言.
C语言相比较这三个语言来说,应用是最广泛的. C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。 C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言。 这里提到可移植性,补充上边说的汇编语言,汇编语言因为是直接面对硬件,所以如果硬件不同,编程的语法就不同,所以汇编一般不可移植,或者移植非常困难. C语言常用的编译软件有Microsoft Visual C++,Borland C++,Watcom C++ , Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++, Lccwin32 C Compiler 3.1,Microsoft C,High C,等等...... 大学里教学用的是TC2.0,这里的T表示TURBO,是Borland公司的产品. ************************************************8
有必要了解一下C语言的发展历史 C语言的发展颇为有趣。它的原型ALGOL 60语言。 1963年,剑桥大学将ALGOL 60语言发展成为CPL(Combined Programming Language)语言。 1967年,剑桥大学的Matin Richards 对CPL语言进行了简化,于是产生了BCPL语言。 1970年,美国贝尔实验室的Ken Thompson将BCPL进行了修改,并为它起了一个有趣的名字“B语言”。意思是将CPL语言煮干,提炼出它的精华。并且他用B语言写了第一个UNIX操作系统。 而在1973年,B语言也给人“煮”了一下,美国贝尔实验室的D.M.RITCHIE在B语言的基础上最终设计出了一种新的语言,他取了BGPL的第二个字母作为这种语言的名字,这就是C语言。 为了使UNIX操作系统推广,1977年Dennis M.Ritchie 发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。 1978年Brian W.Kernighian和Dennis M.Ritchie出版了名著《The C Programming Language》,从而使C语言成为目前世界上流行最广泛的高级程序设计语言。 1988年,随着微型计算机的日益普及, 出现了许多C语言版本。由于没有统一的标准,使得这些C语言之间出现了一些不一致的地方。为了改变这种情况,美国国家标准研究所(ANSI)为C语言制定了一套ANSI标准, 成为现行的C语言标准 3.C语言的主要特点 。C语言发展迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。用C语言加上一些汇编语言子程序, 就更能显示C语言的优势了,象PC- DOS 、WORDSTAR等就是用这种方法编写的。 C语言的特点 1. 简洁紧凑、灵活方便 C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。 2. 运算符丰富 C的运算符包含的范围很广泛,共有种34个运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。 3. 数据结构丰富 C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据类型的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能, 支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。 4. C是结构式语言 结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 5. C语法限制不太严格、程序设计自由度大 一般的高级语言语法检查比较严,能够检查出几乎所有的语法错误。而C语言允许程序编写者有较大的自由度。 6. C语言允许直接访问物理地址,可以直接对硬件进行操作 因此既具有高级语言的功能,又具有低级语言的许多功能,能够象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件。 7. C语言程序生成代码质量高,程序执行效率高 一般只比汇编程序生成的目标代码效率低10へ20%。 8. C语言适用范围大,可移植性好 C语言有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于多种机型。 ######################################################
第四个阶段:面向对象的高级语言
典型的是C++ JAVA 在C语言的编程过程中,大家发现 结构化编程的C语言编程比较麻烦.
比如,我要编写 描述3个凳子的程序,如果用C写的话,我必须一个一个描写凳子.如果要写100,1000个或者更多呢?不就麻烦死了.为什么我们不能先构造一个凳子的基本模型,然后根据具体凳子的特点添加代码呢? 这样代码量不是大大减轻了,程序员就少做很多重复劳动了.这个基本模型就是面向对象里边经常提到的类.
当然C++和C比较不仅仅是这些有点,优点太多了,我只是做一个假设而已,C++的内容很多,C++是C的超集.你学习C++你就知道了. C++和C的语法很相近,C++一样能处理结构化的程序,基本和C一样.
所以,你可以直接学习C++.C++和C没有什么必然关系.
############################################# 此外还有其他一些脚本语言perl,标记语言html等等.
游戏开发也经常用到脚本语言. -------------------------------------------------
编程语言就和人说话一样,等你熟练掌握了,你应该学习如何说话的方法和技巧了.就是计算机上常说的 数据结构 和 算法 当你熟练掌握编程语言的时候,你会发现再学一门新的语言不是什么难的事情.很容易上手,确实是这样的.
--------------------------------------------------------------
--------------------------------------------------------------
刚才我说了编程语言基本分为那些,知道这些语言最擅长的地方,你学游戏还是学什么都会有个目标. 无论你从事什么计算机编程工作,我都觉得应该好好学习基础知识,不管你是先学再干,还是先干然后知不足才学.形式都是次要的,关键是解决问题. 不管怎么样,你还是要了解一些数学知识,比如游戏编程要涉及的 线性代数的矩阵知识,等等.数学是很重要的.不要认为编程和数学没有关系.在高级编程中应用数学知识太常见了. 游戏编程现在大家学习3D的比较多.毕竟玩游戏,还是要逼真的感觉的.你初学可以学习OpenGL或者D3D,这些结构和C语言相似,他们不是编程语言,只是接口.编译器你可以采用MS的VC++或者LINUX下的GCC + GLUT,当然编译器只是工具,你喜欢采用什么编译器,调试器都是你自己的选择.MS底下也可以采用其他的,Linux底下也可以采用GTK等等.看你喜好了.
再有就是Web编程语言语了:aspasp.net PHPJSP
编程能自学吗?
编程当然可以自学。自学编程大约需要两三个月,每天抽出两三个星期把基础全部学习一遍,其他都是建立在基础之上的东西,学起来就会很快。
以下是关于零基础学习编程的建议:
1.准备一个相对好的运行速度快的电脑,然后安装一个操作系统(建议Windows操作系统)。不要让一台速度缓慢的电脑浪费你的时间。
2.选择一个正确的打字指法。此外,还要熟悉一些Windows快捷键和文本编辑器。
3.学习计算机科学,第一步就是学习一门编程语言。下面就是这种语言的利弊:
a.C语言
【优点】:你可以学习到许多底层的知识,给你夯实基础。
【缺点】:C语言不支持面向对象编程,你很难使用它直接找到一份工作
b.C++
【优点】:很多用法和C一样,但是却支持面向对象编程
【缺点】:有太多的知识点要学习,相对比较复杂的语言,有多个版本要选择
c.Java/C#/Python/JavaScript
【优点】:简单的语法,隐藏了低层次的知识点,可读性强,学好它容易找工作
【缺点】:你将丢失很多底层的知识点
推荐自学编程的教科书:
《C程序设计语言第二版·新版》
扩展资料:
编程是编写程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。
为了使计算机能够理解人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。
这种人和计算体系之间交流的过程就是编程。
编程:设计具备逻辑流动作用的一种“可控体系”【注:编程不一定是针对计算机程序而言的,针对具备逻辑计算力的体系,都可以算编程。】
参考链接:编程_百度百科