常用的几种编程语言
-
C语言
相关概念:实模式、保护模式、调度、中断、调用栈、回调……基本上计算机科学里面的基本概念都会涉及
编程思想:结构化编程,即将解决方案描述为一个清晰的过程,这其中会涉及数据的建模(数据结构),接口的定义(函数),项目整体的组织结构(类似于中断向量表的注册、回调机制)。整个实现的过程就是这种流程从粗到细,步步细化的过程。
适合的领域:编译系统(很容易划分为 lexer、parser、walker等)、OS(很容易分成 cpu相关、内存相关、外设相关、进程相关)、DBMS等系统软件,或者是靠近 硬件的嵌入式系统
优点⑴.C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。
⑵.微软的MFC库博大精深,学会它可以让随心所欲地进行编程。
⑶.VC是微软制作的产品,与操作系统的结合更加紧密。
缺点
⑴.对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难。 -
C++
相关概念:虚函数、虚表、内联、多继承、const、泛型、模板(语言相关)……opencv、OGRE、3D渲染、GPU、mesh、skeleton、帧循环、DX、GUI、MFC、Qt、消息队列、非阻塞IO(应用领域相关)……
编程思想:过程化、oo、泛型、函数式 4种同时支持,实际中用OO比较多。
适合领域:多媒体、高性能网络服务器等较讲究效率的应用程序
优点⑴.继承了C语言的全部优点。
⑵.完全的可视化。
⑶.极强的兼容性,支持OWL、VCL和MFC三大类库。
⑷.编译速度非常快。
缺点
⑴.由于推出的时间太短,关于它的各种资料还不太多。
-
JAVA语言
相关概念:字节码、虚拟机、垃圾回收、接口、多线程、包、程序库、反射、框架、集成、组件、http、web、数据库、SSH、javaee……
编程思想:OO,即思考的角度是更面向问题域的对象,整个程序是对象不断细化,以及对象间交互的过程(调用相应的方法)。java的程序比较讲究扩展性和可维护性,一般会使用比较多的设计模式,常用的程序组织形式是MVC、监听者模式等。
适合领域:大部分没有硬实时要求的应用程序Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越 的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
Java是一种简单的,面向对象的,分布式的,解释的,健壮的,安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。
4.Javascript
相关概念:闭包、对象、函数、CSS、DOM、Ajax、HTML5、node.js、V8……
编程思想:基于prototype的OO,以及基于闭包的函数式编程(后者用的更多)。常用代码组织形式:事件触发的回调机制(node.js与前端的区别是其自己定义、触发事件)、基于非阻塞异步IO的框架(node.js)
适合领域:web前端
参考:http://eric-weitm.iteye.com/blog/1495370
https://baike.so.com/doc/538266-569890.html