用途:WEB开发、视频游戏开发 桌面(图形用户界面)软件开发
优势:
学习:最易于掌握的编程语言而拥有极高的人气
库:广泛的工具及功能库能够帮助大家轻松完成构建工作。
物联网:将随着物联网技术的普及而进一步发展,目前RASP-BERRY P等新型平台已经将其作为开发基础
弊端:速度:作为一种解释型语言,其速度注定低于编译语言。
移动:在移动计算领域的表现比较糟糕,利用PYTHON开发的移动应用非常罕见。
设计:语言在设计上存在一些问题,其属于动态类型语言,因此需要进行更多测试目会带来某些只在特定运行时中出现的错误。
用途:APP应用开发 视频游戏开发 同上
优势:
需求旺盛:
不断发展的语言:JAVA平台不断迎来新功能包括LAMbda机制的引入
应用开发基石。
弊端:占用大量的内存:高c++
学习曲线:并不属于最易于上手的语言,当然也不是最难学的语言。
启动时间比较长:任何曾经利用java语言开发过安卓应用的朋友毛豆一定会。
用途:操作系统、软件开发、硬件
优势:
可移植性:C语言是祖宗级,有出色的移植性,大家可以在无需或仅进行少量改动的前提下将开发出的软件运行不同平台上。
体形小巧:完全基于变量、宏、函数以及结构,因此可被嵌入至几乎一切现代处理器当中--从冰箱到闹钟即可作为其运行平台。
了解C语言就了解编程的一切:初学编程都是C语言开始的吧,几乎所有编程语言脱胎于C
弊端:
运行时:不具备运行时检查机制
面向对象编程:不支持面向对象编程,因此c++才会出现
复杂的学习曲线:并非最易或者最难于上手的编程语言,比较适合那些已经对其他编程语言有所了解的学习者。
用途:软件开发、搜索引擎、操作系统、视频游戏
优势:
帮助性:掌握C/C++能够帮助大家在众多开发人才当中突出,大家能够深入了解JAVA或PYTHON等编程语言中的内存管理机制。并了解如何回避各种常见的难题与陷阱。
灵活性:能对应用进行灵活的调整让应用性能更强,可以利用它实现一切操作。
弊端:
难学:难学,但掌握后你可能是个很强的程序员
规模庞大:复杂的功能交互方式,但可以选择功能子集来构建组件。
用途:网站前端、分析、功能控件、WEB交互
优势:速度:作为客户端脚本语言,JAVASCRIPT中任意代码函数却可立即运行而无需等待服务器连接及应答,因此其速度非常出色。
简单:我学它只用2月,够简单吧。
特性:能够与其他多种语言顺利协作,并可用于多种不同应用程序,可以插入任意网页当中无需考虑具体文件拓展名。
弊端:
安全:容易被恶意活动所利用,网页时需要反编译工作。
依赖性:客户端脚本的可预测性相对较差。不过这一问题并不是非常严重,只要在全部流程浏览器上对脚本测试即可。
用途:window应用、企业级内部应用、软件开发
优势:
.net库:比较成熟的全面集成.Net库,提供出色的功能与支持库访问能力。
可转换:基于C语言,可转移至JAVA、objective-c/PHP以及C++等其他语言形式。
需求大:C#加JAVA为目前各企业需求最大
弊端:C#不适合新手入门
由于集成于.Net不具备跨平台
用途:桌面 GUIS、Web应用 、web开发
优势:易于学习:于PYTHON 类似,RUBY同样属于最易学习的编程语言之一。
库:广泛的工具及功能库使得利用RUBY构建应用变得非常轻松。
庞大发展:世界范围内几乎每一座主要城市都会定期组织RUBY社区研讨活动,其同时也是社交编程站点上最具人气的语言(日本人开发好用,但我不敢学)
弊端:
速度:关于RUBY ON RALS,人们最常提到就是糟糕的速度表现。
说明:我们很难找到RUBY说明文档,特别是对人气较低的gems以及库而言。(其实很简单,缺说明文档只有20%是干货社区翻译后)
性能:ROR 应用的运行速度无法与JAVA或者C语言编写的的应用相当,但必须强调,大部分RUBY ON RALS 应用的运行速度已经够令人满意了。
用途:wordpress插件、WEB开发、创建包含数据库功能的页面
优势:
功能丰富:它是一款适合WEB开发与通用用途,且易于快速上手的服务器脚本语言。
社区:拥有庞大而活跃的社区。WEB 开发者面临的大部分难题都拥有现成的解决方案。
数据库:其可与各类数据库、文件系统及图片顺畅协作。
弊端:
门槛低:项目中存在大量经验不足的开发者。某些开源代码甚至已经存在十余年。
速度:PHP为解析型语言,其代码运行速度低于大部分编程语言竞争对手。
错误处理机制:
PHP的错误处理机制比较糟糕,特别与其他编程语言相比较,这主要是因为PHP的开饭历史过长需要支持大量旧功能。
用途:IOS与MAC OS 的应用程序
优势:
苹果库:开发目的紧紧围绕与COCOA编程框架的协作需要,这意味着其能够访问苹果的开发库。
运行:编写的程序往往动态程度更高,且能够收集自身相关信息以决定相关内存或数据类型,而无需再编码过程中由开发者自行选择。
使用范围:只有苹果系统
弊端:
学习:上手难度比较高。
不直观:大家不可能几周之内学会如何开发程序,一般来讲,我们可能需要投入一年才能拿出比较像样的开发成果。
思路:苹果拥有自己的编程思路,且与其它编程思路与差别较大(没有对错,只是不同)