新手必讀!如何制作和發(fā)布你的第一款iPhone App!? 1. App的基本概念和要素 簡(jiǎn)單來(lái)說(shuō),app就是在智能手機上運行的計算機軟件程序。它一般先由程序員開(kāi)發(fā)出來(lái),再與設計師創(chuàng )作的圖形元素相組合才能得以完成。制作iPhone app的工具主要是一款名為Xcode的軟件。開(kāi)發(fā)工具主要有Swift 和Objective-C。許多app都有允許在云端儲存信息及與其他用戶(hù)聯(lián)接的后臺程序(back-end )。 借助Xcode可以制作原生的iPhone app,但Xcode只能在Mac OS X操作系統下運行。它包含可以制作圖形元素的界面創(chuàng )建器(Interface Builder)。另外它只是一款構建工具,用它無(wú)法實(shí)現具體的app功能,只能為用戶(hù)圖形界面(GUI)建立一個(gè)基礎。 新手必讀!如何制作和發(fā)布你的第一款iPhone App!? Xcode的功能十分豐富,例如,自動(dòng)排版(Auto Layout)能讓app界面在不同解析度的屏幕上都正常顯示,iPhone模擬器(iPhone Simulator)可以讓你不用iPhone也能對app進(jìn)行測試。 要在A(yíng)pp Store中發(fā)布制作好的app,你需要從蘋(píng)果官方獲得一個(gè)開(kāi)發(fā)者賬號。這個(gè)賬號需要花99美元購買(mǎi),可以用一年。蘋(píng)果還有一系列的app管理維護工具,叫做 iTunes Connect。 2. App的制作流程 幾乎任何一款app都要遵循以下的制作步驟: 1. 設計。做出app的模型文件(mockup)并將所有元素都置于屏幕上。 2. 開(kāi)發(fā)。這一步包括編寫(xiě)代碼,將“如果-下一步”類(lèi)型的操作與界面組合起來(lái)。 3. 測試。將beta版本的app發(fā)送給測試者,并根據他們的反饋修正錯誤。 4. 發(fā)布。接受官方的評估并在A(yíng)pp Store中正式推出。 即便是以后要在app中增加新功能,基本上也是按照設計,編程,測試,發(fā)布的流程來(lái)做的。 3. On Swift and Objective-C 目前,iPhone app都是以Swift 或Objective-C寫(xiě)成的。Swift是蘋(píng)果官方開(kāi)發(fā)的一種編程語(yǔ)言,于2014年6月首次發(fā)布,正式的1.0版則于2014年9月份發(fā)布。它是一種很新的編程語(yǔ)言,目前,App Store中已經(jīng)有不少完全使用Swift編程的App. Swift受到了初級及資深程序員的一致歡迎。Swift語(yǔ)言的一個(gè)顯著(zhù)優(yōu)勢就是它可以與Objective-C語(yǔ)言互換。這對于程序員而言非常便利,因為這樣一來(lái),他們就省去了為了與新語(yǔ)言兼容而改寫(xiě)整個(gè)代碼庫的麻煩。 Swift 與Objective-C哪個(gè)更好? Objective-C的句法較為特殊,因此掌握起來(lái)相對困難一點(diǎn)。對于初級編程者來(lái)說(shuō),毫無(wú)疑問(wèn)是Swift更好一點(diǎn)。與Objective-C相比,Swift的入門(mén)門(mén)檻更低,因此在開(kāi)發(fā)過(guò)程中也能節省一些經(jīng)費。 盡管如此,Objective-C在全球范圍內依然是許多軟件公司采用的標準語(yǔ)言,這種情況在未來(lái)一段時(shí)間內還會(huì )繼續存在。 4.中間件:一次完成,多處應用 中間件(Middleware),例如Cordova 或PhoneGap,也很受開(kāi)發(fā)者的歡迎。因為借助中間件,開(kāi)發(fā)者只需一次寫(xiě)完代碼,就可以它們同時(shí)應于用安卓或iOS平臺上。 安卓平臺上的app都是以Java寫(xiě)成的,與iOS app互不兼容。如果你想在這兩個(gè)平臺上都發(fā)布app但又不愿重寫(xiě)一遍代碼,那么中間件可以為你節約不少時(shí)間。 很多中間件(或跨平臺工具)都是基于網(wǎng)絡(luò )技術(shù)而構建的,如HTML5, CSS 和JavaScript等。 目前此類(lèi)工具中最受歡迎的是Phone Gap。Phone Gap自帶app創(chuàng )建工具,并可把app導出到Xcode中運行和修改,這樣的得到的app是“混合型”的---意味著(zhù)它的元素與HTML5組合在一起。 新手必讀!如何制作和發(fā)布你的第一款iPhone App!? PhoneGap目前推出了PhoneGap Build新工具,從而以云端解決方案替代了原有的Xcode編寫(xiě)器。PhoneGap是一款免費且開(kāi)源的工具。 與PhoneGap類(lèi)似的工具還有: Phone Gap比這些工具更有優(yōu)勢的地方在于,它不僅支持不同的系統(iOS, Android, Windows Phone, BlackBerry OS, Ubuntu and Firefox OS),還支持硬件(加速器, 相機等等。) 中間件的美中不足之處 但中間件存在兩個(gè)主要缺憾之處: 由于此類(lèi)工具多數是基于網(wǎng)絡(luò )技術(shù),因此無(wú)法支持硬件加速。在原生app中也無(wú)法支持動(dòng)畫(huà),切換特效和高解析度的圖片,所以,它無(wú)用應用于制作游戲或像素密集型app。 此外,使用中間件也需要開(kāi)發(fā)者很熟悉編程器和開(kāi)發(fā)工具,這無(wú)疑給初級開(kāi)發(fā)者造成了很大困難。 5.設計:App如何工作 編程只是制做app過(guò)程中的一部分。界面設計在app的制作中也占很大的比重。如果你的條件允許的話(huà),不妨雇傭一個(gè)專(zhuān)門(mén)的界面設計師。你可以在Elance 或 oDesk這類(lèi)外包網(wǎng)站上找到很多這類(lèi)人才。 雖然如此說(shuō),但如果你剛剛開(kāi)始學(xué)習制作app的話(huà),也可以使用網(wǎng)上現有的模板。這些模板也許不能讓你的app看起來(lái)異常漂亮,但至少不會(huì )壞到哪里去。對于初學(xué)者而言,這是一個(gè)可以節約金錢(qián)和時(shí)間的好辦法。 工具與資源 蘋(píng)果的人機界面指南(Human Interface Guidelines)已經(jīng)就app中的基本元素及如何使用這些元素給出了很好的建議。 圖標:建議使用圖標文件包,如Glyphish(收費)。這類(lèi)文件包通常包含上千個(gè)圖標文件,且專(zhuān)門(mén)針對iPhone app做了優(yōu)化。包括社交媒體圖標及與app操作相關(guān)的一系列圖標。 模型:強烈推薦使用Balsamiq Mockups(收費,但有免費試用版)。App 模型相當于一個(gè)草稿,它顯示了你的app將如何工作,又有那些功能。永遠不要只顧埋頭編程,事先在模型中測試一下UI和排版能避免很多錯誤。 如果你制作了一個(gè)模型,但對于app的真實(shí)界面還是不放心的話(huà),不妨試試Teehan+Lax團隊開(kāi)發(fā)的design PSDs(免費)。這些素材中包含了幾乎所有iOS系統下的GUI元素,而且是矢量文件。它們一定能讓你的模型變得更為完美。 6. 如何將App與互聯(lián)網(wǎng)連接? 如果你的app需要與網(wǎng)絡(luò )連接的話(huà),可以使用伺服器端語(yǔ)言如NodeJS, Ruby 或PHP創(chuàng )建一個(gè)自定義后臺,這將為你節約很多時(shí)間和精力。簡(jiǎn)便一點(diǎn)的方法是使用一個(gè)“服務(wù)器即平臺”(Platform-as-a-Service)工具,比如說(shuō)Parse。Parse是一種旨在為app提供線(xiàn)上或線(xiàn)下存儲服務(wù)的解決方案。 新手必讀!如何制作和發(fā)布你的第一款iPhone App!? 有了Parse之類(lèi)的解決方案,就完全不需要再創(chuàng )建自定義的后臺了。Parse最基本的用戶(hù)是免費的,高級用戶(hù)收費為100美元/月。 7. 從Beta 到Live 你制作的app在正式發(fā)布之前,需要先上傳到iTunes Connect中。你需要提供app的基本信息,如描述,分類(lèi)和app的形象圖標。 接下來(lái)會(huì )進(jìn)入評估階段。這時(shí)蘋(píng)果官方為保證進(jìn)入App Store 的app的質(zhì)量而采取的一項措施。整個(gè)評估大概需要2周左右的時(shí)間。 初次創(chuàng )建app時(shí)的10個(gè)常見(jiàn)問(wèn)題 1. 制作一個(gè)app的成本有多高? 根據公司的規模而有所不同。外包設計師制作一個(gè)簡(jiǎn)單的app一般收費在3000美元左右。而像Tinder, Pinterest, Facebook這樣的公司可能會(huì )為一款App花費數百萬(wàn)美元。就像那句老話(huà)說(shuō)的那樣:一分價(jià)錢(qián)一分貨。 2. 我在為app編程時(shí)遇到了困難。該向誰(shuí)求助呢? 初級及中級程序員遇到的問(wèn)題,通常能在StackOverflow之類(lèi)的技術(shù)論壇找到答案。而對于非技術(shù)性的問(wèn)題,例如價(jià)格或UX/UI等方面的問(wèn)題,Quora是個(gè)不錯的地方。 3.我有一個(gè)不錯的app創(chuàng )意,該如何開(kāi)始制作? 如果你真的想制作一款商業(yè)性的app,首先應該做的事就是了解一下市場(chǎng)及用戶(hù)需求。大多數成功的app之所以成功,是因為它能解決用戶(hù)最急迫的需求,所以用戶(hù)才心甘情愿出錢(qián)購買(mǎi)它。一定要在實(shí)際了解用戶(hù)的情況之后,再去著(zhù)手進(jìn)行開(kāi)發(fā)階段的工作。 4.為了制作app,我需要專(zhuān)門(mén)買(mǎi)一部iPhone嗎? 不需要,但我建議你買(mǎi)一部。雖然Xcode有自帶的iPhone模擬器,但從電腦屏幕上看到的效果跟你握在手里的效果畢竟不同。所以我建議你買(mǎi)一部真實(shí)的設備。 5.我數學(xué)不好,這對編程有影響嗎? 有,但也可以說(shuō)沒(méi)有。很多編程的原則都與數學(xué)密切相關(guān),但在實(shí)際制作app時(shí)幾乎用不到這些數學(xué)知識。當你的編程技術(shù)越來(lái)越熟練時(shí),可能會(huì )發(fā)現自己不知不覺(jué)地已經(jīng)學(xué)會(huì )了不少數學(xué)技巧。 6.我在軟件公司上班。我是應該把關(guān)于app的好點(diǎn)子告訴公司呢,還是自行開(kāi)發(fā)? 這要看公司的性質(zhì)和你在公司的職位。如果你的公司與app有密切關(guān)系的話(huà),不妨把你的計劃跟主管談?wù)?。如果你覺(jué)得自己的創(chuàng )意得不到重視,也可以自行開(kāi)發(fā)。但要注意法律規定。因為你在受雇于公司時(shí)開(kāi)發(fā)的產(chǎn)品也有可能被認定為版權歸公司所有。 7.我想開(kāi)發(fā)的app在A(yíng)pp Store中已經(jīng)有了,我該怎么辦? “已經(jīng)有類(lèi)似的App了”并不能代表現存的app就很優(yōu)秀。你依然可以開(kāi)發(fā)出更優(yōu)秀的app與之競爭。同樣的,如果你想開(kāi)發(fā)的app在A(yíng)pp Store中不存在,這并不一定意味著(zhù)是個(gè)填補空缺的好機會(huì )。因為也可能以前有人開(kāi)發(fā)過(guò),但因為不受歡迎而被撤下了。 8. iPhone為何有時(shí)又被稱(chēng)為 iOS? iMac開(kāi)啟了蘋(píng)果產(chǎn)品以i打頭的先河.。從那之后便產(chǎn)生了iTunes, iPod, iPad 和iPhone等產(chǎn)品。因為把運行于iPhone上的操作系統(OS)稱(chēng)為iOS就絲毫不奇怪了。 9. 如何讓我的iPhone app在市場(chǎng)上獲得成功? 這個(gè)問(wèn)題需要寫(xiě)好多本書(shū)才能說(shuō)得清。但所有已經(jīng)取得成功的App都有個(gè)特點(diǎn),就是它們一次只解決一個(gè)問(wèn)題,并且解決得好到使客戶(hù)愿意花錢(qián)買(mǎi)它。 你可以先找到一個(gè)要解決的問(wèn)題,然后去尋找急需解決方案的客戶(hù)。也可以先做客戶(hù)調查,弄清楚他們急需解決的問(wèn)題。除此之外,要注意多與潛在客戶(hù)保持聯(lián)系和溝通。 10.學(xué)習編程應該注意什么? 不要半途而廢。半途而廢是學(xué)習編程最低效的方式。學(xué)習一項新技術(shù)的確要投入許多時(shí)間和精力。中途放棄永遠學(xué)不會(huì )任何東西。 另外,也不要輕信書(shū)上關(guān)于編程方法的“捷徑”。編程需要親自去寫(xiě)代碼,并從錯誤中一點(diǎn)點(diǎn)地學(xué)習。 結語(yǔ)
看到你自己制作的app出現在A(yíng)pp Store中是件振奮人心的事?,F在,對于制作app的方式和流程你已經(jīng)有了大致的了解。接下來(lái),你可以找一本教程,先從學(xué)習Swift開(kāi)始,進(jìn)而嘗試用Balsamiq做出漂亮的界面,之后申請一個(gè)蘋(píng)果開(kāi)發(fā)者賬號。用不了多久,你就會(huì )看到自己親手制作的App在A(yíng)pp Store中閃閃發(fā)光了!
http://m.fj256.com/new/260 http://m.fj256.com/new/258 http://m.fj256.com/new/257 http://m.fj256.com/new/255 http://m.fj256.com/new/254 http://m.fj256.com/new/253
轉自藝術(shù)中國,如有問(wèn)題,請通知管理員即行刪除。