话说回来,一门编程语言怎样具有影响力呢?
稍稍理解一下主要的编程语言的情况就略知一二了。
如果说最好的编程语言是什么,可能会打的头破血流那种。
但如果说最常用的五个编程语言。
倒是争议不算太大。
无外乎就是Java、python、C/C++……这些。
Java常常跟”企业”联系在一起。
因为Java具备一些很好的语言特性,以及丰富的框架,在企业应用中最被青睐。
Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE。
这三块相互补充,应用范围不同。
Java可以做的东西很多,可以做游戏、做网站、做各种管理系统。
J2SE就是Java2的标准版,主要用于桌面应用软件的编程;
J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;
J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
同时,Java在手机领域也有一席之地,在普遍智能化之前,很多手机就是以支持java应用作为卖点的。
而智能手机爆发之后, Java手机主场变成了Android,作为安卓的标准编程语言而存。
Python由于具有丰富和强大的库,它又叫做作胶水语言。
Python能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
Python 的应用领域分为系统编程,用户图形接口,I 脚本,组件集成,数据库编程,快速原型,数值计算和科学计算编程,游戏、图像、人工智能、XML 、机器人编程等等。
常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。
除此之外Python还可以用作服务器开发与物联网开发。
至于说C/C++理论上说可以做任何开发,只要有合适的硬件驱动和API。
C/C++特点是效率高,基本上是编译语言里面效率最高的。
除非你的系统中连C/C++编译器都不具备,否则C/C++基本上可以乱杀。
就算某些系统当中C++编译器是不具备的,但是C一般都具备。
这种情况下,C语言主要用来开发底层模块(比如驱动、解码器、算法实现)。
甚至于可以用作服务应用(比如web服务器)和嵌入式应用(比如智能洗衣机里的程序)。
C++也可以做这些,不过由于C++的复杂性和标准问题,人们还是更愿意使用C来做。
相比于C语言,C++更适合比较复杂但又特别需要高效率的设施,比如大型游戏,一些基础库,大型桌面应用。
从上述语言的特点来看,不难看出之所以这些语言能够流通广泛很大程度是因为这些语言很强大且几乎都拥有很强的普适性。
这些语言之所以能有很强的普适性。
除了这些语言设计的时候考虑的内容比较全面有关系。
除此之外,跟这些语言问世的时间比较早有很大的关系。
C语言于1969年至1973年间出现,1990年代初有了Java语言的雏形,python则是1991年正式出现。
这些语言因为问世的时间比较早,长期的传播使得技术用户基础明显要更广。
而用户在长时间的使用过程中不断发掘一门语言的新用法也是很正常的。
这些新用法反过来又反哺了这些编程语言,促进了这些编程语言在技术人员中的流通性。
上述编程语言的发展思路固然不错。
但这需要时间去沉淀。
一门新的编程语言想要迅速拥有知名度。
指望这种用时间沉淀的路子明显是行不通的。
别说是用时间沉淀了。
有的时候一门全新的语言刚问世的时候想要拥有一定的技术人员作为拥护者可能都很难。
总之,由个人搞出的编程语言大概率会是无人问津。
但如果背后有大公司强推进行助力的话。
事情则不一样了。
前世的Swift能够一度跻身十大编程语言之列。
跟蘋淉在后面的助力就有很大的关系。
无独有偶,大公司“捧”出来的编程语言其实有很多案例。
最典型的案例要数C#编程语言了。
这门语言精通有难度,但上手的话其实不是很复杂。
很多技术人员都涉猎过C#这门语言。
不过却并不是有很多人知道C#这门语言的背后是微软。
当初之所以要搞C#这样一门编程语言是因为当时微软准备推出的一种基于.框架的、面向对象的高级编程语言。
就技术渊源这方面来说,C#是一种由C和C++衍生出来的面向对象的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性,使其成为C语言家族中的一种高效强大的编程语言。
ET框架类库作为基础,拥有类似Visual Basic的快速开发能力。
C#这门编程语言由安德斯·海尔斯伯格主持开发,微软在2000年发布了这种语言。
当初微软之所以要搞这门语言,是因为微软希望能借助这种语言来取代Java。
尽管直到林灰重生那会C#也没能正式将Java取而代之。
但因为C#的背后有微软这样的巨头不断输血。
即便是C#未能取代Java,也丝毫不影响C#成为一门颇具有知名度的语言。
大公司如果愿意在背后输血的话。
疯狂助力之下对一个编程语言的商业化和规模化之路所起到推动的作用是巨大的。
像微软这样的科技巨头能“捧”热一门编程语言。
而跟微软体量差不多的蘋淉公司。
想助长一门编程语言的成长同样也是有相应的实力的。
话说回来,如果这个时空SWIFT编程语言项目存在的话以林灰同蘋淉越来越密切的合作关系想要涉足这样的一个项目是有操作空间的。
但如果这个时空Swift语言这块拼图缺失的话,而且蘋淉内部也没有Swift语言相对应的项目的话。
林灰凭什么有把握让蘋淉内部对Swift语言这样的项目产生浓厚的兴趣呢?
毕竟此前的Objective-C就已经有着千丝万缕的联系了。
此时的蘋淉的行业地位已然不需要通过搞一门编程语言来证明自己的实力了。
林灰觉得正是因为此前的Objective-C就和蘋淉有着千丝万缕的联系。
才让到时候林灰有可以上下其手的空间。
为什么这样说呢?
就Objective-C这门编程语言的发展史来说。
这门编程语言最早主要由 Stepstone 公司的布莱德·考克斯(Brad Cox)和汤姆·洛夫(Tom Love)在 1980 年代发明。
1981年 Brad Love 还在 ITT 公司技术中心任职时,接触到了 SmallTalk语言。
Cox 当时对软件设计和开发问题非常感兴趣,他很快地意识到 SmallTalk语言在系统工程构建中具有无法估量的价值,但同时他和 Tom Love 也明白,目前 ITT 公司的电子通信工程相关技术中,C 语言被放在很重要的位置。
于是 Cox 撰写了一个 C 语言的预处理器,打算使 C 语言具备些许 Smalltalk 的本领。
Cox 很快地实现了一个可用的 C 语言扩展,此即为 Objective-C语言的前身。
到了 1983 年,Cox 与 Love 合伙成立了 Productivity Produational(PPI)公司,将 Objective-C 及其相关库商品化贩售,并在之后将公司改名为StepStone。
1986年,Cox 出版了一本关于 Objective-C 的重要著作《Objeted Pr, Aionary Approach》,书内详述了 Objective-C 的种种设计理念。
1988年,斯蒂夫·乔布斯(Steve Jobs)离开蘋淉公司后成立了 er 公司, 公司买下 Objective-C 语言的授权,并扩展了著名的开源编译器GCC 使之支持 Objective-C 的编译,基于 Objective-C 开发了 AppKit 与 Foundation Kit 等库,作为 EP 的的用户界面与开发环境的基础。
虽然 工作站后来在市场上失败了,但 上的软件工具却在业界中被广泛赞扬。这促使 公司放弃硬件业务,转型为销售ep(以及OpenStep)平台为主的软件公司。
1992年,自由软件基金会的 GNU 开发环境增加了对 Objective-C 的支持。
1994年,er公司和Sun Mi联合发布了一个针对 EP 系统的标准典范,名为 OPEEP 在自由软件基金会的实现名称为 GNUstep。
1996年12月20日,蘋淉公司宣布收购 ware 公司,EP环境成为蘋淉操作系统下一个主要发行版本OS X的基础。这个开发环境的版本被蘋淉公司称为Cocoa。
……
从Objective-C这门编程语言的发展历史上不难看出。
Objective-C这门编程语言虽然是和蘋淉有着千丝万缕的联系。
但更准确形容的话,与其说这门编程语言和蘋淉有着紧密的联系。
不如说和蘋淉故去的上代掌舵人乔布斯有着极其密切的关系。
自库克掌舵蘋淉之后,虽然产品线的布局和蘋淉乔布斯在的时候八.九不离十。
但其实内在很多东西其实都在试图在追求去乔布斯化。
虽然说像技术方面是“一朝天子一朝臣”这种模式不是刚需。
但对于像库克这样一个一直试图走出后乔布斯时代而开创属于自己的新时代的掌舵人来说。
林灰觉得库克应该很难对于这样的一门相比于Objective-C焕然一新的Swift语言说不。
林灰觉得库克应该很难说不。
尤其是像Swift这样一门语言前世就是蘋淉方面鼓捣出来的。
Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。
Swift 在 Mac OS 和 iOS 平台可以和 Object-C 使用相同的运行环境。
在具体语法上,Swift和分号说拜拜了,语法更加简洁明了。
林灰相信这样的语言会契合蘋淉方面的审美。
而且蘋淉内部也不是铁板一块。
至少此前同伊丽莎白·妮诗的交流种。
就没少听伊丽莎白·妮诗吐槽Objective-C这门编程语言。
林灰相信蘋淉内部以及广大的软件开发者中和伊丽莎白·妮诗持有相同态度的人绝对不是少数。
总之,林灰有把握让蘋淉对类似于Swift这样的编程语言感兴趣。
……
话虽如此,一切还要看这个时空“Swift语言”究竟是什么情况。
再伺机从中施为。
在没有搞清楚这个时空究竟是什么的情况的时候。
以上这些或许是只能称之为粗浅的想法。
具体到真正落实的不知道又是什么时候。
尽管这种提前的思考似乎是有些枯燥。
但林灰是很清楚的,凡事预则立不预则废。
不提前做好周密的预案涉及到这种重大的项目想要信手拈来那是不存在的。
林灰在此之前还要不断的“练级”,同时提高自身的综合能力和实力。
毕竟机会只垂青有准备的人。
……
当然心中想的这些林灰也没同黄静说。
只是抱怨了几句蘋淉这次全球开发者大会没啥干货。
黄静也是深以为然。
似乎突然想起了什么。
黄静告诉林灰:
蘋淉方面因为考虑到林灰最近要忙于很多软件交接。
尤其是林灰要就快捷指令这个软件进行一系列升级工作。
为了避免林灰分身乏术,林灰大可以不必亲自远赴重洋领所谓的蘋淉设计大奖。
林灰只需要提前录制一段90秒之内的获奖感言就可以了。
当然如果林灰坚持去参加此次蘋淉全球开发者大会的话。
蘋淉方面也是乐意之至的。
坚持参加?
怎么可能。
事实上,当初林灰虽然对获得蘋淉设计大奖欣喜若狂。
但也仅仅是当时而已。
彼一时,此一时也。
随着林灰的迅速成长,以及声望之类的看不见的东西在增长。
此前林灰曾经很看重这奖项。
不过现在的话这样的奖项并不能说是很入林灰的眼。
至于这种变化,也别说什么反复无常之类的。
事物本就是在否定之否定中发展的。
而且古人也说了,向之所欣,俯仰之间,已为陈迹。
曾经很心心念的东西,很快就不感兴趣这也是人之常情。
此前林灰只是碍于和蘋淉方面一直是合作很紧密,故而没推月兑这次全球开发者大会。
但既然是现在蘋淉方面表示了林灰很繁忙的话不用远渡重洋参加这次全球开发者大会也是可以的。
林灰对此当然是乐意之至。
毕竟短时间内林灰还是有很多事情要处理的。
现下这样安排倒是省却林灰很多麻烦。