论:开发者信仰之“天下IT是一家“(Java .NET篇)

news/2024/11/17 21:27:13/

比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代。

2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁。

2013年他与微软做了最后的道别。

2013年以后,我才真正看到了微软的变化。尤其是它的“云优先,移动优先”的战略,这才是符合新时代潮流的大势。

今天,既然我们重点是来讨论Java与.NET领域的,那关于微软的是是非非且放置脑后。我说.NET看起来更新很快,目前只是在弥补曾经犯下的错。

那.NET之前究竟错在哪里。.NET既然是微软实现跨平台与Java竞争的利器,那么它在Java兴起多少年之后,才渐渐的崭露头角。可谓后起之秀,它在吸取了C、C++和Java等语言的优点后,加入一些.NET自己的设计理念,形成了一个多语言、多平台的.NET Framework框架。如果一定要拿.NET和Java做对比的话,我认为,至少要从两个方面来看。

第一、设计理念:

1>Java不言而喻,了解Java历史的人,都应该清楚。致力于打造一款可以一处编写、到处运行的开发利器。像它的名字一样,使你在开发的过程中,领略到咖啡质地的苦味和醇厚的香气,其中的酸苦香甜总是
耐人寻味。它作为中间语言,总要依赖于JVM,这也是无可厚非的。Sun的光辉已经不复存在,Oracle的步伐略显迟钝。Andriod的兴起,给Java注入了新的活力,使其在世界编程语言榜上独站鳌头。

2>.NET与Java的很大不同之处,在于,.NET是一个致力于打造一个多语言多平台的软件框架。.NET设想能把不同语言、不同习惯的开发者,都聚集起来,使他们能共同参与到一个项目里来,于是,就会有了C++、
C#、VB、F#等语言的开发者,用其所长,共同来完成一件事情,岂不壮哉。是软件领域,首次超越了语言的界限,进入软件开发领域的“国际化”。.NET与Windows与生俱来的先天优势,借助于Windows全球的市场
占有率,很快的推广开来。道家言“福之祸所依”,正是.NET这种先天优势,使.NET与Windows相生相克。为什么这么说呢,因为.NET依赖Windows而生存,Windows须借助.NET强大的功能来赢得市场份额,或者说是
稳定PC市场。.NET要发展壮大,必须脱离Windows而独在,可在2013年之前,处于市场战略考虑,.NET不得不臣服于Windows,受其平台束缚。这犹如森林的猛虎,被猎人(MS)绑住了四脚,眼看前方的羊群,即使它有再锋利的爪牙,再怎么的饥饿难耐,也只能为自己的目前的处境,哀婉叹息,望穿了山林。我说.NET Core是弥补曾经犯下的错,这也不为过,.NET的跨平台,曾经常被人们拿来炒作,这是.NET的痛,现在用.NET Core来医治这个伤口。

.NET框架组成:(Winform、WPF、Silverlight、WCF、WebForm、ASP.NET(MVC、WebApi))

3>Java也好,.NET也罢,其作为中间语言,都需要依赖于某种框架。Java有JVM,.NET有.NET Framework。都是面向对象的语言。Java可以实现的,.NET照样可以移植过来。

第二、市场概况

1、成熟度:很多大的企业都是运用Java语言来进行产品研发的。很多开源的项目,都是Java来编写的。原因有很多。Java毕竟比.NET早兴起了很多年。它们有许多优秀的案例和成熟的框架。

市场氛围:在中国,有种怪现象,很多开发者,对微软是存在或多或少的偏见的,可能是因为微软总是喜欢问他们要钱,中国人最不喜欢谈“钱”字哈。是存在利益冲突的。这样一群人,只要听说微软的什么什么,第一个想到
的不是先去了解,而是极力的斥责反对,还鼓动身边的人,不要听微软瞎摆豁。难道都忘了,不了解就没有发言权这句话了吗?我曾在一篇博客的评论中,斥责评论中的一些人,他们每天都用着微软的东西,嘴里却总数落着微软的
不是,这岂不是自己在打自己的脸嘛。我觉得,我们应该客观的看待事情,不要带有感性的色彩,最后误人误己,何苦呢?

2、安卓的兴起:随着Andriod的兴起,国内,又一批类似DN这样的IT培训机构,又借此,以IT人才匮乏为由,大肆吹嘘,夸大其市场就业率。高昂的培训费用,使多少盲目从事的新人,在面临一次又一次的失业中,悔不当初。

3、另外,linux的风行,给之前封闭的.NET家族不少冲击。阿里曾称:“我们的所有服务和平台都运行于Linux。”。听起来,多么高大上啊。京东的技术架构、淘宝这十年等这些经验,都在警告.NET,你不拥抱linux,我们就放弃你。

.NET的开源,振奋了整个.NET领域。有一群,或者很多群,开发者正积极参与.NET的开源事业中,他们勇于创新和实践,将.NET领域的最新技术,应用与实践。或许,已经有很多公司已经在默默使用微软这些技术了。

