如何正确选择主流开发语言?

转载 2013年12月04日 17:06:50

对于想学习软件开发的人来讲,您肯定对软件开发有了一些了解,但您在决定学习之前, 肯定也会遇到一个问题,那就是学什么语言?因为您看到身边的朋友或同学,有的学.NET,有的学java, 有的学PHP,有的学C、C++等等,而往往初学者对这些开发语言又不能很好的区别,究竟自己应该选什么开发语言呢? 我想肯定会让好多初学者感到疑惑,下面我就给大家分享一下我的体会和建议,希望能给您提供一些帮助。 开发语言的专业方向比较强,应该正确划分不同开发语言所属的专业方向。现在对于大多数的学习者而言, 开发语言基本可以划分两个方向:

第一,硬件底层开发语言。

这类语言一般是汇编语言、C语言、C++等,当然C++相对于前两种开发语言更加高级,并且应用范围更加广泛。比如, 我们的计算机操作系统开发,我们所用的家电设备的控制、手机的底层软件、汽车的行车电脑,以及各类电子电器设备的运行等等 ,都需要这些底层软件支持,一般我们把从事这方面的工作的开发称之为“嵌入式开发”,因为这些程序一般都固化在硬件设备里面 ,一旦开发完毕,不会经常修改,当然,也会适当升级。 今天我们不具体谈论如何学习这些语言,我只想告诉大家,这些主流的底层开发语言学习者一般都有比较好的硬件基础, 因为这个开发语言往往和硬件关系非常大,它的开发好多情况是直接依赖于硬件设备的,所以,如果您不是这方面的专业人才, 我不建议您学习,因为那样的话,学习成本会非常高,难度会非常大,即使入门了,想深入的话,难度也非常大。 这些语言一般都是大学里面的专业基础课,好多人都略知一二,但做开发的确很少。但是,这方面的人才却很重要, 薪水也很高,因为它的学习成本高,经验也非常重要。

第二、业务应用层开发语言。

这类开发语言主流的有.NET、Java、PHP等。之所以把这些语言称之为“业务应用层”开发语言,是因为这些语言开发的软件一般都是直接和我们使用者打交道的,是为了提高我们的工作效率或实现某种信息交互(比如电子商务网站等类型的应用)而开发的。这些开发语言也是现在大多数软件开发者在工作中使用的,需求潜力巨大,学习成本低,是我们大多从业者需要学习的。 那么如何正确的区分这三类语言,并选择一个适合自己的开发语言来学习呢?

1. 首先说java语言,因为这个语言出现的比较早,企业使用的也很多,现在的应用范围也是非常广泛的。 Java语言在web开发领域具有很强的竞争力,这种竞争力源于本身语言的强大性。目前,Java2平台有3个版本, 它们是适用于小型设备和智能卡的Java 2平台Micro版(Java 2 Platform Micro Edition,Java ME)、 适用于桌面系统的Java 2平台标准版(Java 2 Platform Standard Edition,Java SE)、 适用于创建服务器应用程序和服务的Java 2平台企业版(Java 2 Platform Enterprise Edition,Java EE)。 从上面三个版本相信大家能看出java语言在桌面系统开发、web开发、移动设备开发等都被广泛使用, 但web和移动设备开发更是java的强项,java语言之所以被广泛应用还有另外一个重要特点就是开源性, 这样全世界的开发者都可以为java语言奉献自己的力量,使得java框架的类型非常繁多,并且更新速度快。 由于java是开源框架,所以企业在使用的时候成本几乎可以忽略不计。最后一点,java语言还具备很好的跨平台性, 也就是不管是在windows平台还是linux、unix等主流平台,java程序都会很轻松的部署和维护,这一点尤其受企业的青睐。 java语言还有好多优点,这里我们就不多说了,当然任何语言也会有自己的不足,java语言应用非常广泛,但学习成本比较高, 因为是开源框架,需要开发者时刻关注版本的变化,开发者在轻松享受别人贡献的同时,也带来程序调试的困难。

2. 下面我们简单说一说PHP,现在好多企业网站也都是用PHP做的,如果您看到浏览器地址栏里面最后结尾处有.php, 那么该网站一定有php网页。那么PHP有哪些优点和不足呢?下面我们看一下:

PHP和java语言以及.NET平台开发语言不同,它是将程序嵌入到HTML文档中去执行,而java和.NET平台的开发语言 现在都是前台和后台分开设计和编写,PHP现在的黄金搭档是LAMP,也就是linux平台+Apache服务器+MySQL数据库+ PHP语言,如果用户使用这种组合形式开发出的网站,除了人工成本以外,几乎可以不支付其他额外产品费用,同时,由于PHP 的跨平台性和java一样方便,同样也深受企业的喜爱,这几年PHP也非常流行,在全国知名的淘宝网平台上面,就有很多PHP 网页,当然淘宝网的设计绝不是一种开发语言能够完成的。 PHP的语法也非常简洁,学习起来也比较容易,但PHP除了web应用外,在其他领域几乎看不到它的身影, 所以PHP语言的使用领域比较单一,同时,因为PHP程序编写的时候前台和后台代码是混编在一起的, 而java和.NET平台在设计的时候是极力避免这种情况的,毕竟混编在一起会使得程序的修改和维护带来一定麻烦。

