《十日談》第0天:技術(shù)選型胰舆、環(huán)境配置

第0天:技術(shù)選型、環(huán)境配置

1. 寫在開始之前

大家好蹬挤,我是 Airing 思瘟。有近一年沒有寫過教程了,因?yàn)榭佳械确N種原因闻伶,也許久沒有寫過博文滨攻。不過這段時(shí)間組建了一個(gè)興趣開發(fā)團(tuán)隊(duì) (Oh~Bear! 零熊:https://oh-bear.github.io),也開發(fā)并上架了一些 APP 產(chǎn)品蓝翰。所以就想到了為社會(huì)服務(wù)光绕,能不能編寫一個(gè)教程,教會(huì)零基礎(chǔ)的童鞋用最短的時(shí)間和最少的精力去學(xué)會(huì)開發(fā)一款 APP畜份,用專業(yè)的開發(fā)流程和簡(jiǎn)單的技術(shù)诞帐,全棧去開發(fā)一款完整的 APP。

其實(shí)爆雹,APP 開發(fā)很簡(jiǎn)單停蕉,只是技術(shù)繽紛讓人眼花繚亂,而且沒有一個(gè)系統(tǒng)的教程钙态,所以才會(huì)使人產(chǎn)生 APP 開發(fā)很困難的假象慧起。未來可能會(huì)出配套的視頻教程吧~

本教程將從零開始,設(shè)計(jì)一個(gè)簡(jiǎn)單的 APP册倒,然后走一個(gè)完成的開發(fā)流程蚓挤,從后端到前端,完整地開發(fā)一款可上架的 Android 與 iOS 雙平臺(tái) APP。雖然這個(gè) APP 很簡(jiǎn)單灿意,但是具備了通常服務(wù)端的需要的增刪改查的完整功能估灿,也用到了最常見的前端開發(fā)控件,作為教學(xué)而言缤剧,實(shí)用性不可估量馅袁。

既然這篇教程將會(huì)持續(xù)十天,那么荒辕,這款 APP 就叫十日吧司顿。

注:本項(xiàng)目在 GitHub 上開源(https://github.com/airingursb/10days

2. 基本要求

本教程雖說是零基礎(chǔ),但必須至少有 JavaScript 編程語言基礎(chǔ)兄纺,否則繼續(xù)跟進(jìn)教程只能是單純地照葫蘆畫瓢大溜,學(xué)不到東西。如果沒有 JavaScript 基礎(chǔ)的童鞋估脆,可以看看我之前寫的一本教程《Before Coding》(電子書地址:https://www.gitbook.com/book/airingursb/before-coding/details)钦奋。

因此學(xué)習(xí)本教程的必備知識(shí)有:

  • 熟悉 JavaScript
  • 使用過 HTML + CSS
  • 了解 HTTP 的基本原理

除此之外你最好還要有:

  • 知道 Linux 的基本命令
  • 了解過 ORM 框架
  • 了解 Git 的使用
  • 至少體驗(yàn)過一次完成的開發(fā)流程
  • 一臺(tái)MacBook(iOS開發(fā)與上架必須)

3. 技術(shù)選型

正如書名所示,前端將使用當(dāng)下最火的移動(dòng)端開發(fā)框架 React Native疙赠,后端將使用當(dāng)下大行其道的 NodeJs 技術(shù)付材,具體后端框架將使用其中最簡(jiǎn)單的 Express + Sequelize。所有的開發(fā)將使用 JavaScript 語言圃阳,況且 js 本身就屬于比較簡(jiǎn)單的語言厌衔,所以童鞋們不必有畏難情緒,開發(fā)流程會(huì)意想不到的順利和簡(jiǎn)單捍岳。

注:前提是請(qǐng)鎖定教程中使用的庫的版本號(hào)富寿。

4. 環(huán)境配置

本書使用過的軟件有(按出現(xiàn)先后順序):

  • OmniPlan:需求與任務(wù)規(guī)劃
  • Balsamiq Mockups:原型設(shè)計(jì)
  • Sketch:UI設(shè)計(jì)
  • Sublime Text:JavaScript 代碼編輯器
  • Chrome:瀏覽器
  • Paw:接口調(diào)試
  • Sequel Pro:MySQL 數(shù)據(jù)庫 GUI 工具

以上軟件中,沒有必須強(qiáng)制安裝的锣夹,如果你沒有自己的編輯器页徐,推薦使用 Sublime Text 或 WebStorm 來寫 JavaScript。另外银萍,如果你是 Windows 系統(tǒng)变勇,Paw 請(qǐng)使用 Postman 代替(那就必須下載 Chrome 了),Sequel Pro 請(qǐng)使用 Navicat for MySQL 代替贴唇。如果你還不知道這些軟件具體怎樣使用搀绣,沒有關(guān)系,等后續(xù)教程用到再安裝研究也不遲戳气。

本教程中涉及的環(huán)境如下:

  • 開發(fā)環(huán)境:MacOS + Nodejs + MySQL
  • 生產(chǎn)環(huán)境:Ubuntu14.04 + Nodejs + Nginx + MySQL(阿里云平臺(tái))

所以必須安裝的環(huán)境有:

  1. Nodejs:直接去官網(wǎng)安裝即可链患。
  2. MySQL:Windows 系統(tǒng)直接下載 msi 文件安裝即可,Linux 系統(tǒng)使用對(duì)應(yīng)的包管理工具直接安裝即可物咳。

另外锣险,如果你使用 Windows 系統(tǒng)蹄皱,推薦安裝 GitBash 使用 linux 命令行操作览闰,這樣才能緊貼教程芯肤。如果你是 Windows 系統(tǒng),且不想購買阿里云的服務(wù)器進(jìn)行線上部署压鉴,又想體驗(yàn)完整的教程崖咨,那么推薦你使用 Virtual Box + Vagrant + GitBash。至于 Vagrant 的安裝教程油吭,可以參考我以前的一篇博文:http://www.reibang.com/p/3c3f35436c05

注:GitBash 是 Git 的附屬工具之一击蹲,你可以百度搜索 Git,下載安裝即可使用婉宰。

綜上歌豺,必須安裝的只有 Nodejs 與 MySQL,安裝過程相對(duì)來說很簡(jiǎn)單心包,這里就不再給出安裝教程了类咧,安裝過程中如果遇到問題請(qǐng)積極問度娘。未來出了視頻教程蟹腾,會(huì)在視頻中演示如何安裝痕惋。另,在教程的最后娃殖,也會(huì)給予大家一個(gè)配好了所有環(huán)境并部署了代碼的 Linux 虛擬機(jī)值戳,若有需要自行下載即可。

5. 開發(fā)進(jìn)度安排

既然說了零基礎(chǔ)10天開發(fā)炉爆,那么就得有一個(gè)恰當(dāng)?shù)拈_發(fā)計(jì)劃堕虹。完整的最小開發(fā)團(tuán)隊(duì)里,需要有產(chǎn)品經(jīng)理芬首、UI設(shè)計(jì)師鲫凶、前端開發(fā)工程師、后端開發(fā)工程師衩辟,而本教程里螟炫,我們將一個(gè)人頂四個(gè)人用,并且為了教學(xué)的方便艺晴,所以前后端串行開發(fā)昼钻,先進(jìn)行后端開發(fā),后進(jìn)行前端開發(fā)(實(shí)際開發(fā)中封寞,前后端可并行開發(fā))然评。

“十日”開發(fā)計(jì)劃
十日概覽
  • 產(chǎn)品經(jīng)理需要進(jìn)行原型設(shè)計(jì),并提供給團(tuán)隊(duì)需求文檔狈究,給 UI 設(shè)計(jì)師原型稿碗淌。
  • UI 設(shè)計(jì)師需要進(jìn)行 UI 設(shè)計(jì),提供前端工程師標(biāo)注圖和素材。
  • 后端開發(fā)工程師需要進(jìn)行后端開發(fā)與線上部署亿眠,提供給前端工程師接口文檔碎罚。
  • 前端開發(fā)工程師需要進(jìn)行前端開發(fā)與產(chǎn)品上架。

看看纳像,我們10天里荆烈,將會(huì)1個(gè)人去做一個(gè)完整團(tuán)隊(duì)里4個(gè)的工作,開發(fā)一個(gè)完整的 APP 并上架竟趾,是不是很有成就感呢憔购?

注:在實(shí)際開發(fā)過程中,團(tuán)隊(duì)里的 Soyeah 同學(xué)擔(dān)當(dāng)了 UI 設(shè)計(jì)的工作岔帽,提供了本產(chǎn)品的 UI 設(shè)計(jì)玫鸟、切圖與標(biāo)注。

十日任務(wù)報(bào)告
十日資源報(bào)告
十日甘特圖

綜上犀勒,大體上分為這七個(gè)流程進(jìn)行屎飘,前端需要一半的周期,后端需要30%账蓉。具體開發(fā)計(jì)劃如下:

  1. 第0天:技術(shù)選型枚碗、環(huán)境配置
  2. 第1天:需求分析、原型設(shè)計(jì)铸本、UI設(shè)計(jì)
  3. 第2天:接口設(shè)計(jì)與簡(jiǎn)單的 demo
  4. 第3天:登錄與注冊(cè)接口開發(fā)及其深度探討
  5. 第4天:服務(wù)端的實(shí)現(xiàn)
  6. 第5天:React Native 初體驗(yàn)
  7. 第6天:登錄注冊(cè)頁面開發(fā)(UI 實(shí)現(xiàn)肮雨、邏輯處理與接口對(duì)接)
  8. 第7天:主頁開發(fā)(state 與 props 的使用)
  9. 第8天:列表頁開發(fā)(ListView 的數(shù)據(jù)綁定與使用)
  10. 第9天:編輯頁開發(fā)(圖片上傳與七牛云存儲(chǔ))
  11. 第10天:服務(wù)端部署與 App 上架

大家加油加油!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末箱玷,一起剝皮案震驚了整個(gè)濱河市怨规,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌锡足,老刑警劉巖波丰,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異舶得,居然都是意外死亡掰烟,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門沐批,熙熙樓的掌柜王于貴愁眉苦臉地迎上來纫骑,“玉大人,你說我怎么就攤上這事九孩∠裙荩” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵躺彬,是天一觀的道長(zhǎng)煤墙。 經(jīng)常有香客問我梅惯,道長(zhǎng),這世上最難降的妖魔是什么仿野? 我笑而不...
    開封第一講書人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任铣减,我火速辦了婚禮,結(jié)果婚禮上设预,老公的妹妹穿的比我還像新娘徙歼。我一直安慰自己犁河,他們只是感情好鳖枕,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著桨螺,像睡著了一般宾符。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上灭翔,一...
    開封第一講書人閱讀 51,541評(píng)論 1 305
  • 那天魏烫,我揣著相機(jī)與錄音,去河邊找鬼肝箱。 笑死哄褒,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的煌张。 我是一名探鬼主播呐赡,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼骏融!你這毒婦竟也來了链嘀?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤档玻,失蹤者是張志新(化名)和其女友劉穎怀泊,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體误趴,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡霹琼,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了凉当。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枣申。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖纤怒,靈堂內(nèi)的尸體忽然破棺而出糯而,到底是詐尸還是另有隱情,我是刑警寧澤泊窘,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布熄驼,位于F島的核電站像寒,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏瓜贾。R本人自食惡果不足惜诺祸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望祭芦。 院中可真熱鬧筷笨,春花似錦、人聲如沸龟劲。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽昌跌。三九已至仰禀,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蚕愤,已是汗流浹背答恶。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留萍诱,地道東北人悬嗓。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像裕坊,于是被迫代替她去往敵國(guó)和親包竹。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容