《StackOverflow的最新架构:.NET技术+25台服务器怎样支撑世界第53大网站》,它的成功,更加鼓舞了.NET开发者的信心。微软对Docker技术的支持,正象征着微软这头沉睡的狮子,依然觉醒了,它依然威武雄壮。

每一个开发者,都应该有自己的信仰,这也是IT文化的一种传承吧。那有人会问,Java开发者的信仰来自哪里?Java开发者的信仰,自然是Java语言自身。我认为,它来源于对Java语言的自信,它有广阔的前景市场,有丰富的框架资源,有令人满意的待遇收入。

.NET开发者自然也有自己的信仰,那就是.NET平台。相信.NET的觉醒,会使更多的企业和开发者,投入到.NET的怀抱。

既然从事Java和.NET的人,都是有信仰的,那我们又何况用自己的信仰去嘲笑另一种信仰呢?中国几千年了,道教和佛教,依然和平相处着。春秋时,诸子百家争鸣,也未尝听说有互相攻击的事件发生,他们可以通过自己的信仰学识,
向当政者,阐述自己学派的主张。我们也可以通过我们的信仰,在不同的领域共存,很有可能,会在未来某个时间,Java和.NET会一较高下。平台有了,接下来,要看的,就是我们这些来自Java .NET不同学派的学子们,如何在中国这片
锦绣山河中,各领风骚,崭露头角了!

所以,在以后的生活里、社区里、博客里、论坛里,我不希望听到有“.NET不行”、“我们都用Java”、“以后要换成Java”、“大公司都用Java”、“我要转行学Java”等这样的话了。

最后,想说的是,Java和.NET,亦师亦友,抛开学派的偏见,以合作的精神,共同去完成一件事情,岂不快哉!也顺应了这个时代的发展,创造更多的价值!也恳请,企业同仁们,不要受少数偏执派的影响,勇于去接受新生的事物,“海纳百川,有容乃大。沟壑千里,无欲则刚。”。在这里,我倡导,“天下IT是一家”!


http://www.ppmy.cn/news/46169.html

相关文章

LeetCode 2409. 统计共同度过的日子数

原题链接:2409. 统计共同度过的日子数 Alice 和 Bob 计划分别去罗马开会。 给你四个字符串 arriveAlice ,leaveAlice ,arriveBob 和 leaveBob 。Alice 会在日期 arriveAlice 到 leaveAlice 之间在城市里(日期为闭区间&#xff0…

hashCode 如何计算?这一篇就够了!

介绍 hashCode 中文‘散列码’,存在的意义是加快查找速率,可以在常数时间内进行寻址操作。 存在意义 它被定义在 Object 中,而 Object 类是一切类的父类,所以所有的方法都具有这个方法。 Java 中 hashCode 计算方式如下&#x…

Celery使用教程完整版【从安装到启用】

Celery是一个基于Python开发的异步任务队列,可以实现任务的异步调度和处理。 以下是Celery使用教程的基本步骤: 安装Celery库 使用pip命令安装Celery库: pip install celery 创建Celery实例 在项目的Python文件中创建Celery实例&#x…

浅谈兼容性测试

兼容性测试的概念 兼容性测试是一种软件测试,用于确保构建的系统/应用程序/网站与其他各种对象(如其他网络浏览器、硬件平台、用户、操作系统等)的兼容性。这种类型的测试有助于了解产品在特定环境中的表现。 为了方便理解,可以…

ESP32设备驱动-BME680环境传感器驱动

BME680环境传感器驱动 文章目录 BME680环境传感器驱动1、BME680介绍2、硬件准备3、软件准备4、驱动实现1、BME680介绍 BME680 是一款集成环境传感器,专为尺寸和低功耗是关键要求的移动应用和可穿戴设备而开发。 BME680 扩展了 Bosch Sensortec 现有的环境传感器系列,首次集成…

U盘独个文件不能超过4GB的原因——U盘的文件系统

U盘独个文件不能超过4GB的原因——文件系统 一 背景1.1 文件系统1.2 “簇”/”群集“1.3 文件系统的历史1.3.1 FAT1.3.2 exFAT(扩展文件分配表)1.3.3 NTFS1.3.4 HFS1.3.5 APFS 1.4 文件系统缺陷的渊源1.5 文件系统缺陷的解释1.6 报错原因 二 文件系统的比…

【STL】Vector容器

1、vector基本概念 vector数据结构和数组非常相似,也成为单端数组 vector与普通数组的区别:数组是静态空间,而vector可以动态扩展。 动态扩展:并不是在原空间之后继续新空间,而是找更大的内存空间,然后将原…

Layui表单元素.上

学习要点: 1. 表单元素 本节课我们来开始了解 Layui 表单元素的基本使用。 一.表单元素 1. 表单我们分两节课来说,第一节,先按套路做出一张表单; 2. 第二节:分析每个表单的基本功能和样式属性的变…