mac(os x)開發應該有著什麼樣的學習曲線?

想學習mac開發(開發mac應用程序,非ios開發,也非用mac電腦開發其它平台應用),該如何入手?

本人安卓程序員,無obj-c/ios開發基礎


本人對Mac桌面應用(非遊戲類)經驗較少,這裡給出幾條建議:

1.開發Mac桌面應用有不少路徑:除了使用蘋果官方的Cocoa(Objective-C或者Swift)框架外,據我所知,還有QT(使用C++語言編寫,跨平台)、NWjs(利用node-webkit)http://nwjs.io....(當然還有很多,Corana剛剛推出支持桌面的版本,使用lua語言開發,PyQt也是跨平台桌面開發,使用Python結合QT,atom編輯器就是用另一種web框架寫的),對了,Java也是可以寫跨平台桌面程序的。

2.上面只是提供幾種思路,如果你打算使用Apple官方的SDK開發的話,你得學習Objective-C或者Swift(建議學Swift,畢竟你是初學者,而且Swift是趨勢,不過有時間也要看看Objective-C),在Xcode這款強大的IDE上開發,不過JetBrains也推出了開發iOS/Mac OS的工具AppCode。

由於國內的書籍、視頻等各種媒介的教材基本上是談及iOS設備開發的,很少有Mac OS方面的教程,所以只好求助於英文教材,雖然Apple文檔比較有參考價值,但是初學者最好剛開始了解一款Mac OS應用的開發過程,然後再去查閱文檔。

這裡推薦幾個國外網站哈:

http://www.it-ebooks.info 免費的電子書下載網站,當初我就是看上面的電子書入門的

https://www.safaribooksonline.com/強大的電子書網站,內容超新

當然,還有其它的網站啊,博客啊,這個用度妹、谷哥即可。

談一下桌面應用的構造:

1.GUI涉及的內容比較多:研究下一個桌面程序就知道了,菜單欄、工具欄、工作區等。Xcode中可以直接拖拽控制項,或者直接Coding。這部分布局很重要,可以參考Java的Swing或者AWT。

2.邏輯代碼:按鈕點擊響應代碼,網路,線程都是要設計到的知識。

學習的方法根據自己實際情況,剛開始可能會不適應,慢慢就好。可以到Github、Sourceforge、Google code上下幾個工程源碼看看。祝你學習愉快,早日踏上Mac OS開發隊伍上來。


MacOS 開發的需求很少,如果是出於喜歡 OSX 系統,寫點自己感興趣的東西,不作為職業方向,個人建議如下:

1、學習基本的 swift,目前大部分比較系統的資料都是 swift 語言寫的。

2、找視頻教學課程,目前 csdn 上有一套課程,基於 swift的。不過收費 268 左右。

如果你有 做 iOS 程序員的基礎的話,在簡書上搜索下相關文集,也是可以實現很多小功能的。你原先是寫 android 所以不能保證。

這裡有我總結的一些資料和 demo,可以給你參考:MacOS 開發 - MelissaShu的IT博客 - CSDN博客


先買台Mac,有錢就買貴的,一分錢一分貨,或者在虛擬機里裝個OS X系統。

學習oc或者swift語言,最好都學。

想做跨平台應用就折騰c++的qt,但還是建議前者。

裝Xcode,用模版做簡單的桌面應用。

慢慢加功能、掌握語言和cocoa框架。

找Mac開發的工作。


推薦閱讀:

Siri如果以電子萌寵的形式出現在Mac里,有沒有市場?
蘋果電腦上可能裝盜版系統嗎?
哪些 Mac 軟體下載網站值得推薦?
Airmail 的使用體驗如何,為什麼能夠迅速的攀升到 Mac App Store 付費榜的榜首?
Mac OS 系統的自帶詞典如何擴充生詞本功能?

TAG:Mac | MacAppStore | OSX開發 |