WebObjects的来龙去脉
程序员文章站
2022-03-01 12:47:56
...
在知乎上回答的一个问题:http://www.zhihu.com/question/20284092
苹果用的是WebObjects框架,运行在Java虚拟机上,开发语言是Java。
http://en.wikipedia.org/wiki/WebObjects
WebObjects是乔布斯Next时期搞出来用来做Web开发的纯面向对象的框架,比SUN后来搞的J2EE先进很多,事实上从2002开始Java开源运动颠覆J2EE搞MVC,搞ORMapping,搞工作流什么的,最终这些东西在WebObjects当中都实现了,而且自成体系。
多说一句,WebObjects是1995年搞出来的,SUN的J2EE大概是1998年搞出来的,很可能借鉴了WebObjects,但是借鉴的不成功。当时Oracle也搞了一个ORMapping框架,名字忘记了,据说也是受WebObjects影响。
那为什么WebObjects没有流行?我估计是因为Next公司当时在业界影响力太小,后来被苹果收购以后,苹果又是一家消费品公司,而且长期以封闭的姿态出现在业界有关系,大家可能对苹果不太认账,WebObjects社区太小。不过WebObjects其实还是挺优秀的,现在苹果网站都是用WebObjects开发的。
乔布斯对面向对象编程是非常迷恋的,他在停车场和Google的Eric争论面向对象编程的段子也广为人知。这可能来源于Alan Key,乔布斯的好友兼导师,在施乐搞Smalltalk那拨人的影响,后来Alan Key被乔布斯搞到苹果做Apple Fellow。
Next曾经和SUN合作搞Objective-C,后来合作破裂了,SUN搞了Java,所以Java很可能早期也受到很多Objective-C和Smalltalk影响。再后来Java如日中天,Next对Objective-C也不是太有信心,所以基于Java开发了WebObjects。这几年随着iOS和Android崛起,Objective-C和Java又火爆起来了,真是纠缠不清的冤家啊。
从渊源算起来,一个从来不会编程的乔布斯看起来对编程语言的影响还是挺深远的。或者说,当初的那个很不成功的Next公司,对后来技术领域发展的影响是远远超乎人们想象的。某种程度上来说,Next有点像施乐,虽然商业很失败,但技术影响力很远。
苹果用的是WebObjects框架,运行在Java虚拟机上,开发语言是Java。
http://en.wikipedia.org/wiki/WebObjects
WebObjects是乔布斯Next时期搞出来用来做Web开发的纯面向对象的框架,比SUN后来搞的J2EE先进很多,事实上从2002开始Java开源运动颠覆J2EE搞MVC,搞ORMapping,搞工作流什么的,最终这些东西在WebObjects当中都实现了,而且自成体系。
多说一句,WebObjects是1995年搞出来的,SUN的J2EE大概是1998年搞出来的,很可能借鉴了WebObjects,但是借鉴的不成功。当时Oracle也搞了一个ORMapping框架,名字忘记了,据说也是受WebObjects影响。
那为什么WebObjects没有流行?我估计是因为Next公司当时在业界影响力太小,后来被苹果收购以后,苹果又是一家消费品公司,而且长期以封闭的姿态出现在业界有关系,大家可能对苹果不太认账,WebObjects社区太小。不过WebObjects其实还是挺优秀的,现在苹果网站都是用WebObjects开发的。
乔布斯对面向对象编程是非常迷恋的,他在停车场和Google的Eric争论面向对象编程的段子也广为人知。这可能来源于Alan Key,乔布斯的好友兼导师,在施乐搞Smalltalk那拨人的影响,后来Alan Key被乔布斯搞到苹果做Apple Fellow。
Next曾经和SUN合作搞Objective-C,后来合作破裂了,SUN搞了Java,所以Java很可能早期也受到很多Objective-C和Smalltalk影响。再后来Java如日中天,Next对Objective-C也不是太有信心,所以基于Java开发了WebObjects。这几年随着iOS和Android崛起,Objective-C和Java又火爆起来了,真是纠缠不清的冤家啊。
从渊源算起来,一个从来不会编程的乔布斯看起来对编程语言的影响还是挺深远的。或者说,当初的那个很不成功的Next公司,对后来技术领域发展的影响是远远超乎人们想象的。某种程度上来说,Next有点像施乐,虽然商业很失败,但技术影响力很远。
上一篇: 萝卜糕为什么新年要吃
下一篇: robbin谈管理:改造团队的经验(1)
推荐阅读
-
关于引用的问题
-
一个可复用的vue分页组件
-
方便代理下单的EcStore收货地址一键分析插件,同时支持淘宝/京东/一号店,ecstore
-
php中抽象类在其方法中例化其子类来完成对自己方法的调用
-
解决Python2.7读写文件中的中文乱码问题
-
Go中的nil切片和空切片区别详解
-
PHP懂得之二:include,include_once,require,require_once之间的区别【转】
-
【已解决】angularjs的select里option显示为<option value=“? number:xxx ?“ ></option>
-
Tkinter的Checkbutton组件
-
兼容浏览器的div透明_html/css_WEB-ITnose