App開發需要重點學習什麼計算機技術?


謝邀。

App 開發範疇過於龐大,包括各路客戶端(Android、iOS、WP 等)、服務端(主流語言 Java、Php 等)。

肥肥對於 iOS 和服務端開發一竅不通,對於 Android 開發勉強算是略知一二,在各路大神面前班門弄斧一次。

Android 開發需要掌握的技能:

  • Java 基礎知識(就 Java 編程思想章節來說)
    • Java 的注釋
    • 操作符
    • 控制執行流程
    • 初始化與清理
    • 訪問控制許可權
    • 復用類
    • 多態
    • 介面
    • 內部類
    • 持有對象(集合的使用)
    • 通過異常處理錯誤
    • 字元串
    • 泛型
    • 數組
    • Java I/O 系統(可不深入)
    • 枚舉(可不深入,Android 不建議使用)
    • Java 多線程(並發)

// 特別感謝 hehe2015 前輩的指點,肥肥確實將 Java 很重要的多線程遺漏了。2015年04月22日早。特此感謝。

  • Android 基礎知識

肥肥無恥的做一次伸手黨,直接用了前輩的一張圖(android學習路線圖):

2015年04月20日 上午修改。

受到 M.A.G.I 前輩在 Android技術路線應該如何發展? - 互聯網 wewe難題中回答的啟發,感覺其總結的更為全面,故而將線路圖替換為Android 知識圖譜 博客中的圖。在此像該圖的原作者和 M.A.G.I 致敬。

  • 設計模式
    • 簡單工廠模式
    • 抽象工廠模式
    • 策略模式
    • 裝飾模式
    • 代理模式
    • 工廠方法模式
    • 原型模式
    • 模板方法模式
    • 外觀模式
    • 建造者模式
    • 觀察者模式
    • 狀態模式
    • 適配器模式
    • 備忘錄模式
    • 組合模式
    • 迭代器模式
    • 單例模式
    • 橋接模式
    • 命令模式
    • 職責鏈模式
    • 中介者模式
    • 享元模式
    • 解釋器模式
    • 訪問者模式

或者參考該回答下

有哪些在實際 Android 項目中用到的設計模式? - Android 開發

M.A.G.I 和 張明雲 兩位前輩的回答,非常精彩,肥肥不再累述。

  • 其他工具
    • 版本管理(Git、Githu)
    • Android Studio 中 Gradle 的使用
    • 文件比較工具
    • 項目管理工具(Project 等)
    • 任務管理工具(肥肥偏愛 TodoList,開源,好用)

stormzhang 前輩的自學之路:

知乎:如何自學 Android 編程? - Android 開發

博客:stormzhang博客精華

還有明雲前輩的專欄:張明雲的知識共享 - 知乎專欄

還有各位前輩的總結 有哪些 Android 大牛的 blog 值得推薦? - Android 開發


找個完整APP源碼,看懂就差不多了,後面就是邊做邊學

Objective-C singro/v2ex · GitHub

Swift YANGReal/JokeClient-Swift · GitHub


學習是個愉快的事,別被這龐大的學習體系嚇到了,從你當下的點點滴滴做起。

比如說,你想做個簡單的app,把你的需求和你構想的界面流程向有經驗的人分解下,裡面有哪些東西,涉及到哪些技術。如果還覺得複雜就再簡化需求,直到一個月的工作量。

有目的的學習,入門可以先不管這些語法變數等等,本身就是面向對象的語言,你只需要有嚴謹的思維邏輯就能學會的。將這些量化的任務排好優先順序,一一實現,不會的現查,問人,copy。

如果一個月後你想做的實現了,再考慮要不要繼續學下去。然後再去知其然知其所以然也不遲。畢竟這要系統的花上好幾年的時間。

一入IT深似海,少年,還是再考慮下 :)


先把所需的編程語言看會,然後上手開發,什麼類庫沒見過就去查文檔,什麼組件不知道就去學。


肥魚不要嚇到樓主,

羅列一堆名詞有什麼意義,

想開發安卓應用就去學Java,

想開發蘋果系的應用就去學objective-C(更新為 swift),

需要的時候再去學其他,

根本不用一開始就大而全,

樓主只是想吃盤小炒肉,

何必讓他去殺豬甚至去養豬呢?


一個app從設計到最終實現需要你懂得以下幾個必要方面

1、前期需求規劃與信息——你需要制定出一個完整的需求文檔,功能文檔,流程圖,時序圖。

2、交互設計、UI設計——設計出基本且完善的原型圖和app基礎的交互設計效果,之後再根據這些設計出完整的UI界面並學會切圖,一些需要做自適應的素材圖片需要做點9patch。 這裡還需要你懂得px,pt和dp之間的換算,屏幕密度的換算和相互之間的係數,以便你的app能完美適應不同解析度設備。其中交互設計需要你懂得很多人機操作的技巧經驗,掌握Axure等交互工具的使用,UI設計需要你掌握Photoshop和Illustrator等操作。

3、使用ADT之類的開發環境進行app軟體開發,你最基本的也得掌握開發語言,熟悉開發環境和機制。

