Categories contrast high-level language, operating system, front end, database, server

Comparison operating system (including a server operating system):

Windows system
windows server operating system we are familiar with, which is developed by Microsoft, Microsoft is the world's largest operating system developers. Windows system is the most common LAN configuration, but due to the higher its server hardware requirements, and stability is not very good, when used as a WEB server, not a huge amount of core communication windows can afford, so Microsoft's server operating systems are generally only used in the low-grade server. Of course, Windows system has its own advantages, windows have been a household name in the PC era, in terms of ease of use, there is no better person than Windows doing, compared to other server systems, greatly reducing the cost of ownership study, which Windows system is one of the reasons enduring. Common WindowsServer system windows server 2003, windows server 2008, windows server 2012 and so on.
Linux systems
Linux server operating system was developed on the basis of Posix and Unix on out, support multi-user, multi-tasking, multi-threaded, multi-CPU. The greatest feature is the open source, open source is that everyone, including related businesses, government or something, developers joint supervision, under such supervision, a mature program rarely loopholes. Based on the development and use of this platform does not require users to pay any royalties, it is the cornerstone of many entrepreneurs, but also some of the secret service of the server operating system of choice for procurement. In addition, Linux as well as a complete set of permissions mechanism, no relevant authority, want to cause damage to the system simply can not start, security and stability is relatively high, being in favor of senior developers. It is also because of the security and stability of Linux, many domestic and foreign secret agencies server operating system of choice for procurement of such operating system is mainly used in high-end servers.
Unix System
Unix server operating system jointly launched by AT & T Corporation and the SCO, the main support for large file system services, data services and other applications. Powerful. This network operating system stability and security performance is very good, but because it is the most command mode to operate, not easy to grasp, especially the novice user. For this reason, the basic small local area network without the use of Unix as a network operating system, UNIX generally used for large sites or large enterprises, public LAN. Because architecture is not reasonable, UNIX market share decline. Unix in the eyes of some high-end operating system because many servers manufactured high-end products only support the Unix operating system.
NetWare systems
are not many, most people are not particularly familiar with the NetWare server operating systems use relatively speaking, because its share of the market is relatively limited, and in some specific industries and public institutions, NetWare good batch function and safety , stable system performance is also a great living space. NetWare operating system compatible with DOS commands, similar to DOS environment and its application, with a wealth of application software support, technical comprehensive, reliable, with lower demand for network hardware and equipment is relatively backward by a number of medium and small enterprises, especially in schools of all ages. And NetWare server to support diskless station and the game better, commonly used in teaching network and game room. This operating system market share has declined.

Front-end development language:

HTML and HTML styled 
HTML tags and text is a combination of a group, is a basic web page. It already contains the common elements of the page, in fact, early in the Web for a long period of time, pages are like this. Later, as people use the Internet more and more widely, the introduction of the definition of page styles in HTML3.0, can be said to some extent, also from this time produced a web designer role. 
CSS 
HTML styled also has a drawback, it needs to have set the style for each title and text, the workload is very large. CSS is in such a case was born. CSS, also known as Cascading Style Sheets, used to represent a short HTML document-style style design language. CSS page layout enables the position of an object in precise pixel-level control, based on static interaction design; and the latest version CSS CSS3 can really do with the performance of web content separation. 
Javascript 
almost at the same time the birth of CSS, we began to feel that this seems a bit boring static pages, can you give some elements can move up the Web pages? For example, after clicking a button to change color. At that time Netscape engineer Brendan Eich gave their own browser introduces a scripting language for dynamic effects, this is the birth of Javascript (referred to as JS) is. So colloquially, Javascript is used to increase the dynamic HTML pages function to achieve a more cool interaction. 
jQuery 
jQuery is an excellent Javascript library. jQuery so that users can more easily handle HTML, which enables the user to keep the code HTML pages and HTML content separated, jQuery, JS can not insert a pile inside HTML to invoke a command, only ID can be defined. Moreover, cooperation by Twitter designer Mark Otto and Jacob Thornton developed Bootstrap is a popular front end framework.

 

