从C#到Objective-C,循序渐进学习苹果开发(1)--准备开发账号和开发环境
本隨筆系列主要介紹從一個(gè)Windows平臺(tái)從事C#開(kāi)發(fā)到Mac平臺(tái)蘋(píng)果開(kāi)發(fā)的一系列感想和體驗(yàn)歷程,本系列文章是在起步階段逐步積累的,希望帶給大家更好,更真實(shí)的轉(zhuǎn)換歷程體驗(yàn),因?yàn)橐坏┓椒矫婷娑季?#xff0c;也就可能沒(méi)太大的動(dòng)力繼續(xù)寫(xiě)這系列的文章了,文章中可能有一些地方說(shuō)的不對(duì)或者不夠完善的地方,希望大家多多指正,共同提高。
由于本人起步Objective-C的蘋(píng)果開(kāi)發(fā)比較晚,但是因?yàn)樽约河兄容^深厚的C#開(kāi)發(fā)背景,因此在很多方面都會(huì)和我之前的經(jīng)驗(yàn)做比較,因此本系列文章對(duì)于從C#轉(zhuǎn)向Objective-C的蘋(píng)果開(kāi)發(fā)來(lái)說(shuō),應(yīng)該是比較合適的。
開(kāi)始介紹這些系列內(nèi)容之前,花上一些時(shí)間做一些自己的背景介紹,希望大家了解起步的背景和我自己的一些感想,以期達(dá)到相互共鳴,加深體會(huì)。
1、個(gè)人技術(shù)背景
從事C#語(yǔ)言的開(kāi)發(fā)超過(guò)10年了,雖然期間也用過(guò)微軟的其他語(yǔ)言,如VB6、VB.NET做過(guò)開(kāi)發(fā)等,不過(guò)都是一段段小插曲,最終還是主要使用C#做開(kāi)發(fā),包括Winform的開(kāi)發(fā)、Web上面的開(kāi)發(fā)(Webform、JQuery、MVC等),在這方便也有自己的一些見(jiàn)解及較多的積累,包括自己的《Winform開(kāi)發(fā)框架》、《Web開(kāi)發(fā)框架》、《WCF開(kāi)發(fā)框架》、《混合式開(kāi)發(fā)框架》等以及一些其他應(yīng)用程序,如較早期開(kāi)發(fā)的送水管理系統(tǒng)、酒店管理系統(tǒng)、倉(cāng)庫(kù)管理系統(tǒng),以及后來(lái)開(kāi)發(fā)的很多應(yīng)用程序,如病人資料管理系統(tǒng)、客戶關(guān)系管理系統(tǒng)等等,還有很多其他基于QQ開(kāi)發(fā)、郵件處理、趕集網(wǎng)數(shù)據(jù)采集、Visio二次開(kāi)發(fā)、Socket網(wǎng)絡(luò)通訊、硬件串口的開(kāi)發(fā)方面都有所涉及,基本上這么多年來(lái),把認(rèn)為重要和感興趣的.NET技術(shù)都學(xué)習(xí)了一把。有一些技術(shù)和產(chǎn)品的積累,也算對(duì)得起這么多年來(lái)的技術(shù)研究了。
書(shū)籍撰寫(xiě)方面,早期也就參加過(guò),年輕力壯的時(shí)候,生活拮據(jù)的年代,ASP技術(shù)和ASP.NET技術(shù)盛起的時(shí)候,分別寫(xiě)過(guò)一本《ASP與網(wǎng)站開(kāi)發(fā)實(shí)戰(zhàn)》和《ASP.NET與網(wǎng)站開(kāi)發(fā)實(shí)踐教程》,寫(xiě)書(shū)的辛苦和出版商的奸詐,從中可以深刻體會(huì)到。
俗話說(shuō),技不壓身,很早就開(kāi)始想轉(zhuǎn)入蘋(píng)果開(kāi)發(fā)的系列了,最初從購(gòu)買自己的Iphone4s開(kāi)始,就有這個(gè)念頭,那時(shí)候還很早,剛剛2012年初發(fā)布的時(shí)候就入手一臺(tái),同年花錢弄了一個(gè)IMAC,一直用不習(xí)慣,不過(guò)好在安靜、方便、大屏幕,偶爾用來(lái)晚上玩玩,白天工作不用。
2、蘋(píng)果平臺(tái)的轉(zhuǎn)換
蘋(píng)果桌面操作系統(tǒng)的使用習(xí)慣和Windows很不同,你可能習(xí)慣在WIndows里面使用Ctrl,而Mac系統(tǒng)主要用Command鍵替代,雖然鍵盤也有control鍵,但是意義完全不同,傳統(tǒng)的Windows的Shift按鍵在Mac系統(tǒng)里也用Option鍵替代。最開(kāi)始默認(rèn)的蘋(píng)果鼠標(biāo)還沒(méi)有右鍵功能,用了好久才發(fā)現(xiàn),可以啟用右鍵菜單功能,甚至滾輪的方向都有所不同。總之,用慣了Windows平臺(tái),你使用Mac系統(tǒng),會(huì)有一個(gè)適應(yīng)的過(guò)程。
使用蘋(píng)果的Mac系統(tǒng),你也可以使用Windows傳統(tǒng)的大鍵盤,不過(guò)建議還是選擇較貴的蘋(píng)果小鍵盤,雖然不太習(xí)慣按鍵太小,但是很多快捷功能,你在Windows鍵盤里是不起作用的,這個(gè)非常不方便,反正選擇配套就對(duì)了,呵呵。
蘋(píng)果的系統(tǒng),很多功能都在菜單里面尋找,在我們開(kāi)發(fā)之前,最好把基本的系統(tǒng)應(yīng)用都熟悉一下,一個(gè)對(duì)這個(gè)系統(tǒng)有個(gè)了解,二個(gè)對(duì)蘋(píng)果的各種操作有一個(gè)詳細(xì)的概念,否則你還不知道文件如何管理呢。
我的操作系統(tǒng)原來(lái)裝的是獵豹系列的,也安裝了XCode開(kāi)發(fā)工具了,前陣子想入手開(kāi)發(fā)的時(shí)候,把系統(tǒng)升級(jí)到最新,也把XCode更新到了5.02,這個(gè)整體系列的更新文件有點(diǎn)大,基本上下載了一天的時(shí)間,安裝倒是很快,但是可能偶爾會(huì)因?yàn)榫W(wǎng)速的原因,斷掉,需要接著下載更新。
如果下載多次還是不能成功更新操作系統(tǒng)或者XCode,建議可以通過(guò)Mac系統(tǒng)的迅雷下載軟件,里面有一個(gè) Thunder Store,速度蠻快了,哈哈。
另外,在開(kāi)發(fā)前,最好能夠準(zhǔn)備幾個(gè)IOS設(shè)備,IPAD、IPhone都最好有,呵呵。由于XCode5已經(jīng)不支持進(jìn)行IOS6以下的版本調(diào)試了,因此我把自己的4S從5.1升級(jí)到了7.06,雖然新IOS7系統(tǒng)的界面不太習(xí)慣,不過(guò)為了開(kāi)發(fā)方便,還是升級(jí)最好了。
3、注冊(cè)開(kāi)發(fā)者賬號(hào)及設(shè)置
很早就知道注冊(cè)蘋(píng)果開(kāi)發(fā)者賬號(hào),每年需要繳納99美元,這個(gè)時(shí)候使用信用卡來(lái)處理就很好,支持美元支付的就可以了,我使用招行信用卡,周末的時(shí)候申請(qǐng)的,好像第二第三天就搞定了,響應(yīng)的速度還是很快的。
注冊(cè)開(kāi)發(fā)者賬號(hào)與否,你都可以使用XCode進(jìn)行程序開(kāi)發(fā),但是你開(kāi)發(fā)的應(yīng)用只能在模擬器中測(cè)試,不能在真機(jī)測(cè)試并發(fā)布,而且他們網(wǎng)站還有一些資源使用的限制,不過(guò)開(kāi)始之前可以先熟悉整個(gè)開(kāi)發(fā)的流程和知識(shí),如果確定需要從事開(kāi)發(fā),注冊(cè)購(gòu)買一個(gè)開(kāi)發(fā)者資格還是非常必要的。
以上紅色部分是在蘋(píng)果開(kāi)發(fā)網(wǎng)站里最為重要的部分了。這里面涉及需要下載開(kāi)發(fā)的證書(shū),以及你需要調(diào)試的開(kāi)發(fā)配備證書(shū)等。
通過(guò)一系列的設(shè)置和引導(dǎo),你可能最終弄好了兩個(gè)證書(shū),一個(gè)是開(kāi)發(fā)的證書(shū),一個(gè)是發(fā)布的證書(shū),你需要把它們保存并安裝到你的Mac電腦上。
申請(qǐng)好后,打開(kāi)其中的開(kāi)發(fā)證書(shū),看到有下載的鏈接按鈕。
把他下載到本地,然后把它安裝到本地的鑰匙串里面即可。
弄好了這些后,你需要申請(qǐng)一個(gè)Provisioning Profile的開(kāi)發(fā)證書(shū),然后在XCode的【W(wǎng)Indow】【Organizer】里面把你要開(kāi)發(fā)設(shè)備接入進(jìn)來(lái),因?yàn)樘O(píng)果嚴(yán)格規(guī)定,只有安裝了這個(gè)證書(shū)的IOS設(shè)備,才能用來(lái)真機(jī)調(diào)試,否則是不允許的,因此這些證書(shū)的作用就是標(biāo)識(shí)設(shè)備是你的,能夠用于開(kāi)發(fā)調(diào)試。最好為了方便,把所有的IOS設(shè)備都接入進(jìn)來(lái)了,截個(gè)圖大家了解下。
最后,運(yùn)行XCode的程序,自己創(chuàng)建或者打開(kāi)一個(gè)Demo程序,大致了解下其界面布局吧(默認(rèn)沒(méi)有黑色背景的,我通過(guò)設(shè)置把它調(diào)整了以下,感覺(jué)眼睛舒服了很多。
4、相關(guān)知識(shí)的了解
要了解整個(gè)IOS開(kāi)發(fā)的系列內(nèi)容,當(dāng)然需要全方位的知識(shí)掌握,在開(kāi)發(fā)之前,我自己通過(guò)網(wǎng)上了解了很多Objective-C的基礎(chǔ)知識(shí),好像51CTO里面的系列文章還不錯(cuò)。看了不少,逐漸對(duì)這個(gè)語(yǔ)言也有所了解。
相對(duì)于電子書(shū)籍,傳統(tǒng)的書(shū)籍也是很有必要的,因此,我自己也通過(guò)了圖書(shū)館借了一些書(shū)籍幫助了解,借助各種知識(shí)的加強(qiáng)學(xué)習(xí),能夠?qū)Code的使用和Objective-C的語(yǔ)法等使用有一個(gè)非常好的熟悉了解。如下面就是我自己從圖書(shū)館第一次接回來(lái)的書(shū)籍。
不過(guò),對(duì)于全面了解Objective-C等的內(nèi)容,我后來(lái)發(fā)現(xiàn)蘋(píng)果開(kāi)發(fā)平臺(tái)里面的內(nèi)容更是全面,雖然全部是英文的,但是看起來(lái)非常舒服,敘述的很流暢,關(guān)鍵一點(diǎn),是蘋(píng)果把最新最好的特點(diǎn)都敘述的很清晰了,這個(gè)比起其他書(shū)籍介紹的內(nèi)容,更加好。
否則你如果看各種參差不齊的書(shū)籍,可能對(duì)很多地方都有疑問(wèn),如有些書(shū)籍或者網(wǎng)上的文章,還是在ARC的引入之前的,大量介紹retain release等內(nèi)容,而Release在引入ARC后,已經(jīng)不需要寫(xiě)了,引用計(jì)數(shù)交給編譯器完成了。
?如在蘋(píng)果開(kāi)發(fā)網(wǎng)站里面,有一些序列的文章很不錯(cuò),我自己倒是花了一整天的時(shí)間把它學(xué)習(xí)了一遍,感覺(jué)介紹的非常清晰,內(nèi)容都是蘋(píng)果根據(jù)最新的特性進(jìn)行更新的,這點(diǎn)非常棒。
Start Developing iOS Apps Today
Programming with Objective-C
iOS App Programming Guide
?
好了,下一篇繼續(xù)介紹IOS開(kāi)發(fā)的相關(guān)的內(nèi)容,主要介紹C#和Objective-C的一些相同和不同的地方,把他們做一些對(duì)比,以便加深學(xué)習(xí)印象。
總結(jié)
以上是生活随笔為你收集整理的从C#到Objective-C,循序渐进学习苹果开发(1)--准备开发账号和开发环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Oracle 摘去数据块的面纱
- 下一篇: 线性表--链式实现方式