4、如果不是單機版的app,需要用到伺服器,那你還得掌握WebService相關知識和開發語言,常用的有http://ASP.Net,PHP,JSP等。

5、熟悉並能開發資料庫。

6、某些功能需要做演算法,這還需要一定得專業知識,尤其是數學基礎。

7、熟悉API介面開發,這裡包括你自行開發API的能力以及調用第三方API的經驗。

8、熟悉TCP/IP,socket等網路協議和相關知識。

9、熟練掌握App發布的流程,真機調試技巧,證書,打包,上架。

如果覺得我的觀點對你有所幫助的話,請點贊,我繼續接下來的分享 :)


原生app:Android app掌握java語言(具體是java SE)了解Eclipse/MyEclipse開發工具

iOS app掌握objective-c語言,了解Xcode

web app:html(HTML5)+css(CSS3)+JavaScript語言

混合app:了解專門IDE和開發語言

iMAG APP:熟悉xml(原生控制項)+JavaScript(iMAG.js)##平台內有詳細的開發文檔和模板方便學習,開發一次就能生成Android和iOS兩個系統的app


英語最重要


看對自己的要求了。如果只是當做業餘愛好,那買一本基礎的書,敲敲代碼就可以。

如果是打算以安卓開發為工作,那最好精通Java語言,Android系統機制原理等。


如果是想在學校學的話,很多想學app開發的人都會困惑app開發究竟是屬於哪個專業,上網搜索APP培訓學校,可當我們進入學校網站時,看到的卻沒有APP培訓的字眼

這是因為現在app軟體開發在我國屬於初始階段,並沒有獨立的學科,也沒有專門的學校來培訓APP。現在學校學習app的課程其實就是android、IOS等課程,學習這些方向就能開發app。

如果沒有編程基礎的話,可以從編程的入門開始學,比如basic和pascal,再轉C語言,慢慢看看c++,java之類的。

JAVA是安卓app開發的基礎語言,從變數,函數,類,借口的創建和使用,到各類常用API的使用。

iOS開發的標準使用語言就是objective-c,它是C的一種超集,超越C語言。只要你學過C語言,iOS開發便不難

比較常用的技術先學,打好基礎是關鍵,包括:

  • 1、Activity生命周期

  • 2、界面開發技術

  • 3、數據存儲技術

  • 4、網路編程。

因此學習APP開發方面的話,打好基礎是關鍵。可以去找相關書籍了解。

而關於app開發時間的話,如果自學android開發的話,根據自學能力的不同,學習的時間也不同,有的估計幾年都學不好吧


從開發語言上來說: 需要熟練掌握伺服器端和手機端各一門語言.

伺服器端語言,可以選擇 php,java,nodejs,ruby等;

手機端開發,根據不同的操作系統需要選擇不同的語言.iPhoned手機,操作系統是iOS,需要使用 objective-c或者 swift 開發.Android 手機,操作系統是Android,使用 java 語言開發。

越來越多的公司出於開發周期和工程師資源的一些權衡,傾向於以 Html + JavaScrpit為主要技術的標準開發方式.國內混合開發的技術,已經比較成熟了,也湧現了一批平台級的服務商,如APICloud.

從實際功能上來說,伺服器端開發和手機端開發側重點略有不同.伺服器端開發,要著重掌握 sql 資料庫語言,要能獨立設計資料庫表,熟練進行常用的資料庫的增刪改查操作.手機端開發,側重於UI界面的布局.著重掌握不同類型的列表型結構的UI的設計技巧即可.


第一、程序相關

如果想成為android應用開發者,最基本的是需要懂得用Java語言和XML知識。掌握了這兩種語言後再裝個Eclipse和Android SDK, 就可以做開發了。當然,還得學Android特有的API的用法。Java和XML只是編程基礎。

如果希望成為iOS應用開發者,那麼需要知道1、語言基礎:Objective-C語言、xcode開發環境;2、手機使用經驗:足夠的iPhone使用經驗與體會,不然你很難與產品經理和設計人員有效溝通;3、具體的開發能力:主要的開發將集中於界面開發、一定的資料庫開發、通訊介面開發、協同開發與聯調,如果是遊戲,那麼還需要涉及到引擎、建模、素材、光影、故事板等。推薦兩本書兩本經典入門書籍《objective-c基礎教程》和《iphone4和ipad開發基礎教程》。

第二、用戶體驗

好的應用都會有好的用戶體驗,所以在進行app開發之前我們就要要拿出方案,想想用戶在什麼情況下使用我的應用,用戶的使用態度是什麼,其中應用中哪些是核心功能,哪些是輔助功能,哪些是邊緣功能,最佳操作路徑怎麼建立,如何將功能分布到頁面上,同時我的應用界面應該是什麼風格和樣式,最終要畫出來UI方案。


Android的話需要學習java C

IOS的話需要學習OC swift

其他的你還需要學習html 語言、js等


如果懂web技術的話,可以去APICloud,用HTML5就能開發ios和android APP。


java,c++.

至少這兩個得會吧?

如果啥都不會,還想做APP,我只能說——

