设万维读者为首页 万维读者网 -- 全球华人的精神家园 广告服务 联系我们 关于万维
 
首  页 新  闻 视  频 博  客 论  坛 分类广告 购  物
搜索>> 发表日志 控制面板 个人相册 给我留言
帮助 退出
茶树油之家  
与大家交流和分享苹果产品、网络技术,以及美乐家茶树油及相关的信息  
https://blog.creaders.net/u/588/ > 复制 > 收藏本页
网络日志正文
学习苹果WWDC 2011视频讲座的笔记(2) 2011-06-26 11:50:44
昨天完成了WWDC 2011视频学习的三个讲座。

讲座303


讲座303是介绍Core Data。iOS早就推出该有关数据管理的核心开发基础平台,这个数据核心开发平台为软件开发提出了非常简便和统一的数据管理,现在几乎所有软件开发人员离不开这一工具。当然你可以自己利用其他数据工具或API管理你的数据,但你要写许多codes,而且很容易有许多想不到的bugs,而且从内存管理和运行速度来说也是远不及Core Data。苹果已为开发者提供这一强有力的工具。

该讲座公布介绍了苹果对Core Data最新的扩展和新的功能。该讲座只是提纲性的介绍,有部分codes,但没有演示例子解说。主要内容为:

  • 数据同步 Concurrency
  • 数据保护 Data protection
  • 有序关系 Ordered relationships
  • iOS中的文件管理界面:UIManagedDocument
  • 云支持 iCloud
  • 渐进式数据库 Incremental stores
  • 开发工具 Developer tools

其中云支持和文件管理揭示了软件开发如何利用这些API管理软件的数据,为软件开发提供了无限的想象力。其中介绍了苹果的delta软件数据同步的新技术,简单来说,数据在苹果电脑和其它移动设备至今的同步是以数据row为基础的同步,而不是整个数据库的同步,这样可以为使用者节省无线传输数据量。苹果今后的数据同步和软件同步都是delta方式。

讲座306


题目是:Maximizing Productivity in Xcode 4。该讲座介绍了Xcode 4的主要新的功能,以及如何使用这些功能来帮助软件开发人员更有效地管理和开发软件。苹果的Xcode是一个非常功能强大的软件开发工具,你可以用指令终端console和简单文件编辑来开发软件,但随着Xcode的功能日益增强,软件开发人员几乎离不开这个开发工具,比如说Core Data的设计和IB设计用户界面。但本讲座只是概貌介绍Xcode的基本功能:

  • 如何使用Xcode Working in Xcode
  • 特殊设置 Customizing Xcode
  • 原码编辑 Source Editing

该讲座介绍了Xcode的开发理念,其中许多功能都是苹果开发者尤其是高手们提出的概念和功能,这些特性和工具给软件开发者提供了非常便捷的开发环境。我目前还没有更新到4.1,所有付费注册开发者免费都可以免费得到这个版本,届时iOS 5在秋季的推出,4.2版本将正式推出。

讲座307


题目为:Moving to the Apple LLVM Compiler。对于了解和开发苹果软件,这是一个非常有意思和令人感到苹果深有远见的一个典范例子。我们知道,软件开发都是提供将高级语言编译为机器代码。苹果的机器代码是UNIX下的机器代码,苹果软件大多是用C/C++写的,因此所有苹果的软件理论上都可以通过UNIX下的编译工具GCC进行编译。

UNIX下的编码编译器工具是以GNU GCC为核心的。该编译器有许多很优秀的功能,比如可移动性,运行的效率很高,但是这是一个89年代的工具,目前的硬件尤其是CPU已经发展了更高的水平。GCC还停留在过去的水平,无法利用硬件的充分潜力,而且如果软件出现错误,错误的解释非常模糊,这对于编码开发人员来说是一个长期困扰的问题。