Background Development Language:

The Java
the Java more mature: in 1995, had already appeared. For commercial websites, Java is the most widely used language, good performance, suitable for medium and large projects, cross-platform, safe, reliable, high efficiency (especially the bigger the gap appears after the JIT), is not easy err (strongly typed, pre-compiled, must intercept abnormal, etc.), can effectively improve the reusability, improve performance and throughput, to avoid security problems. But the development of complex, relatively low development and publishing efficiency, high maintenance costs, the development of high personnel costs. Java eco-system is very mature (IDE, framework, etc.).

Advantages : good performance, suitable for medium and large projects, cross-platform, safe, reliable, high efficiency (especially larger gap after the emergence of JIT), is not easy to make mistakes (strongly typed, pre-compiled, must intercept abnormal etc.), can effectively improve the reusability, improve performance and throughput, to avoid security problems.
Drawback : the development of complex, relatively low development and publishing efficiency, high maintenance costs, high costs of developers


PHP
flexible, quick, easy to modify, publish, environment for deployment. Fallible, line efficiency is not high, the lack of global cache. Because PHP is running on the server side script can run on UNIX, LINUX, WINDOWS, Mac OS , Android and other platforms. Syntax absorbed the C language, Java, and Perl features conducive to learning, widely used, mainly for Web development. PHP syntax unique mix of C, Java, Perl and PHP own syntax. It can perform dynamic than the CGI or Perl pages more quickly. Compared with dynamic PHP pages made with other programming languages, PHP is embedded into HTML program (an application under the Standard Generalized Markup Language) document to perform, the efficiency is much higher than completely CGI generated HTML tags. PHP biggest advantage is learning threshold is low. It basically can be performed anywhere, hosting and very simple.

Advantages : flexible, quick, easy to modify, publish quick, good environment deployment
Drawback : fallible, line efficiency is not high, the lack of global cache


ASP.NET
微软公司推出的新一代脚本语言。ASP.NET基于.NET Framework的Web开发平台,不但吸收了ASP以前版本的最大优点并参照Java、VB语言的开发优势加入了许多新的特色,同时也修正了以前的ASP版本的。跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低。代码逻辑混乱,难于管理,代码的可重用性差。ASP.NET具备开发网站应用程序的一切解决方案,包括验证、缓存、状态管理、调试和部署等全部功能。在代码撰写方面特色是将页面逻辑和业务逻辑分开,它分离程序代码与显示的内容,让丰富多彩的网页更容易撰写。同时使程序代码看起来更洁净、更简单。

优点:跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低
缺点:代码逻辑混乱,难于管理,代码的可重用性差
 

Python
简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展。速度慢,格式强制,容易犯错。用Python可以做日常任务,比如自动备份你的MP3;可以做网站,很多著名的网站包括YouTube就是Python写的;可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。

优点:简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展
缺点:   速度慢,格式强制,容易犯错


Node.js
Node.js自从2009年发布一下,使用十分广泛。Node.js具有异步,事件驱动以及可扩展的特性。Node.js应用是由JavaScript开发的,因此它具有JavaScript的所有优点:享受到了JavaScript V8引擎的好处,灵活而轻量级的语法,跟Java一样,JavaScript出现在1995年。所以语言本身发展历史很长,相对稳定。 Node.JS逐渐发展成一个成熟的开发平台,吸引了许多开发者。有许多大型高流量网站都采用Node.JS进行开发,此外,开发人员还可以使用它来开发一些快速移动Web框架。Node可以在不新增额外线程的情况下,依然可以对任务进行并发处理 —— Node.js是单线程的。它通过事件循环(event loop)来实现并发操作,对此,我们应该要充分利用这一点 —— 尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。

优点:RESTful API,单线程,非阻塞IO,V8虚拟机,事件驱动

