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

来源:互联网 发布:2014最新网络红歌 编辑:程序博客网 时间:2024/06/12 22:03

对于想学习软件开发的人来讲,您肯定对软件开发有了一些了解,但您在决定学习之前, 肯定也会遇到一个问题,那就是学什么语言?因为您看到身边的朋友或同学,有的学.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#语言, 您将会在学习的过程中其乐无穷!


版权所有:喜科堂