3. 最后我们谈谈.NET,.NET(英语读作dot net)我们习惯于读作“点儿”NET,其实这是不正确的读法, 但是大家都习惯了也无所谓,在正式场合还是希望大家按照英语的标准读音使用,别的少说,我们看看.NET是怎么回事。

首先,我们要分清几个概念:.NET、C#、VB、VC++等,虽然这些是大家经常说的,但对于初学者而言却经常弄不清楚。 .NET和java一样,它是一个平台的概念,但.NET和java又很不一样,原因是java平台里面就一种java语言, 而.NET则提供了若干种语言,C#是伴随着.NET平台出现而量身定做的平台语言,在.NET平台之前是没有的, 说到这里大家就应该明白了,.NET是程序开发和运行的平台,在这个平台基础之上开发者可以选择自己喜欢的开发语言, 比如C#、VB.NET、VC++.NET等,C#语言继承了C、C++和java语言的优点,重新整合设计,所以C#语言非常容易学, 其语法结构和java及C++非常相似,尤其是java,因为都是完全的面向对象语言,两者语言特性几乎都能吻合在一起。 而VB.NET和VC++是在以前非.NET平台的时候就有了,而且当时VB的程序员是一统天下,当微软推出.NET平台的时候, 肯定会把VB的程序员和VC++的程序员吸引过来,所以.NET平台下的VB.NET和VC++.NET,是平台的移植, 这样在.NET平台下的C#、VB.NET、VC++.NET三种主流语言并驾齐驱,您可以任意选择,同时,这三种语言的开发者, 在开发同一个项目的时候,可以完全根据需要选择语言类型,不同语言开发的模块,可以直接使用,而不像其他语言那样, 如果一个模块使用了其他语言编写,要想集成到自己的项目中会变得非常麻烦,而微软的.NET平台对多语言编程简直就是 一个彻底的颠覆!这也是.NET平台大一个重要特点之一:跨语言,而java和PHP是跨平台,.NET也可以实现跨平台,但 是在linux和unix平台上部署的时候相对麻烦,这也是它的一个小小不足,但是毕竟微软的windows平台在全世界是占有 率最高的,所以主流的平台依然是windows,这一点是不可否认的。 谈到这里,大家也许要问了,每个语言都有自己的优缺点,那我究竟该选择哪一个呢?好,那我就把我的想法和大家谈一下, 我个人建议初学者学习.NET平台的C#语言。原因如下:

(1).NET平台现在的版本是2.0、3.5、4.0,从2.0开始就是一个非常成熟的平台,后面都是完全继承前面的, 这个请大家放心。微软在世界的地位是人人皆知的,有这么强大的公司做支持,大家完全可以不用担心产品的使用问题。

(2)C#语言语法简洁、完全的面向对象特性,当然最关键的是和.NET平台同时推出的Visual Studio开发工具, 现在发展到了2010版本,这个开发工具的出现令世界震惊,因为程序的编写、编译、调试、发布于一体,而且最关键的是这 个开发工具的调试能力是如此强大,当您编写的程序语句有语法或其他错的时候,编译会直接给你指向错误的语句,并且告诉 您这是怎么错误,并适当给出解决方法,这一点对于初学者而言是相当关键的,初学者在学习的时候最害怕的就是出现错误不 知道从哪里修改,而VS这个开发工具的使用让初学者完全不必担心错误解决问题,就这一点是其他任何开发语言的开发工具 都无法比拟的,就凭这一点初学者您有什么不能完全接受C#呢?

(3)强大的类库、MSDN帮助文档和唾手可得的各种控件无疑给开发者又增加了很多乐趣,当然这种乐趣是基于开发的 高效率而言的,尤其是开发桌面应用程序,强大的控件,可以让开发者节省约70%的代码量,就这一点其他开发语言更是无 法相比的,试问,不管你是初学者还是有经验的高手,难道你在开发中和效率过不去吗?如果C#能用一天的时间搞定,你非 得选择其他语言用一周去搞定吗?当然也有好多人说.NET就是拖放控件,我也遇到过,但凡跟我说这样话的人都被我扁的一 文不值,我不想说别的,只想告诉大家,说这些话的人是因为他们根本就没真正做过.NET开发,或者根本就不了解.NET。