苹果早就开始对UNIX下的编译器有心大动手术,苹果集中了最优秀的开发者,从最低级的机器码的编译进行优化,这些都是非常小的CPU指令,速度都是微妙级的改变,但是我认为苹果抓住的操作系统的最要害点。可以这么想象一下,实际上编译器是将一种高级语言翻译成另一种最低级的机器懂得的语言,如果这种翻译不反映语言的变化,能够言简意赅表达准确意思,还是那么老陈旧的八股文方式,其效率程度可想是多么的低下和憋足,并且无法充分用另一种语言的优势有效达到同样或更好的目的。苹果在这个最基本点进行优化,其放大的效果则是成倍或上十上百倍的优化。这也是苹果软件不仅在Mac上,而且在资源十分有限的iOS上也能做到软件的运行也是那么的流畅。

新一代的编码工具是LLVM,LLVM是开发原码!UNIX社区中,LLVM是一个十分活跃的软件开发者社区。

LLVM的整个结构有很大的改变,其中有许多模块,可以很容易和各种语言连接,直接生成机器代码,提供低级水平并十分准确的工具支持。

苹果着手参与LLVM的开发已经有多年(十多年?)的历史,积累了许多经验,现在已经十分成熟。新的Lion操作系统是完全用LLVM编译的机器码操作系统。新的Xcode将完全支持LLVM,目前最新的4.1还是过度阶段GCC+LLVM,4.2将完全淘汰GCC,GCC将在苹果Mac上完成其历史使命。当然你可以继续使用GCC,因为苹果是UNIX系统,但其效率和优化程度都远不及LLVM的结果。Xcode将不提供GCC编译。

我一直对苹果在这方面的发展十分感兴趣,当然我的软件水平完全不懂低级语言,也没有必要;但通过这一方面的深入了解,我认识到苹果所有的新技术都有非常强的基础或基层支持,表面上我们看到的是苹果电脑或其它产品,这些都是冰峰上的一点。这也是苹果许多竞争对手无法与苹果竞争的软肋,在技术内涵上他们无法与苹果抗衡,或者说他们没有真正抓住自己发展的要点,他们没有自己的、扎实的东西。苹果有这么多秘密的坚实基础,其现在和未来产品的前途将是无限的。

该讲座只是粗略大概介绍,讲座中用图形比较了传统编译器和LLVM的结果比较,其优化、计算速度、以及编译速度都是4-10+倍的增长,让人感到十分震撼,看到这一结果,观众们情不自禁地热烈鼓掌。

讲座介绍了如果将现有的软件转变到新编译系统的方法。

苹果宣布将支持新一代C++的功能,苹果一直是推动C++进入一个新的台阶的主要推动者之一。这次苹果是第一个开始支持C++的新标准。苹果高手们说,这是一个非常令人兴奋的消息,届时苹果的软件开发将会推出许多新的、更为简洁当具有强大功能和效率的软件。

视频后随感


我记得我曾听说过微软软件开发粉丝(我也是)嘲笑说,苹果为C++的软件开发者找到工作机会,但是他们不理解,真正计算机的魅力和核心都是在C/C++基础上实现的,这一具有悠久历史和经过千锤百炼的计算机语言至今是所有计算机系统的基础,C/C++的强大功能远远没有过时,现在仅仅是一个新的开始。

Objective-C或Obj-C是苹果推出的软件开发语言,它是建立在经典的面向目标编程语言SmallTalk基础之上。在Xcode中,Obj-C可以和C/C++天衣无缝地交融,这使得软件开发人员利用这些语言的强大功能成分利用操作系统中的所有潜力。

有志于学习苹果软件开发或电脑软件开发的年轻人,基础知识是十分重要的,珍惜时光,好好学习,打好坚实的基础,不要捡捷径,如果那样,实际上将走更多的弯路。无论是学习什么,基础知识最为重要,而不要仅以将来什么能够赚钱作为自己学习的唯一标准。

参考资料



