说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Objective-C之父Brad Cox访谈:我的编程之路

HTML文档下载 WORD文档下载 PDF文档下载
Objective-C是苹果Mac OS X 上开发的首选语言,也正因为如此促就了它的辉煌。日前,作者Dave Dribin采访了Objective-C之父Brad Cox,一起来了解下这位大神级人物,是如何看待他的编程之路的。

众所周知,Brad Cox与Tom Love一起创造了iOS/MAC平台的首选开发语言Objective-C。构建于C语言之上的Objective-C其理念来自于公认的第二个面向对象的程序设计语言和第一个真正的集成开发环境的Smalltalk。日前,原文作者Dave Dribin采访了Brad Cox,一起来了解下这位大神级人物,是如何看待他的编程之路。


Brad Cox和他的爱犬

Q:请您简单做个自我介绍以及与Objective-C的关系,谢谢。

Brad Cox:我之前在ITT实验室工作,在那里结识了Tom,我们都有兴趣为人们带来高效的协作系统,但不同于邮件和实时通讯等应用;现在人们习惯称呼这类系统为Groupware(群组软件)。我们发现在C语言上很难实现想法,当接触了Smalltalk以及面向对象的概念后,我想我们是时候要做出改变了,我们要创造一个更好用的基础平台。初期版本是有关Sed和AWK的工具集合,后来发展为基于lex和yacc的语言。而今天它还可以作为汇编语言的生成工具。

Q:方括号可以说是Objective-C的特色,请问这是您的杰作吗?

Brad Cox:是的,其实我就想看看有什么还没使用过的,花括号有了,圆括号有了,最后就是方括号了,我希望人们使用时不会与C语言等类似的混淆。

Q:有什么功能您当初想添加的,但限于当时的技术和时间等制约因素,而最后没有完成?

Brad Cox:的确曾有过不少想法。例如Smalltalk中的闭包概念,垃圾回收机制,解释型语言等。这些想法后来通过不同形式被实现了,但是没有任何一个类在C语言中是绝对适合的。

今天这些的确都一一成为了现实。在Mac OS X 10.5中,给出了垃圾回收机制;在10.6中,也就是雪豹版本,在Objective-C中添加了闭包处理。

Brad Cox:是的,我一直是闭包的拥护者,但是要进入调用者的堆栈的确是需要一定的技巧。

Q:在静态和动态还一直争论不休的时候,Objective-C做了个跨界整合,动态的运行时环境和静态的编译。这是故意而为还是意外行为?

Brad Cox:事实上,很多功能是在我之后发布的。而当时我直接参与的,是在C的静态基础上简单地添加动态支持。而后来,静态支持是在这之后发展起来的。Objective-C的功能都是希望为大家带来非常轻量级的工具,这也是Objective-C一直追求的。

与纯静态的C++和Java相比,Objective-C的动态类型支持的确非常好用。

Brad Cox:可能是多了一种轻巧的预设组件方式组合。

Q:苹果iPod和iPhone的销量超过了3千万,看到如此多的手持设备运行在Objective-C之上,那感觉是怎么样的?

Brad Cox:这感觉美妙极了。

Q:语言的设计是非常呆板的。过去20多年间出现Java、C#、Python及Ruby等都与Objective-C有很大不同。函数式语言似乎稍稍打破了沉闷的环境。对于语言设计的下一个重大事件或功能,您有什么看法呢?

Brad Cox:嗯,函数式语言现在变得热门了。我也曾尝试过,但是语法这个环节我就碰了壁。可能还欠点缘分。

Q:您觉得是语言的选择影响了最终软件质量,还是说全部的面向对象语言其实都大同小异?

Brad Cox:我想他们大体上都是差不多的。

Q:从您近期发布的消息和您的新作品<<Superdistribution>>一书中,不难看出您关注的焦点转移到了软件组件部分。请问能更多地讲述您现在的兴趣点吗?

Brad Cox:其实我没有转变焦点,请记得,为人们带来轻巧实用的功能是我创造Objective-C的初衷。对于我有关组件的关注,其实是我希望能找出有效帮助打造协作系统的办公自动化组件,所以说我并没有转变,只是希望帮助语言设计找到一个绕弯的方法到达相同的目的地。有关组件方向的更多介绍,请进入我的个人博客进行了解。

另外,我对OSGi模块化架构有非常大的期待。一旦流行起来,它将扮演非常重要的角色。虽然上手有一定难度,但是尽早学习是我的建议。

