`
saybody
  • 浏览: 903640 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

該學Apple程式設計嗎?

阅读更多

文 / 蔡學鏞

還記得十年前蘋果正值多事之秋:市佔率繼續掉往無足輕重的難看數字;耗費鉅資研發的新一代作業系統Copland難產;想買BeOS當下一代的Apple OS,卻被BeOS創辦人(Apple的老員工)獅子大開口而告吹(而自抬身價的BeOS幾年後落得破產)。

壞新聞持續登上媒體,種種的現象,讓人一度以為這家以水果為名的IT公司大概氣數已盡。PC Week毒舌專欄作家戲稱Apple應該改名為Applet(小蘋果)才名符其實。

然後Steve Job回鍋蘋果,帶來NeXT當作下一代的Apple OS;且Steve Job不惜打官司,一定要取回相容電腦製造的授權(我記得當時製造商之一的UMAX力捷電腦可是氣得對媒體大放狠話)。戴爾電腦(Dell)的老闆Michael Dell認為Apple是個爛攤子,於是勸好朋友Steve Job『賣掉蘋果的電腦部門吧』,但這種話Steve Job可聽不進去。

也幸虧他沒聽進去。當時誰料得到,十年後的今天,蘋果聲勢卻日益看漲。過去這幾年,MacOS的市佔率逐漸攀升。根據Net Applications的資料顯示,目前MacOS全球市佔率7.8 %,相較於一年前,上升約1.8%。我想,如果持續這樣的態勢,應該2010年會超過10%。這個數字你可能覺得沒什麼了不起,但是以電腦界的LV來說,這象徵蘋果賺很多很多錢。

目前可能存在的變數是以EEE PC為首的低價電腦。這類電腦以Linux或Windows XP為作業系統,如果銷售太好,自然有機會損害MacOS的市佔率。但是從另一個角度看,這類低價電腦可能對MacOS的殺傷力不大,因為蘋果的市場定位是「比較有錢的人」。所以我還是對2010年MacOS X超過10%持樂觀的態度。

回想在2000年左右,當時蘋果正低迷,加上MacOS 9改朝換代成MacOS X,許多軟體廠商紛紛棄蘋果而去,優先投入開發Windows版本。但是在2004年左右,許多廠商注意到蘋果的氣勢又起來了,紛紛回頭開始開發MacOS X的軟體。

2006年改用Intel CPU之後,市佔率的提升更加明顯。2007推出同樣使用MacOS的iPhone,並開始棄置C語言介面的Carbon,以後開發MacOS應用似乎只能使用Cocoa。蘋果於2007年底推出的Objective-C 2.0,納入現代語言的一些特色。現在,蘋果的軟體開發方式已經大致上底定,不會再有太大的變動。MacOS、Cocoa、Objective-C、Xcode在蘋果的地位,相當於微軟的Windows、.NET Framework、C#、Visual Studio。

根據IDC的報導,2007/Q4的數據顯示,Apple iPhone在Smartphone的美國市場佔有率已經到達26.7%,但是2008/Q1卻消退為19.2%,顯示美國市場iPhone熱潮有退燒的跡象。但是2008年歐洲各國陸續開賣iPhone,且2008年底iPhone會在亞洲開始販售,並推出第二代3G的版本,這可能又會帶動另一波銷售熱潮。

iPhone的市場並非萬里無雲,RIM的黑莓機依然在西方世界大行其道,Windows Mobile和Symbian也有一定的票房。最近推出的Google Android平台具有開放的性質,且使用Java語言,更是會對iPhone造成不小的打擊。

另外,輸入法也可能會是iPhone推行的一大障礙。以手指指腹接觸螢幕的方式輸入,輸入26個英文字母時已經顯得擁擠,更何況是輸入30~40組合鍵的注音或倉頡。不用觸控筆,只用指腹,也似乎不太適合進行手寫輸入。我等著看年底在台灣或大陸推出時,他們怎麼解決這個問題。

平台不是關鍵,應用才是吸引顧客的關鍵!為了擴大iPhone的應用,蘋果於2008年初推出iPhone的SDK,讓我們可以為iPhone寫原生(native)程式。由於iPhone的銷售量(非市場佔有率)會比蘋果電腦來得高,且大多數的桌面應用都已經Web化,所以如果我們有開發Apple應用的需求,應該這樣的需求會先出現在iPhone平台,而非Mac電腦平台。明年的iPhone全球市場表現,會是我的重要觀察指標。

許多Windows的用戶都有上MSDN網站瀏覽或查詢資料的習慣,其實Apple也早就將相當齊備的技術資料上網,且許多文件都編寫得具有書的品質,可以很順暢地閱讀學習,降低初學者的學習難度。所以,雖然Mac程式設計的印刷書籍不算多,但是其學習資源並不少。如果你最近有空,不妨去逛逛Mac的開發者網站,瞧瞧Apple有什麼新玩意兒。

除了學習資源豐富之外,Xcode開發工具內建在MacOS內,不需要額外取得。這可以吸引Mac軟體開發生手開始把玩。

最近已經有一點膩了Java和.NET的我,想換換口味,改玩一下Mac OS、Cocoa、Objective-C 2.0,但是看到蘋果的筆記型電腦售價,我實在是買不下去。如果Mac OS的市佔率到達10%的時候(這個時候Vista的市佔率應該已經到達30% ~ 50%),或者iPhone在大陸或台灣熱銷,我肯定是要開始學習Apple程式設計了,到時候,只好狠下心買Apple的筆記型電腦,讓錢包大失血了。

分享到:
评论

相关推荐

    Apple-pro1.github.io:网页程式设计

    在网页程式设计领域,Apple-pro1.github.io 是一个与GitHub Pages相关的项目,它可能是个人或团队用来展示他们的网页设计技能和作品的平台。GitHub Pages是一个免费的服务,允许用户托管静态网页,通常用于个人简历...

    javascript实现apple桌面

    综上所述,"javascript实现apple桌面"项目涵盖了JavaScript的多个核心领域,包括DOM操作、事件处理、动画实现、响应式设计以及性能优化等。通过学习和实践这样的项目,开发者不仅可以提升JavaScript技能,还能更好地...

    iOS-programming::mobile_phone:iOS程式设计

    在iOS编程领域,Swift语言是首选的开发工具,由Apple公司推出,专为构建iOS、iPadOS、macOS、watchOS以及tvOS应用程序而设计。本主题深入探讨了如何使用Swift进行iOS应用开发,旨在帮助开发者掌握核心概念、工具和...

    notes-squared:以Apple Notes为蓝本的Notes应用程式; 专为Android开发

    《构建Android平台上的“Notes Squared”:借鉴Apple Notes的应用设计与实现》 在移动设备上,记事应用是不可或缺的工具,它们帮助用户记录生活中的点滴、工作中的任务和学习中的笔记。Apple的Notes应用因其简洁...

    apple-少儿编程scratch项目源代码文件案例素材.zip

    Scratch是由麻省理工学院(MIT)的“终身幼儿园团队”开发的一款面向儿童的图形化编程工具,旨在通过拖拽积木式的编程语块,让孩子们在玩耍中学习编程思维。 描述中的内容 "apple-少儿编程scratch项目源代码文件...

    研究性学习报告1

    报告中还涵盖了固件的烧录与配置过程,包括固件的准备、烧录、应用程式的配置以及继电器电路与客户端的连接。最后,对电路进行了实际部署,规划了电路布局并展示了最终成果。 报告使用了KOMA-Script与LATEX进行编写...

    IT2100:iOS行动应用程式

    iOS行动应用程式开发是当今移动技术领域中的一个重要组成部分,尤其在苹果设备用户基数庞大的背景下,精通iOS应用开发成为许多IT专业人士的必备技能。IT2100课程专注于教授如何使用Apple的开发语言Swift来构建高质量...

    Volume-APP-Sketch:应用程式的Iphone和Ipad con Sketch

    《Volume-APP-Sketch:应用程式在iPhone与iPad上的设计指南》 在现代移动设备领域,iOS平台的用户体验设计是至关重要的。Sketch作为一款强大的矢量图形编辑工具,已经成为了许多UI/UX设计师的首选工具,特别是在...

    shnet:Android健身追踪应用程式

    "shnet: Android健身追踪应用程式" 这个标题表明我们讨论的是一个专门针对Android平台的健身追踪应用程序。"shnet"可能是该应用的项目名称或者开发者团队的名字,而“健身追踪”则揭示了应用的主要功能,即帮助用户...

    swift-学伴V3.0.4版本

    总的来说,开发“学伴V3.0.4”需要掌握Swift的基础语法、数据结构、网络请求、数据库操作以及UI设计。这个过程既锻炼了编程技能,也提供了实际项目经验,对于深化理解Swift语言及其在移动应用开发中的应用大有裨益。...

    InteractionCloneApple:使用自定义交互功能克隆Apple

    1. **响应式设计**:确保页面元素在不同设备和屏幕尺寸上都能正常显示和交互,这通常需要使用媒体查询(media queries)和流式布局(flexbox或grid)。 2. **触摸事件**:模拟Apple设备的触摸事件,如`touchstart`...

    毕业设计-苹果手机ios员工管理系统

    这包括使用故事板(Storyboard)来构建屏幕布局,以及运用Auto Layout和Size Classes进行响应式设计。 3. **数据存储**:员工信息可能存储在Core Data中,这是iOS的本地数据持久化框架,用于管理对象图的创建、存储...

    Adobe-xd-项目:设计

    4. **待办事项清单应用程式使用者介面**:设计一个待办事项应用的界面意味着要关注易用性和功能性。设计师需要确保用户能够轻松添加、编辑和删除任务,同时保持清晰的视觉层次和直观的操作流程。Adobe XD提供了一...

    Design-Automation:我制作的所有设计自动化产品

    应用程式和工具 Skitch 是截图和标记的垃圾,直到它成为专有。 这个应用程序是向我介绍的,它可以 100% 免费使用(也可以使用您自己的服务器)或者有一些很棒的付费选项。 一个不错的USB / WIFI小工具,可将您的...

    PK-GO:应用程式Swift,凡事都简化了口袋妖怪GO

    利用GCD(Grand Central Dispatch)或async/await(Swift 5.5引入的新特性),开发者可以优雅地处理这些异步任务,避免阻塞主线程,保证游戏的流畅运行。 最后,Swift的强大扩展性使得开发者可以方便地集成第三方库...

    IOS应用源码——设计精美的机遇tableView的个人简介模板.zip

    通过研究这个个人简介模板的源码,开发者可以学习到如何创建美观的列表界面,理解数据驱动UI的设计模式,以及如何在iOS应用中实现高效、响应式的用户交互。这将有助于提升iOS开发技能,特别是对于那些希望打造高品质...

    横版平台通知消息阅读程序源码.zip

    开发者需要熟悉响应式设计,确保在不同屏幕尺寸上都能提供良好的用户体验。 2. **通知系统**:程序的核心功能是处理通知消息。这涉及到消息的接收、存储和展示。开发者可能使用了推送通知服务(如Google的Firebase ...

    ios开发有关的一些英文的资料,不是很全,只能作为有限的参考了。

    4. **Auto Layout**:用于在不同屏幕尺寸和设备上自动布局用户界面,理解约束和优先级是实现响应式设计的关键。 5. **Core Data**:苹果提供的持久化框架,用于存储和检索应用程序的数据。理解实体、属性、关系和...

    高仿知事新闻阅读客户端

    1. **iOS**:指该应用是为苹果iOS操作系统设计和开发的,使用了苹果的开发工具Xcode和Swift或Objective-C语言。 2. **高仿**:意味着这个项目是对现有知名应用的模仿,目的是为了学习和理解原应用的设计思路和技术...

    macbook_air_13.3用户手册

    - **快速设置:** 如果用户不打算将旧电脑(如Mac或Windows PC)上的数据转移过来,则可以直接通过“设定辅助程式”进行快速设置。 - **数据迁移:** 如需从其他设备迁移数据,可使用“设定辅助程式”指定来源电脑,...

Global site tag (gtag.js) - Google Analytics