我的RSS
浏览(1012) (0) 评论(0)
发表评论
我的名片
茶树油之家
来自: 加拿大
注册日期: 2007-01-19
访问总量: 510,022 次
点击查看我的个人资料
Calendar
最新发布
· ZOOM 會議:iOS 平台上的軟件開
· 專注做一件事是最好的擺脫
· 我的 iOS app 更新了
· 有關老面製作的問與答(三)
· 從Legacy 小道,我重新開始了跑
· 從Legacy 小道,我重新開始了跑
· 為準備馬拉松長跑的第一次嘗試
分类目录
【社会公益】
· 飄香茉莉 - 李靖惠
· 天使的恩賜
· 經典京劇『鎖麟囊』
· 挑戰自己:參加2013卡爾加里馬拉
· 梦想合唱团大聚会与奥运梦想
· 中央电视台的梦想合唱团公益活动
【WWDC】
· 學習WWDC 2017
· 學習WWDC 2015
· 網上學習:WWDC 2013視頻講座
· WWDC 2013技術講座視頻
· WWDC 2012笔记(4)
· WWDC2012的学习笔记(3)
· WWDC 2012的学习笔记(2)
· WWDC 2012的学习笔记(1)
· WWDC2011视频的学习笔记(21)
· WWDC2011视频的学习笔记(19)
【网络安全】
· Heartbleed網絡安全漏洞
· 苹果小技巧:如何在PDF文件上加
· 警惕你的苹果礼物卡被窃
· 苹果用户的独特免疫能力
· 苹果发布安全更新2011-003
· 最新的微软IE漏洞和劫持Cookie的
· 新的恶意软件第二番攻击苹果
· 新的恶意软件开始攻击苹果
【生活与健康】
· 有關老面製作的問與答(三)
· 從Legacy 小道,我重新開始了跑
· 從Legacy 小道,我重新開始了跑
· 為準備馬拉松長跑的第一次嘗試
· 張宏文與西班牙華人的醫療諮詢
· 有關老面製作的問與答(二)
· 美麗的洛基山脈
· 有關老面製作的問與答(一)
· 我為什麼喜歡蘋果
· 加拿大抗新冠病毒動態 2020.4.16
【TED视频】
· 請求的藝術
· TED有關兩種不同政治制度的精彩
· 游擊隊方式的城市菜園
· 玩游戏可以多活十年
· 中毒宝宝
· 中美关系不需要多一个律师
· TED视频:脆弱的力量
· TED视频精选:戴维·卡梅伦论政府
· TED视频:为什么SOPA是一个馊主
· TED视频:失败是成功之母
【海外生活】
· 從Legacy 小道,我重新開始了跑
· 從Legacy 小道,我重新開始了跑
· 為準備馬拉松長跑的第一次嘗試
· 張宏文與西班牙華人的醫療諮詢
· 有關老面製作的問與答(二)
· 美麗的洛基山脈
· 有關老面製作的問與答(一)
· 我為什麼喜歡蘋果
· 加拿大抗新冠病毒動態 2020.4.16
· 加拿大抗新冠病毒動態 2020.4.16
【网络服务】
· 專注做一件事是最好的擺脫
· 谷歌帳號和相應的雲服務
· 用圖像和風格語言css 定義數字章
· 网络服务:计算型知识引擎服务
· 如何优化图像所占用的空间
· 用视觉方式快速算算数
· 新浪【船过水无痕】的博文,非常
· 苹果的云服务iCloud与谷歌的云服
· 新浪微博对话实例
· 使用网络翻译服务,写中文博客
【软件开发】
· ZOOM 會議:iOS 平台上的軟件開
· 專注做一件事是最好的擺脫
· 我的 iOS app 更新了
· iOS App: TapToCount - 3W
· 第一个iOS app 的里程碑
· TestFlight - 蘋果iOS app測試的
· 24點的算法
· 學習WWDC 2015
· 漢字聽寫大會-電腦書寫輸入法
· WWDC2012的学习笔记(3)
【我爱苹果】
· ZOOM 會議:iOS 平台上的軟件開
· 我為什麼喜歡蘋果
· iOS App: TapToCount - 3W
· 為武漢发生COVID-19疫情做一點貢
· 第一个iOS app 的里程碑
· 创作app的乐趣
· 你知道你的睡覺節奏規律嗎?
· 學習WWDC 2017
· 點擊計數 - 記住隨時隨地的點滴
· 學習WWDC 2015
【网络技术】
· 專注做一件事是最好的擺脫
· 如何用 Blogger 邀请朋友共同写
· 今天是3.14日,以及VIM的強大區
· 探討:採用QR碼快速連接Wi-Fi
· 互聯網+和微信
· 写博客的体会
· WA实例:分数的计算
· 如何将XML内容用HTML格式表述
· 如何优化图像所占用的空间
· 谷歌博客更新:增加动态放大图像
【茶树油】
· 有關老面製作的問與答(三)
· 茶樹精油消毒殺菌的熏蒸法
· 新冠病毒核酸檢測之淺解
· 倡議:聯合海外華人寫抗疫日記
· 茶树精油新用法:消毒和清洁面部
· 為關心COVID-19疫情寫的小詩
· 為武漢发生COVID-19疫情做一點貢
· 2018,达到一万公里里程碑!
· Melaleuca 2017/12/26 年銷售額
· 跑步里程達到八千公里
存档目录
2020-05-11 - 2020-05-21
2020-04-04 - 2020-04-23
2020-03-01 - 2020-03-31
2020-01-07 - 2020-01-25
2019-03-20 - 2019-03-20
2019-02-09 - 2019-02-09
2018-12-31 - 2018-12-31
2018-05-18 - 2018-05-18
2017-12-09 - 2017-12-26
2017-10-19 - 2017-10-19
2017-09-06 - 2017-09-06
2017-08-17 - 2017-08-17
2017-06-07 - 2017-06-28
2017-04-12 - 2017-04-28
2017-03-31 - 2017-03-31
2017-02-22 - 2017-02-22
2017-01-18 - 2017-01-23
2016-10-25 - 2016-10-25
2016-03-21 - 2016-03-21
2016-02-01 - 2016-02-17
2016-01-12 - 2016-01-22
2015-12-04 - 2015-12-11
2015-11-19 - 2015-11-24
2015-10-14 - 2015-10-14
2015-08-05 - 2015-08-05
2015-07-24 - 2015-07-24
2015-04-06 - 2015-04-24
2015-03-14 - 2015-03-18
2015-02-05 - 2015-02-05
2015-01-20 - 2015-01-20
2014-12-13 - 2014-12-13
2014-11-13 - 2014-11-13
2014-10-01 - 2014-10-10
2014-09-01 - 2014-09-24
2014-08-07 - 2014-08-29
2014-07-11 - 2014-07-31
2014-06-23 - 2014-06-23
2014-05-02 - 2014-05-31
2014-04-20 - 2014-04-27
2014-02-14 - 2014-02-14
2014-01-06 - 2014-01-29
2013-12-02 - 2013-12-30
2013-11-06 - 2013-11-18
2013-10-12 - 2013-10-30
2013-09-03 - 2013-09-03
2013-08-01 - 2013-08-23
2013-07-05 - 2013-07-30
2013-06-03 - 2013-06-14
2013-04-03 - 2013-04-30
2013-03-07 - 2013-03-30
2013-02-18 - 2013-02-23
2012-12-05 - 2012-12-25
2012-11-08 - 2012-11-25
2012-10-05 - 2012-10-18
2012-09-26 - 2012-09-26
2012-08-03 - 2012-08-25
2012-07-07 - 2012-07-27
2012-06-01 - 2012-06-28
2012-05-01 - 2012-05-27
2012-04-08 - 2012-04-27
2012-03-03 - 2012-03-31
2012-02-07 - 2012-02-29
2012-01-15 - 2012-01-27
2011-12-03 - 2011-12-20
2011-11-02 - 2011-11-22
2011-10-01 - 2011-10-30
2011-09-03 - 2011-09-24
2011-08-01 - 2011-08-31
2011-07-01 - 2011-07-30
2011-06-01 - 2011-06-29
2011-05-01 - 2011-05-31
2011-04-02 - 2011-04-30
2007-01-19 - 2007-01-19
 
关于本站 | 广告服务 | 联系我们 | 招聘信息 | 网站导航 | 隐私保护
Copyright (C) 1998-2024. Creaders.NET. All Rights Reserved.