Q:可以分享更多有关OSGi的看法吗?

Brad Cox:好的。OSGi运行在Objective-C上可能不太合适,但是在其它的Java平台运作良好。一些主流的IDEs开发平台,如Netbeans和Eclipse,是一个能实现过渡到基于OSGi组件的中间平台。而随着技术的日渐发展和逐步成熟,将来或会成为人们日常工作的一部分。

Q:OSGi会替代jars吗?还是会与jars相结合?

Brad Cox:我倾向于后者。

Q:是metadata提取物?

Brad Cox:是的。一个OSGi bundle可以看成是一个metadata的jar提取物。因此也可以说是在JVM中的小型SOA(基于服务架构)服务。他们拥有自己的生命周期,能实现离线等待等处理。

Q:这样一来,能实现在线组件更新而不用把整个系统关闭?

Brad Cox:没错。一个典型的做法是在虚拟机中运行OSGi,然后等候它来完成升级过程。这需要花时间来熟悉。这个模型与Java中不断创建—销毁的过程不太一样。

英文出自:Mactech

(责编/夏梦竹)

移动开发者走向全能开发者的五大技能 360和西部数码战略合作 一键开启为国内30万家网站提供免费安全服务 中兴携手英特尔发布基于X86的Geek手机 应用生态建设仍需努力 微软将WP周期延长至36个月 明年推企业功能包 Gartner:全球PC出货量二季度下滑11% 联想成全球最大PC厂商 用来简化开发任务的20个JavaScript类库 煎饼,娇妻,Belief:黄太吉的移动互联网营销 AWS大降价:最高打两折 推荐十款超赞的Google Chrome扩展插件 在团队中进行单元测试/TDD的12条经验 小米游戏中心6月数据报告:页游转手游怎么搞? 司机请专心:安全是车载APP要解决的大问题 Windows 8之父Steven Sinofsky:跨平台开发会为什么越来越难? 一些达成共识的JavaScript编码风格约定 语义技术——微软、谷歌和Facebook的必争之地 初创公司PlumGrid:前思科工程师的“逆袭之战” Firefox OS智能手机继续扩张 德国市场今日开售 如果让莎士比亚、海明威编写JavaScript代码 开源的数据可视化JavaScript图表库:ECharts 已迭代1.3亿年的分布式系统——Anternet 软硬整合:14个可改变世界的Kickstarter项目 是时候放弃MySQL的五大理由 比特币钱包Coinbase推出即时交易功能,无需银行转账手续 回收不活跃邮箱续:雅虎高管称能保证前用户信息和数据安全 移动周报:IT民工携娇妻转战传统行业,黄太吉的移动互联网营销 独立游戏开发的传奇!LIMBO开发商Playdead公司CEO专访 Firefox OS模拟器4.0正式发布 支持模拟触摸事件 莫轻言已成功部署大数据,也许你离达标还相去甚远! 基于Java的四大开源测试工具 Firefox OS:称霸移动市场?我们的计划更长远! 支撑5亿用户、1.5亿活跃用户的Twitter最新架构详解及相关实现 錯誤代碼:0x80040E4D,錯誤信息:使用者登入失敗.(ASP中出現此錯誤,VB中是可以的),急!! 请问怎样在SQL中组织一临时表?(立即给分) 关于asp和SQLSERVER2000问题!郁闷之中..... 使用showModalDialog遇到的问题,再线等候!!!!!!!! 我使用jbuilder做的软件系统包括servlet,jsp,applet,打成了war包,可是却始终不能运行applet。 ***内核的networking问题*** 讨论:大家都用什么工具进行数据库比较 ? 我的鼠标提示刷新的速度不是很快,谁能给在下提供一些好的建议? 发短信的web service 请教一个服务端和客户端交互的问题? 高手帮忙 请问谁又对第三方控件imgscan.ocx操作的例子,发给我bit_hj@163.com。小弟不胜感激 肯请各位帮忙! 应该是简单问题,求高手帮忙,100分相送,绝不食言,一下午都没弄出来,太灰心了..... linux下,mysql数据库密码怎么找回?(在线等) 新手求救:关于8086和80386的中断类型号上的冲突? sleep函数 网络难题,跨网段传输 恢复数据库 有谁的信誉分比我低阿!!我送给他50分阿!! 谁能提供一个切实可用的“防止刷新页面重复提交表单”的方法 Web安装项目中的managed.msm和stdole.dll是何东东,何用?? java中字符串操作函数在哪?java中分解字串的函数(如asp中的:split)在哪个类中? 为何ACCESS出现“#已删除的”的记录? 欲交Java良师益友,愿伸援助之手请进。 关于复选框的初始问题(100份在线4:00-8:00 怎样在asp中把一个文件变成临时文件?? 求解奇怪问题,非常奇怪,分不够再加! 高分求IPMI开发资料 如何用Jtree将一个xml文件显示出来? 招聘系统分析员(北京) 深圳兼职电脑维护,哪个有兴趣? 求购 产品进销存源代码 VB or c# +SQL SERVER @@@@@@ 不送分而送现金!!!!! 谁能教我配置PHP服务器啊? 帮我看一下, 紧急求救!!!jsp的出错信息! 如何合并两个Image对象为一个Image对象 还有一个问题,帮帮我嘛! 高分请教高手!简单,看了你也是高手 代码编辑器的问题。 计论:大家都用什么工具进行数据库的比较? 我高中的班主任 请大家评评理,特别是JAVA版版主! 这样的SQL语句怎么写啊 form切换!VB.net里面如何在语句里调出别的FORM 如何用ADO连接EXCEL数据? 什么是上溯造型? 如何把console.write 输出很多内容保存到文件?thread.join()如何使用? 我想实现像网络蚂蚁那样在IE上点右键,把这个IE中的信息传送给我主程序,现在遇到两个问题! 控件的布局问题? 实例化算不算继承? 急!!!!关于SQL数据堵塞 谁能告诉我关于人生的周记啊.急.要写事的 英语翻译We provide debt capacity estimates that are based on target ratings and novel financial flexibility measures that account for financial constraints due to the firm's debt capacityfinancial flexibility (财务柔性) 乐什么abb形式的 《我的人生 我来负责》周记应该怎么写?麻烦各位好人快一些,这个星期日就要写完啊! 跪求牛人帮写英语作文-------题目如下1 .How many years have you been learning English?What do you think of yourself as far as English learning is concerned?Are you satisfied with the progress you have made?Why or why not?2.Do you think it 墨西哥是南美洲还是北美洲? 有关龙飞凤舞的诗句诗的大致意思是想表达企业的兴旺 ccb是哪个银行简称 正方形ABCD的两条对角线交于点O,若三角形AOB的周长为12cm,则正方形的面积为( ) 李白豪放的诗句2句足以 CCB是什么的缩写 已知|a|=1,|b|=3,则|a+b|-|a-b|的值是多少? 设r>0,两圆(x-1)^2+(y+3)^2=r^2与x^2+y^2=16的位置关系A.相离 B.相交 C.内切或内含或相交 D.外切或外离 直()()ABB的词语速度说啊 追加分数 已知A+B=3 ,A*B=1,则A/B+B/A的值是多少重要的是过程 几个单词的意思...字典完全查不到啊啊啊啊trods、bostles、lichways、halterpaths、carneys、herepaths.(PS:应该都是一些路的名称,可能是作者自创的词所以查不到,求高人指点)原文是这样的Pilgrim paths, 直( )( )这个ABB式的词语怎么填? 我相对光做光速运动,那么我周围的时间是否会变慢?而我相对地面是静止的,那么我周围的时间又会不会有变化? 意思全部,没有带字典 ABB叠词:直()() 群蚁排衙的排是什么意思 横竹下面土两寸是什么字 成都七中育才暑期数学七年级下册作业在哪买? 群蚁排衙的衙是什么意思? 以将开头的成语有什么?不是一声啊,是四声的 什么什么凉abb 群蚁排衙是什么意思啊 民族资本主义与民族资产阶级有什么区别最好用简略的语言概述一下 为什么把蚂蚁比作雪球 如果a是b的3分之1,那么a和b成正比例.(对,错)#¥@%%………………&*&&&#&@@¥#……%¥#*……&%¥#@ wickford什么意思,字典里查不到 为什么把抱成黑团的蚂蚁比作雪球 锲而不舍,群蚁排衙,迥乎不同的意思气冲斗牛,杂乱无章,义愤填膺,飘渺亢奋羁绊 武则天宫中的职位求武则天宫中的全部人的职位.有多少说多少.求求求求求求求 人教版语文小学六年级下册第二单元课文感受感是第二单元的课文感受 1.如果a:b=8:3,那么a只能是8,b只能是3()对还是错2.比的前项加上5,要使比值不变,比的后项也应加上5()对还是错 宫中最小的职位是什么 开可以加什么偏旁部首? 群蚁排衙的近义词是什么 清朝的宫女有的称为大姑姑 是何意思 比起宫中的嬷嬷谁的职位大 abb式的词语 硬什么什么 闹什么什么 阴什么什么 轻什么什么 空什么什么 如果A:B=3:4,那么A=3,B=4是对的还是错的 当一个人拿着镜子以光速行驶这时这个人对着镜子里看到什么 描写扇子的句子或一段话 (我要写小说用,最好自己写!)谢了 求对中文某词的中译英中文的意思类似于“时间爆破”“时间爆炸”之类,不知道booming time可不可以,或者可以给其他答案.只是为了作一小标题而已.是想在一篇中文的散文上附上小标题,有“ 一个人手上拿着镜子以光速飞行,人的身体能耐住光速的前提下,这个人能不能看见自己的脸?3 美国八大河流如题,美国的八大重要河流 咏物的元诗越多越好!元代的曲、词也可以.只要是元代的就可以! 征求某人的意见 英文 文学基础简述 求初一英语下册第一单元至第九单元的一片综合性作文 字数50-100 下册,下册的地理复习提纲最好还有些重点选择题! 良(去掉上面的点)加部首组词 假日你是李林,你收到好友(Jack)从美国得来信.他在信中问到你在中国得日常生活.请你用约80个英文单词完成这封信,信得格式已给出.(80子左右)NO.1 Middle SchoolShenzhenOctober15,2007Dear Jack,Thanks fo 急 求AI大神.这个“菜”字的草字头的怎么对齐? 墨西哥是在北美洲吗我问的是墨西哥这个国家属于哪个洲, 内容:你昨日因为骑自行车腿摔坏了,要待在家里一个星期,你又很想上课.你改怎么办?写一封信求助你的网友要回答 有关于鸟的诗句及赏析 英语翻译the hypothesis that in painting the animal that resembles a chiru the cave artist painted a chiru with which she or he was familiar这句话怎么也翻译不过来了,希望牛人可以分析一下句子成分并给出中文解释.跪谢 一个正方形的对角线长是12CM,它的面积是12x12=144cm².一根圆柱形水管,内直径是20cm,水在管内流动的速度是每秒10cm,每秒流动的水是多少毫升?) 江苏将建150万亩永久性蔬菜基地南京地铁或将下发“禁食令”地铁禁食将万圣节郭美美杨贵妃妆扮吓呆网友 称最南京市农委加大监测 确保市民吃上放心“农家乐”食品安全存隐患 南京农委表中国部分军事设施现安全隐患 影响武器女子因口角棍击刀捅杀死丈夫 分尸蒸煮10月全国平均气温较常年偏高 呈现“从对等的不了解开始对话欧元区面临通胀过低威胁二成美国人称见过鬼 女性比男性更易“美国万圣节迎购物潮 商家赠特色礼品揽纳粹盖世太保头目被指埋葬于柏林犹太人二成美国人称见过鬼 女性比男性更易“美国万圣节迎购物潮 商家赠特色礼品揽美国多地举行万圣节游行 街头惊现“包日本政府拟制定相关措施援助海外核爆受德银:离岸人民币外汇期权市场迅速发展日本防相:监视中国海军演习符合国际法北京一周内两发空气重污染蓝色预警黑龙江青年支教山西10余年 月俸仅6媒体人离职:这两年,好多个“时代”结五次券商股解救危难中大盘!夜读 | 你问问自己,是不是过得太舒他们靠什么减刑?清炒蚝油芥菜孜然青椒炒红薯男子根据藏宝图探宝,挖掘后发现的宝藏青椒炒臭干葡萄干梅酱锅包肉胡萝卜肉片炒杏鲍菇深夜爆尿 | 台湾偶像剧女王C在内地【观点】国际原油价格战还将继续中国国有石油公司改革思路一种史玉柱收购七星控股5%股权 涉资2.淘米网达成私有化协议:每股ADS 3遥望网络新三板挂牌:2015年收入将今年春节不放炮,放这个,高端大气还上从抄来的《货币战争》看对无知的恐惧打新基金:你买中了吗?P2P雷潮之下,聪明的投资者是这么做赚钱的四境界,你在哪一层?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