(4)我建议大家学.NET,不是说其他语言不好,刚开始我说java和php一直说他们的优点,我是想告诉大家, 开发语言之间没有好坏之分,主流语言都是非常棒的,而我们今天要谈的是对“初学者”而言,记住是“初学者”, 因为您还不懂开发语言,而C#的特点是非常适合初学者的,您可以学习很短的一段时间就能做项目,而java语言你要学习很 多框架,框架的使用对于初学者而言还是有难度的,并且程序的调试有时候真的就足以让初学者头疼的连吃药都不管事, 当然我这个有点夸张,呵呵。而php呢,虽说非常强大,但应用领域单一,而且代码混编,看不出您的个人真实水平,因为 我们要学习开发语言之外的“面向对象思想”,PHP做为面向对象语言,去无法很好给初学者体现出这一点。而当您学完C# 以后,等到工作了,想学java了,那会变得非常轻松,因为“面向对象”思想都是一样的,您只需要熟悉一下语法的区别、 类库的区别和框架的使用就可以了,如果您学C#用了一年搞定,那么再学java两个月就可以搞定了。而PHP呢,我只想告诉 大家,如果您真的在工作用到了,必须得学的时候,再看看吧。

最后,用一句话概括一下,开发语言没有优劣,初学者选择入门语言却非常重要,学习.NET平台下的C#语言, 您将会在学习的过程中其乐无穷!


版权所有:喜科堂

2016主流编程语言的详细对比

如果你正在考虑从哪里入门编程,看完这篇你也许会清晰一些。这篇文章给大家详细对比9门主流编程语言,有需要的朋友们可以一起看一看。 在学习编程之前,我们需要清楚学习编程的目的和方向,了解每种语言...
  • z4909801
  • z4909801
  • 2017年02月22日 22:42
  • 4457

如何正确选择开发语言

对于想学习软件开发的人来讲,您肯定对软件开发有了一些了解,但您在决定学习之前, 肯定也会遇到一个问题,那就是学什么语言?因为您看到身边的朋友或同学,有的学.NET,有的学java, 有的学PHP,有的...
  • xiketang
  • xiketang
  • 2013年03月19日 10:45
  • 356

主流WEB开发语言简单对比

主流WEB开发语言简单对比 随着时间的飞逝,随着岁月的流失。从世界上第一台计算机ENIAC诞生至今,已经有将近半个世纪了。经过这半个世纪的语言发展,我们所接触的语言基本上都是高级语言了。这篇文章...
  • cuihongxing1010
  • cuihongxing1010
  • 2013年02月03日 13:35
  • 11994

学习游戏要学习编程语言吗?十大主流编程语言解析

计算机的发展,促使了一个新的职业的出现,程序员是近些年出现的并且得到了广泛关注的一个职业,相信这也是很多莘莘学子的职业梦想。但程序员也有很多种,并不是每一个程序员能够精通所有的编程语言。所谓术业有专攻...
  • liuyuyefz
  • liuyuyefz
  • 2014年06月26日 10:35
  • 14123

商业项目中最受欢迎的 7 种编程语言

Elixir Elixir 是一个相当年轻的语言,自然几乎所有的项目都是基于最新版本的。40% 的项目使用的是今年发布的Elixir 1.4 及以上版本,该版本于 2016 年 1 月 1日发布...
  • u012017783
  • u012017783
  • 2018年01月07日 20:05
  • 111

对比现在各种主流语言的优劣

Java java:分三大平台 java se (j2se),java ee(j2ee),java me(j2me) java se是java ee和java me的基础 java ee是目...
  • zxcznh2011
  • zxcznh2011
  • 2014年08月10日 19:22
  • 547

2016 年最受欢迎的编程语言是什么?

这两天 GitHub 对其官网进行了改版,紧接着又发布了一年一度的开源报告,我们程序员比较关心之后的趋势是什么,而 GitHub 毫无疑问代表了全世界编程领域的趋势,我们不妨先来解读下这份报告,然后再...
  • googdev
  • googdev
  • 2016年09月18日 15:45
  • 90685

主流web服务器介绍

前言:     转载请标明出处。     本文主要描述几种主流web服务器之间的对比,以便在不同的场景下,选择不同的web服务器,分为基本概念、web服务器、web容器对比 基本概念: ...
  • dylnuaa
  • dylnuaa
  • 2014年05月02日 13:54
  • 1282

未来物联网全栈开发 的主流语言是什么?

CSDN推出的讨论话题是:未来物联网全栈开发主流语言是什么? 小虎老师,从考试角度来分析此题,也就是先要审题,抓住几个关键信息: 1.未来的 2.物联网 ...
  • littletigerat
  • littletigerat
  • 2017年05月10日 20:02
  • 2874

谈谈编程语言的选择

常常有新人问我,我该学哪一门编程语言呢?编程语言太多了,我都不知道该选择哪一门编程语言来深入学习了!是的,我也曾被这个问题所困恼,当初学习软件编程时也经历了C/Java/C#这样的路线,后来我也接触并...
  • guwei4037
  • guwei4037
  • 2016年03月09日 10:53
  • 4431
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何正确选择主流开发语言?
举报原因:
原因补充:

(最多只允许输入30个字)