為什麼不去

「應用之星」 這樣的網站?

免費的在線APP開發平台,面向小白用戶,不需要技術,分分鐘製作一個APP。

操作很簡單,功能還不錯。

電子書APP、有聲讀物APP、音樂APP等,很容易上手。

無圖無真相,上圖!http://www.appstar.com.cn


先從基礎的編程語言開始學習吧 c Java學習下


第一、程序相關

如果想成為android應用開發者,最基本的是需要懂得用Java語言和XML知識。掌握了這兩種語言後再裝個Eclipse和Android SDK, 就可以做開發了。當然,還得學Android特有的API的用法。Java和XML只是編程基礎。

如果希望成為iOS應用開發者,那麼需要知道1、語言基礎:Objective-C語言、xcode開發環境;2、手機使用經驗:足夠的iPhone使用經驗與體會,不然你很難與產品經理和設計人員有效溝通;3、具體的開發能力:主要的開發將集中於界面開發、一定的資料庫開發、通訊介面開發、協同開發與聯調,如果是遊戲,那麼還需要涉及到引擎、建模、素材、光影、故事板等。推薦兩本書兩本經典入門書籍《objective-c基礎教程》和《iphone4和ipad開發基礎教程》。

第二、用戶體驗

好的應用都會有好的用戶體驗,所以在進行app開發之前我們就要要拿出方案,想想用戶在什麼情況下使用我的應用,用戶的使用態度是什麼,其中應用中哪些是核心功能,哪些是輔助功能,哪些是邊緣功能,最佳操作路徑怎麼建立,如何將功能分布到頁面上,同時我的應用界面應該是什麼風格和樣式,最終要畫出來UI方案。

第三、產品設計

確定好了UI方案,那麼我的app應用的市場定位、核心價值、產品功能、競爭分析、商業模式和營銷推廣。其中為用戶解決什麼樣的問題(核心價值),怎麼解決(產品功能),有沒有替代方案(競爭分析),為APP開發者帶來什麼好處(商業模式),怎麼讓用戶接觸並安裝使用這款我的APP(營銷推廣)這些問題都需要考慮到。


1 英語

2 數據結構 計算機網路

3 iOS Swift語言 官方API

先做好這些吧


先學會一門主要的開發語言,然後直接開搞 碰到問題一點點解決就好 、


java mysql mvc等等


重點是代碼,學好代碼走遍天下都不怕了;


怎麼也要都會一點,如果不會的話還不如外包比較實在,現在好多的互聯網團隊都很好的,比如優乎,專註於移動端UE設計、UI定製服務,針對APP、公眾號、微官網、微信營銷活動等提供完美的用戶體驗設計服務,12道UI設計工序,讓產品更貼近用戶真實需求,用行業底價以及多樣化的風格滿足顧客的需求。


APP開發還是比較難的,不知道你為什麼要學這個,建議你還是找個學校系統學習一下,現在電腦學校一般都有這方面的課程,會涉及到編程和軟體開發的內容。

第一、程序相關

如果想成為android應用開發者,最基本的是需要懂得用Java語言和XML知識。掌握了這兩種語言後再裝個Android Studio和Android SDK, 就可以做開發了。當然,還得學Android特有的API的用法。Java和XML只是編程基礎。

如果希望成為iOS應用開發者,那麼需要知道

1、語言基礎:Objective-C語言、xcode開發環境;

2、手機使用經驗:足夠的iPhone使用經驗與體會,不然你很難與產品經理和設計人員有效溝通;

3、具體的開發能力:主要的開發將集中於界面開發、一定的資料庫開發、通訊介面開發、協同開發與聯調,

如果是遊戲,那麼還需要涉及到引擎、建模、素材、光影、故事板等。推薦兩本書兩本經典入門書籍《objective-c基礎教程》和《iphone4和ipad開發基礎教程》。

第二、用戶體驗

好的應用都會有好的用戶體驗,所以在進行app開發之前我們就要要拿出方案,想想用戶在什麼情況下使用我的應用,用戶的使用態度是什麼,其中應用中哪些是核心功能,哪些是輔助功能,哪些是邊緣功能,最佳操作路徑怎麼建立,如何將功能分布到頁面上,同時我的應用界面應該是什麼風格和樣式,最終要畫出來UI方案。

第三、產品設計

確定好了UI方案,那麼我的app應用的市場定位、核心價值、產品功能、競爭分析、商業模式和營銷推廣。其中為用戶解決什麼樣的問題(核心價值),怎麼解決(產品功能),有沒有替代方案(競爭分析),為APP開發者帶來什麼好處(商業模式),怎麼讓用戶接觸並安裝使用這款我的APP(營銷推廣)這些問題都需要考慮到。


推薦閱讀:

你在提交蘋果 App Store 審核的過程中有些什麼奇葩體驗?
App Store免費榜、付費榜、暢銷榜的排名規則?
App Store 的「限時免費」機制有何優缺點?
APP Store 首次上線應用 如何加急審核?
蘋果App的編程難嗎?

TAG:AppStore | iOS開發 | 計算機 | Android開發 | 計算機技術 |