7個(gè)提高開發(fā)能力的趣味性項(xiàng)目,速來體驗(yàn)!
人們在一千天的訓(xùn)練之后,就能達(dá)到入門水平,而在一萬天的練習(xí)之后則可以達(dá)到大師水準(zhǔn)。
這句話是Mas Oyama說的,總結(jié)得十分到位。成為一個(gè)偉大的開發(fā)者的秘訣就是努力。花大量時(shí)間練習(xí)計(jì)算機(jī),親身實(shí)踐,可以幫助開發(fā)人員成長。
本文介紹了7個(gè)可以嘗試的項(xiàng)目,能夠幫助提高開發(fā)人員的水平。
項(xiàng)目1: Pac-Man
構(gòu)建Pac-Man可以很好地了解游戲開發(fā)的基本知識。可以利用諸如React或Vue之類的JavaScript框架來實(shí)現(xiàn)這一點(diǎn)。
你將會(huì)學(xué)到:
- 實(shí)體移動(dòng)
- 按鍵檢測
- 碰撞檢測
- 如果你特別努力的話,也能學(xué)到在虛擬目標(biāo)上添加導(dǎo)航
GitHub庫:https://github.com/mbfassnacht/pacman-react
項(xiàng)目2: 用戶管理
制作一個(gè)CRUD應(yīng)用程序來實(shí)現(xiàn)用戶管理,在此過程中可以學(xué)到很多關(guān)于開發(fā)的基礎(chǔ)知識。這對于入門的開發(fā)人員尤其有用。
你將學(xué)到的有:
- 路由
- 處理表單,驗(yàn)證用戶輸入
- 與數(shù)據(jù)庫結(jié)合的創(chuàng)建、讀取、更新、刪除等操作
GitHub庫:https://github.com/indreklasn/laravel-5.4-crud-example
項(xiàng)目3: 監(jiān)測當(dāng)?shù)靥鞖?/strong>
GitHub庫:https://github.com/SwiftTsubame/iOS11Weather
如果想開始構(gòu)建應(yīng)用程序,可以從天氣應(yīng)用程序著手,節(jié)約了大量時(shí)間。
除了收獲構(gòu)建應(yīng)用程序的經(jīng)驗(yàn)之外,你還可以學(xué)到:
- 與API交互
- 定位的使用
- 通過添加文本輸入來增加靈活性,如用戶可以輸入位置來查看該位置的天氣
可以在OpenWeather API上獲取天氣數(shù)據(jù)。
OpenWeather API的更多信息:https://openweathermap.org/api
項(xiàng)目4: 對話框
構(gòu)建一個(gè)對話框十分適合套接字的初學(xué)者。在選擇技術(shù)棧時(shí),有很多不同的選擇,Node.js就是其中之一。
這個(gè)項(xiàng)目最大的收獲是,可以學(xué)到套接字的工作原理以及創(chuàng)建方式。
項(xiàng)目5: GitLab CI

圖源:https://vshn.ch/en/blog/automated-build-pipelines-with-gitlab-ci-and-appuio/
持續(xù)集成(CI)的新手可以從GitLab CI入手。設(shè)置多個(gè)環(huán)境,并嘗試在管道中運(yùn)行一些測試。這個(gè)項(xiàng)目不是很繁重,但我相信你會(huì)學(xué)到很多。現(xiàn)在很多開發(fā)團(tuán)隊(duì)都使用CI,它是一個(gè)再合適不過的工具。
你將學(xué)到的有:
- 了解GitLab CI
- 配置一項(xiàng).gitlab-ci.yml 給GitLab運(yùn)行者發(fā)送指令
- 部署其他環(huán)境
項(xiàng)目6: 網(wǎng)站分析

制作一個(gè)分析網(wǎng)站語義的抓取工具,并為它們創(chuàng)建排名。例如,可以檢查圖像上是否缺少alt標(biāo)簽,檢查頁面上是否有SEO meta標(biāo)簽,甚至可以在不創(chuàng)建UI的情況下實(shí)現(xiàn)抓取。
你將學(xué)到的有:
- 抓取工具的工作原理
- 制作DOM selectors
- 寫算法
- 如果努力的話,可以學(xué)到創(chuàng)建UI,以及為抓取的網(wǎng)站寫份報(bào)告
項(xiàng)目7: 研究社交媒體的情緒

圖源:https://www.csc2.ncsu.edu/faculty/healey/tweet_viz/
研究社交媒體的情緒可以很好地幫助了解機(jī)器學(xué)習(xí)。
可以從研究一個(gè)社交媒體平臺(tái)開始,推特就是典型的切入點(diǎn)。
有更多機(jī)器學(xué)習(xí)經(jīng)驗(yàn)的開發(fā)人員可以嘗試挖掘不同的社交媒體平臺(tái),然后整合這些數(shù)據(jù)。
你將學(xué)到的有:
- 掌握機(jī)器學(xué)習(xí)