软件开发的主流语言(软件开发的主流语言及其应用领域报告)
今天给各位分享软件开发的主流语言的知识,其中也会对软件开发的主流语言及其应用领域报告进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
当今软件开发开发主流语言
C++,java,C 等用在各个领域。
php,asp ,jsp,python,ruby,C#等 web上用的比较多(B/S的后台),如jsp的基础是java,asp的基础是.net等很多都是扩展而来的。
vbscript,javasript是脚本语言是浏览器客户端语言用于B/S的前台
一些著名的软件都用什么语言编写?
一、操作系统:
Microsoft Windows : 汇编 - C - C++
备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并,最终又回到C++重写。
相信很多朋友都知道Windows Vista,这个系统开发早期比尔盖茨想全部用C#写,但是最终因为执行慢而放弃,结果之前无数软件工程师日夜劳作成果一夜之间被宣告作废。
Linux :C
Apple MacOS : 主要为C,部分为C++。 备注: 之前用的语言比较杂,最早是汇编和Pascal。
Sun Solaris : C
HP-UX : C
Symbian OS : 汇编,主要为C++。 (诺基亚手机)
Google Android :2008 年推出: C语言(有传言说是用Java开发的操作系统,但最近刚推出原生的C语言SDK)
RIM BlackBerry OS 4.x : 黑莓 C++
二、图形界面层
Microsoft Windows UI : C++
Apple MacOS UI (Aqua) : C++
Gnome (Linux图形界面之一,大脚): C和C++, 主要是C。
KDE (Linux图形界面) ,C++。
三、桌面搜索工具
Google Desktop Search : C++
Microsoft Windows Desktop Search : C++
Beagle (Linux/Windows/UNIX 下): C# (基于开源的 .net : Mono)
四、办公软件
Microsoft Office : 在 汇编 - C - 稳定在C++
Sun Open Office : 部分JAVA(对外接口),主要为C++ (开源,可下载其源代码)
Corel Office/WordPerfect Office : 1996年尝试过Java,次年被抛弃,重新回到C/C++
Adobe Systems Acrobat Reader/Distiller : C++
五、关系型数据库
Oracle : 汇编、C、C++、Java。主要为C++。
MySQL : C++
IBM DB2 : 汇编、C、C++,主要为C。
Microsoft SQL Server : 汇编 - C-C++
IBM Informix : 汇编、C、C++,主要为C。
SAP DB/MaxDB : C++
六、Web Browsers/浏览器
Microsoft Internet Explorer : C++
Mozilla Firefox : C++
Netscape Navigator : The code of Netscape browser was written in C, and Netscape engineers, all bought to Java (see M. Cusumano book and article) redeveloped the browser using Java. It was too slow and abandoned. Mozilla, the next version, was later developed using C++.
Safari : (2003年1月发布)C++
Google Chrome : (2008的发布)C++
Sun HotJava : Java (死于1999年)
Opera : C++ (手机上占用率比较大)
Opera Mini : Opera Mini (2007) has a very funny architecture, and is indeed using both C++ and Java. The browser is split in two parts, an ultra thin (less than 100Kb) "viewer" client part and a server side responsible of rendering. The first uses Java and receives the page under the OBML format, the latter reuses classical Opera (C++) rendering engine plus Opera's Small Screen Rendering, on the server. This allows Opera to penetrate various J2ME-enabled portable devices, such as phones, while preserving excellent response time. This comes obviously with a few sacrifices, for instance on JavaScript execution.
Mosaic : 鼻祖(已死) C 语言
七、邮件客户端
Microsoft Outlook : C++
IBM Lotus Notes : Java
Foxmail : Delphi
八、软件开发集成环境/IDE:
Microsoft Visual Studio : C++
Eclipse : Java (其图形界面SWT基于C/C++)
Code::Blocks : C++
易语言: C++
火山中文: C++
火山移动: C++
九、虚拟机
Microsoft .Net CLR (.NET的虚拟机): C++
Java Virtual Machine (JVM) : Java 虚拟机:C++
十、ERP软件 (企业应用)
SAP mySAP ERP : C,后主要为“ABAP/4”语言
Oracle Peoplesoft : C++ - Java
Oracle E-Business Suite : Java
十一、商业智能(Business Intelligence )
Business Objects : C++
十二、图形处理
Adobe Photoshop : C++
The GIMP : C
十三、搜索引擎
Google : 汇编 与 C++,主要为C++
十四、著名网站
eBay : 2002年为C++,后主要迁至Java
facebook : C++ 和 PHP
This line is only about facebook, not its plugins. Plugins can be developed in many different technologies, thanks to facebook's ORB/application server, Thrift. Thrift contains a compiler coded in C++. facebook people write about Thrift: "The multi-language code generation is well suited for search because it allows for application development in an efficient server side language (C++) and allows the Facebook PHP-based web application to make calls to the search service using Thrift PHP libraries." Aside the use of C++, facebook has adopted a LAMP architecture.
阿里巴巴和淘宝: php-C++/Java(主要用)
十五、 游戏 :
汇编、C、C++
星际争霸、魔兽争霸、CS、帝国时代、跑跑卡丁车、传奇、魔兽世界.... 数不胜数了,自己数吧
都是用C++开发的,C++语言靠近系统地称,执行速度最快。比如你的两个朋友与你分别玩用VB、Java、与C++编写的“跑跑卡丁车”,你玩C++编写的 游戏 已经跑玩结束了,发现你的两个朋友还没开始跑呢,那是相当的卡啊,
十六、编译器
Microsoft Visual C++ 编译器: C++
Microsoft Visual Basic 解释、编译器: C++
Microsoft Visual C# : 编译器: C++
gcc (GNU C compiler) : C
javac (Sun Java compiler) : Java
Perl : C++
PHP : C
十七、3D 引擎
Microsoft DirectX : C++
OpenGL : C
OGRE 3D : C++
十八、Web Servers (网页服务)
Apache : C和C++,主要为C
Microsoft IIS : C++
Tomcat: Java
Jboss: Java
十九:邮件服务
Microsoft Exchange Server : C-C++
Postfix : C
hMailServer : C++
Apache James : Java
二十:CD/DVD 刻录
Nero Burning ROM : C++
K3B : C++
二十一:媒体播放器
Nullsoft Winamp : C++
Microsoft Windows Media Player : C++
Microsoft Windows Media Player : C++
二十二:Peer to Peer (P2P软件)
eMule : C++
μtorrent : C++
Azureus : Java (图形界面使用基于C/C++的SWT,类Eclipse)
二十三:全球定位系统(GPS)
TomTom : C++
Hertz NeverLost : C++
Garmin : C++
Motorola VIAMOTO : 2007年6月,停止服务。 Java。
二十四:3D 引擎
Microsoft DirectX : C++(相信玩 游戏 的同学都知道这个,现在最高版本是DX11)
OpenGL : C
OGRE 3D : C++
二十五:服务器软件
Apache: C
Nginx: C
IIS: C
二十六:其他相关
OpenStack: Python
综述
著名的软件一般是系统软件,软件一般都分为系统软件和应用软件。开发软件分为一次开发和二次开发,比如开发操作系统(系统软件),就是一次开发;在操作基础上进行应用软件的开发,比如开发 游戏 ,就是二次开发。
一次开发的系统软件,要直接调用硬件资源,必须使用简单、直接的底层语言和中层语言,比如汇编和C语言;二次开发应用软件等,因为应用软件的类别比较多的,针对的情况比较复杂和具体,因此可以选择的语言很多,比如,大数据人工智能方面的有Python;安卓手机APP就是Java等等。
这里还有一个误区,其实语言不重要,每种语言都差不多,重要的是开发环境和编程思想。要学习编程开发,学的不是语言,而是对于开发环境工具的使用和编程思维的锤炼。很多著名的软件都是用C等底层语言编写的,但是也可以用其他语言编写,不过很少学C了,其中有商业的原因。(后面会解释)
集成开发环境软件
计算机语言是不可以单独拿出来说的,比如我们说C语言,指的是C语言编译器,而Python语言,指的是Python解释器。而编译器和解释器却都是用C语言编写,是不是很意外,所以著名的软件一般都是系统软件,使用的是C语言,一个语言就要初中水平就可以学会了,但必须了解IDE开发环境。
要使用计算机语言,就必须安装编译器,或者是解释器,程序员是在TXT文本上编写语言的,用编译器可以一次性编译为可执行文件exe,用解释器则可以逐条翻译成机器语言并逐条执行。编译器速度快,解释器可以跨系统,到了别的系统,不需要程序员改写程序,换一个解释器就行了。
IDE集成开发环境具备图形操作界面、编译器、调制器、控制台,是非常重要的开发工具的,只会一个计算机的语言语法,却不会使用IDE,基本上是没用的!
编程思想
很多著名的软件都是使用C等底层语言编写的,而且所用的都是编译器。当然还有另外一个原因,就是编程思想,C语言是面向过程,Python是面向对象。很明显,一次开发的系统软件肯定是面向过程的,而面向具体使用场景的应用软件肯定是面向对象的。
高手可以自由使用编程思想、程序编写时,交替使用各种语言、切换解释器或者编译器,达到隐藏核心代码目的;又或者软件的核心模块采用C等底层代码,保证软件的运行速度。毕竟开发时都是模块化的,不同模块使用不同的方法都是可以的!
所以很多著名的软件,往往是混合着各种语言,核心部分是C,其他部分则根据不同的情况选用不同语言,之所以会这样做,是因为使用C开发软件要耗费大量的时间太。摩尔定律推动硬件发展,软件开发也受到影响,一个软件晚几天推出市场,效果完全不同,所以程序员经常加班赶工,速度才是最重要的。
总结
如上所述,著名的软件是使用C等底层语言、编译器语言、面向过程的语言编写的,更多的是在一个软件的核心部分使用C等底层语言、编译器语言、面向过程的语言,其他则见机行事。
现在主流的语言是java、python和go
主流开发语言和特点
基本性
1、高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。[
2、结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
4、代码级别的跨平台:由于标准的存在,使得几乎同样的C代码可用于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。C语言对编写需要进行硬件操作的场合,优于其它高级语言。
5、使用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C++在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。Java则吸取了C++的教训,取消了指针操作,也取消了C++改进中一些备受争议的地方,在安全性和适合性方面均取得良好的效果,但其本身解释在虚拟机中运行,运行效率低于C++/C。一般而言,C,C++,java被视为同一系的语言,它们长期占据着程序使用榜的前三名。
特有特点
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
5、部份的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。
7、预编译处理(preprocessor)让C语言的编译更具有弹性。
优缺点
优点
1、简洁紧凑、灵活方便
C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
C语言的 Hello World 程序
C语言的 Hello World 程序
2、运算符丰富
C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
3、数据类型丰富
C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。[13]
4、表达方式灵活实用
C语言提供多种运算符和表达式值的方法,对问题的表达可通过多种途径获得,其程序设计更主动、灵活。它语法限制不太严格,程序设计自由度大,如对整型量与字符型数据及逻辑型数据可以通用等。
5、允许直接访问物理地址,对硬件进行操作
由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位(bit)、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写系统软件。
6、生成目标代码质量高,程序执行效率高
C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编程序生成的目标代码效率低10%~20%。
7、可移植性好
C语言在不同机器上的C编译程序,86%的代码是公共的,所以C语言的编译程序便于移植。在一个环境上用C语言编写的程序,不改动或稍加改动,就可移植到另一个完全不同的环境中运行。[14]
8、表达力强
C语言有丰富的数据结构和运算符。包含了各种数据结构,如整型、数组类型、指针类型和联合类型等,用来实现各种数据结构的运算。C语言的运算符有34种,范围很宽,灵活使用各种运算符可以实现难度极大的运算。
C语言能直接访问硬件的物理地址,能进行位(bit)操作。兼有高级语言和低级语言的许多优点。
它既可用来编写系统软件,又可用来开发应用软件,已成为一种通用程序设计语言。
另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。
缺点
1、 C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。
2、 C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程序设计更熟练一些。
java
1.简单性
Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。
2.面向对象
Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。
Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。
3.分布性
Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。
网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。
现在一般的软件是用什么语言编写的?
应用软件是JAVA比较主流,系统软件(或者对效率等高级系统功能要求非常高的软件)一般是用C++(主要指用VC++ IDE进行开发)
大型游戏是C++,小型的一般用JAVA。
.NET中的C#也不少人用,主要是应用软件。
软件开发什么语言比较好???
总的来说,现在的开发语言趋势是:JavaScript,Java,Python,C ++和C,是否后新语言长江后浪推前浪,Go,Rust,让我们拭目以待吧!
汽车 运输行业:
在汽车 运输行业,编程语言受欢迎度的排名为:JavaScript 、Java 、Python、C++ 、C#
计算机硬件:
在计算机硬件行业,C语言最为操作系统时代的老大,当前在计算机硬件行业明显高于其他语言,在底层、中间件应用市场中C和C++两者差距微乎其微,C由于其性能,直接的低级硬件API以及跨多个平台的编译器的可用性而主导硬件。物联网依然离不开C语言。排行前三的分别为C、C++、Python
金融服务行业:
在金融服务行业,排行前三的分别为Java、JavaScript和Python,其中,Java在金融服务领域已经流行了很多年。
政府部门:
政府部门依然更青睐Java和JavaScript,相较于其他语言,C#在政府机构中更为普遍,排行第三,算是相当不错的成绩。
卫生保健行业:
在卫生保健行业中,JavaScript排行第一、Java第二、Python第三、C#第四
媒体/娱乐/游戏:
媒体/娱乐/游戏行业中,JavaScript排行第一,Java第二,Python第三,PHP第四
零售 电商:
在零售电商行业中,Java 排行第一、JavaScript 第二、Python 第三
安全领域:
安全领域,Java 第一、Python 第二、JavaScript 第三、C++ 第四、C 第五
技术:
由上可见,不同行业不同编程语言的受欢迎程度不同,其实这主要是由编程语言本身适合干什么工作决定的,开发者对编程语言 应无好恶之心,只有适合不适合。所以一个语言能不能发展,甚至存活主要还是要看它适不适合市场应用。
虽然如此,我们还是能看出一些特点:综合来看,但无论哪个行业,Java,Python,JavaScript,C/C ++都是开发人员的比较喜欢的编程语言。所以开发者掌握这几张语言是有必要的。
关于软件开发的主流语言和软件开发的主流语言及其应用领域报告的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。