缺点:单进程,单线程,不适合CPU密集型应用,只支持单核CPU,不能充分利用CPU,可靠性低,一旦代码某个环节崩溃,整个系统都崩溃,开源组件库质量参差不齐,更新快,向下不兼容,Debug不方便,错误没有stack trace

 

除以上介绍之外,还有其他一些后台开发语言,比如:C++、C#、C、Go、Ruby等。

国内的大公司偏业务的一般都用 Java 做后台开发比如淘宝,网易,美团等. Python国内一般是一些体量不是这么大的公司使用,例如豆瓣,知乎等。其实,各种语言都有优缺点,没有哪一种是绝对好的。各公司也不是单单只使用一种后台语言,都是结合起来开发的。上述的各种语言的优缺点也是相对的,并不是说明哪种语言多么好多么不好,而且,技术是发展的。
不同公司用不同后台开发语言也有各自的原因。比如,要看需求是重展现还是重业务逻辑,重展现就用php等,重业务逻辑就用python等,也有原因是由于技术积累,比如腾讯一直用c++。所以,我们应该根据自己的兴趣爱好,结合行业发展,选择一门语言认真学习,这样才能在业界立足。

数据库语言:

Oracle
Oracle是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 Oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用mysql, SQLserver等数据库系统,它的操作很简单,功能也非常齐全。只是比较Oracle数据库而言,在处理大量数据方面有些不如。
MySQL
MySQL是一个小型关系型数据库管理系统,是开源的,MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。MySQL服务器工作在客户/服务器或嵌入系统中。有大量的MySQL软件可以使用。MySQL是多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年, Sun又被Oracle收购。对于MySQL的前途,没有任何人抱乐观的态度。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
SQL Server
SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。只能在windows上运行,C/S结构,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据库。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,通过Web对数据进行轻松安全的访问,具有强大的、灵活的、基于Web的和安全的应用程序管理等。而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。
DB2
能在所有主流平台上运行(包括windows)。DB2就是IBM开发的一种大型关系型数据库平台。它支持多用户或应用程序在同一条SQL 语句中查询不同database甚至不同DBMS中的数据,最适于海量数据。DB2在企业级的应用最为广泛,在全球大型企业中,有很高的时长份额。具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或数据库节点性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。性能较高适用于数据仓库和在线事物处理。跨平台,多层结构,支持ODBC,JDBC等客户。操作简单,同时提供GUI和命令行,在windowsNT和unix下操作相同。在巨型企业得到广泛的应用,向下兼容性好。风险小。
Sybase
美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统。 Sybase提供了一套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。系统具有完备的触发器、存储过程、规则以及完整性定义,支持优化查询,具有较好的数据安全性。性能较高,支持Sun、IBM、HP、Compaq和Veritas的集群设备的特性,实现高可用性。性能接近于SQL Server,但在UNIX平台下的并发性要优与 SQL Server。适应于安全性要求极高的系统。具有较好的并行性,速度快,对巨量数据无明显影响,但是技术实现复杂,需要程序支持,伸缩性有限。使用命令行操作,对数据库管理人员要求较高。同时提供GUI和命令行。但GUI较差,常常无法及时状态。

除以上介绍之外,还有一些不常用的数据库,比如:Informix、PostgreSQL、Access、FoxPro等。

 移动开发语言:

Android

Android系统开发采用Java语言,虽然安卓系统的linux内核是基于C语言开发,但事实上并不必需采用C语言来开发应用。

ios

苹果IOS系统可以采用OC和Swift两种语言。Android开发环境搭建简单,IOS开发需要采用苹果的硬件和软件,因为苹果的生态是个封闭的闭环系统。、

 

计算机语言还有以下分类,有时间会详细介绍

  1. 高级语言和低级语言
  2. 动态类型和静态类型
  3. 强制类型和弱类型
  4. 编译型,解释型,半编译半解释
  5. 面向对象型和面向过程型

 

Guess you like

Origin www.cnblogs.com/yanying-fly/p/11619564.html