北大青鸟java培训:Java和.net哪个发展好?

Python011

北大青鸟java培训:Java和.net哪个发展好?,第1张

最近有朋友向我咨询.Net和Java应该选择哪一个学习?其实从个人就业角度出发,先了解下自己所在地区对net和java招聘需求及薪资,然后决定学习哪一个。

从目前行业角度来说java会比net好,但是随着net这两年在移动端及跨平台上的发展,目前在一线及it环境好的地区net的需求也在不断增长。

那么到底选择哪一个来学习?今天java课程http://www.kmbdqn.cn/就和大家说说!.Net和Java是国内市场占有率最高的两门技术,对于准备学习编程语言的初学者来说,.Net和Java是初学者首先考虑的两门技术,一次很多人都不知道该如何选择。

学java的朋友认为java好,学.net的童鞋认为.net具有优势,下面为大家具体分析一下,两者的优劣势,方便大家更好的选择。

1.首先从工作职业说起:Java的工作职位一般情况下是.net的3倍,但是学习java的人比学习.Net的人高出3倍,因此.Net职位的竞争激烈程度低于Java。

2.学习的难易程度:.Net入门快,在.Net中微软为开发人员提供了一套最佳的技术架构搭配、集成的开发环境,用微软的技术架构开发出的系统就可以保证最好的效果,而Java开发人员要去学很多开源框架再去学习搭建技术架构、开发环境,如何要比.Net慢很多。

因此.Net的学习周期短,而Java的学习周期长。

但是不能说.Net就要比Java简单,在工作中还是要不断的学习进步,才能满足项目上的需求。

3.学习的参考资料:学习.Net有大量的中文资料可以参考,因此除非研究很高深的领域,否则中文资料基本能满足开发者的需求而Java则英文资料比较多,一般好的开源框架都是老外研究出来的,有的几乎没有中文文档,所有如果你的英文很差建议学习.Net,英文非常好的学员学习Java就会很轻松。

没有十全十美的东西,编程语言与平台也一样,无论是java还是.net,都有其长处与不足之处,单从应用语言的方面来看,在.net平台上最好的是C#,C#语法与java极为相似,而且比java诞生要晚,所以对于C#的设计者来说,可以看到java的不足并加以改进,这是时机的小小优势,但是从编程语言排行榜上明显可以看出,编程语言与平台有很大的相关性,.net平台用过的都知道,非常庞大,而且是收费的,所以C#的市场份额增长速度很慢,但是java就不同了,java有很多开源项目,而且提供免费的开发平台,所以目前编程开发方面java仍然占有较大的市场。这是平台方面。另外,java的跨平台性要优于.net,现在的专业公司一般不会采用windows,主要是从成本和安全性考虑,所以,如果考虑开发的东西能在linux下很好的运行,一般会选择java,.net虽然当前可以在mono下实现跨平台,但是这是由其他公司完成的,并非微软官方提供,所以在功能上会有所限制,这是跨平台方面。有利也有弊,所有的东西都在不断发展,只要你能学的好,学什么都是有前途的,看你自己了……

C#.net优点:

运算符重载。不安全代码(指针和固定内存区)、 无符号整数、移位运算。

VB的优点: 

即时编译、静态事件绑定、条件异常捕获、COM兼容类、宽松的类型检查和变量声明、Visual Basic Runtime库、可选参数、带参数属性、模块等语言特征、动态数组。

通过VB.NET开发好的程序绝对没有问题(包括Direct X游戏开发)。虽然VB.NET的资料少,但是只要C#支持的VB.NET都支持(大体上这样,因为都要经过MSIL中间环节。除了指针之类的VB.NET不支持C#支持,但是没有多大实际用处)。

vb.net的资料以英文资料居多(只有英文资料才有看头,中国的没有什么好资料),得看看英文水平过不过关。还有VB.NET的ide也比C#的IDE好得多,代码看得也舒服。(C#的大括号{}太烦人)。

至于VB6对C的帮助,只是理解上会容易一些,其它用处不大。有VB6的基础学VBNET会方便一些,但是并不是会VB6就会VB.NET,它们差别也不小。

扩展资料:

NET、C#和ASP.NET之间的区别 :

1、NET是一个平台,一个抽象的平台的概念。

NET 平台其本身实现的方式其实还是库,抽象层面上来看是一个平台。

基本可以理解的NET核心就是NETFramwork。

NETFramework包括两个关键组成元素:

a. CommonLanguageRuntime,公共语言运行时(CLR0)-提供内在管理,代码安全性检测等功能。

b. NETFrameworkClassLibrary,.NET 框架类库(FLC)-提供大量应用类库,提高开发效率。

学习NET Framework 是所有.NET开发人员都必须的,否则开发NET程序永远都是停留在‘外功’的招式,NETramework 是NET开发高手的‘内功’修行之一。

2、C#是一个程序设计语言,仅仅是一个语言。

程序设计语言仅仅是为了方便开发人员和计算机沟通的工具,虽然 C#语法相对 C 和 C+要多一些,但是相对来看 C#语法都比较固定,这样使用起来却都很容易。我认可一位朋友说的,C#的语法更严谨!

这里回过来看看NET和C#的关系,不得不提的是NET程序的执行过程。

C#符合NETCLR 中的公共语言运行规范。CLS:commonlanguagespecification,当然所有的NET Language 都是符合这个规范的例如:VB.NET、XAML 和 C++/CL等等。

C#需要符合NETCLS,是因为NETCLR和JAVA虚拟机类似,有一个中间语言共机器来执行。所有不同语言的.NET代码在执行前会被编译成同样的中间语言(MSIL),所以所有NET 支持语言都必须符合符合CLS 规范。

P.S:如果做.NET3.0XAML开发的朋友,可以尝试下ildasm.exe看看XAML的应用程序,会发现原来 XAML其实很简单。

3、ASP.NET是一个网站开发的技术,仅仅是.NET框架中的一个应用模型。

用微软公司ASP.NET快速入门中的一句话来解释,ASP.NET是用于生成基于Web的应用程序的内容丰富的编程框架。

ASP.net 和C#的区别:

编写asp.net通常包括两部分的代码:网页层和后台处理层,网页就是用标记语言来写的,而网页对应的后台处理程序则需要.net语言来完成,目前主要是采用c#和vb.net。

可以说整个的asp.net网站通过c#或者vb.net来实现。而c#则是ms .netframework的主要语言,可以用在网站,桌面应用等方面。可以算是一种比较流行的编程语言。