本文爲譯文,做者:Ann Adaya
世上的技術千千萬,你不可能將全部技術一網打盡。前端
所以,你須要找到理想的技術棧,找到適合你的技術,而後盡心盡力。例如,對於現代Web開發來講,一個很好的組合就是MERN棧:MongoDB、Express、React和Node.js,若是你喜歡JavaScript,那麼這就是完美的選擇。面試
還有一個技術棧叫作MEAN。MEAN技術棧的開發人員更喜歡用Angular來代替React。固然,你也能夠選擇將PHP、MySQL,前端也能夠採用基本的HTML和CSS等。此外, Ruby和Ruby on Rails也是面向後端的好技術。編程
不管你選擇哪一種技術棧,都要堅持深刻掌握這些技術。對開發人員來講,廣而不精是大忌。最終,你只會在原地打轉,陷入迷茫。後端
我本人就是一名自學成才的開發人員,我經過本身的努力、耐心、毅力和高度專一,在這一領域取得了成功。網絡
不上大學並不意味着這一行的門檻很低。軟件開發的工做難度很是大,但回報很是豐厚,你遭遇的小失敗不值一提。心之所向,欲之所望,事之所暢。架構
放棄則將一事無成。書山有路勤爲徑,只有天天每時每刻一次次地努力才能換來成功。即使感受本身陷入最深的谷底,你也應該繼續堅持,由於勝利的曙光就在眼前。再多一點堅持,一切困難都會化成機遇。工具
「當一我的面臨失敗之際,最容易且最合乎邏輯的作法就是放棄。而這也是大多數男人的選擇。」—— 拿破崙·希爾學習
在學習編程的時候,妄想掌握一切是不現實的。即使你不知道全部問題的答案,也沒有關係,特別是在剛開始學習編程的時候。重要的是你知道如何尋找答案。測試
編程就是爲了解決問題。若是你不知道如何解決,那麼就須要找到一種方法。經過網絡搜索或找到知道如何解決問題的人,而後從中學習,這纔是最佳的學習途徑。spa
忠告:今天你所遇到的全部編程問題,可能以前的開發人員都已經歷過了。不要從新發明輪子,你必須學會使用輪子。
不管計劃多麼完美,預估工時都不是一件易事。對於項目管理,各個公司都有各自的妙招或策略。在我看來,目前最受歡迎的是敏捷。
不管開發過程多麼詳細,中途老是會遇到困難。不管團隊成員多麼優秀,從業務分析師到測試人員,最終期限老是沒法準時,並且總會拖延。最終期限永遠只是一個估計,在大多數狀況下,在大公司中,構建應用程序一般都會比最終期限晚幾個月,這都很正常。
可是,對於小型項目來講,小型企業主就很是嚴格。若是你打算開展業餘項目,那麼常見的問題或要求之一即是:「預計的交付日期是何時?」一些商業人士並不關心程序,對他們來講重要的是交付最終結果的截止日期。
所以,在向他們承諾截止日時要格外當心。一般他們都會視之爲已知前提,因此你最好留好必定的餘量,讓你有更多的空間和足夠的時間進行一些故障排除和調試。與其讓他們失望,不如給他們一個驚喜。必定要設置標準,由於他們也會給你設置標準。
我認爲這條建議很是準確。
我大部分的編程時間都花在了調試上。在上一個項目中,咱們構建了一款醫療保健的Android移動應用。咱們使用了React Native。我是開發人員。
假設項目花費了一個月,那麼我構建大約花費了10天。其他時間,我都在調試各個依賴項、版本控制以及與當前版本不匹配的其餘軟件包引發的錯誤。
這是個人第一個Android項目。我花費了數週時間來調試屬性,以確保它們適合正確的版本,包括我使用的其餘第三方程序。
構建的部分很是有趣,但調試卻頗有壓力。這是工做的一部分,但很費時間。
高級開發人員給個人一個建議是,每當你在同一個問題或錯誤上連續工做一個小時,那麼就應該嘗試休息一下。作點其餘事情,放鬆心情,由於有時問題就出在咱們本身身上。
我就幹過這種事,時至今日有時還會不懂裝懂。有時,個人同事在討論他們使用過或感興趣的新技術時,我會一直點頭僞裝本身聽懂了。不要緊,你不是惟一一個不懂裝懂的人。
世上的技術太多了,誰都沒法掌握一切。
我一直自強調學習和掌握開發與編程基礎知識的重要性。
首先,你會從教程或其餘代碼庫中複製粘貼代碼開始。這沒什麼很差,只要你理解複製的代碼就好,不然就學不到任何東西。
幾個月後,你應該可以理解其中的一些內容。你應該熟悉一些語法並瞭解一些編程原理。慢慢地,你應該嘗試自行解決問題。嘗試解決問題時,不要複製粘貼代碼,而是構建本身的代碼塊。經過本身的方法、風格和想法來解決問題。
不要在複製粘貼代碼階段花費太多時間。不要懼怕解決問題或編寫出本身的解決方案。你須要經過反覆試驗來掌握更多技術,因此請不斷嘗試,直到你開始理解全部的高難度代碼。這是學習技術的最佳途徑。學習須要時間,但學習編程須要反覆嘗試。
未來你會感謝如今的本身。
剛開始時,你會逐步參與幾個項目。接下來,在漫漫長路上,你參與的項目愈來愈多,直到本身都記不清參與了多少個項目。
而後,某天當你作到第11個項目時,忽然你的老闆問你有關第2個項目的問題。他但願你回頭繼續處理第2個項目,並且這是當務之急。項目2是在一年前創建的,後來就逐漸被人淡忘了。
可是,你沒料到會出現現在這種的狀況,所以你沒有想過爲第2個項目建立文檔。當你打開代碼庫時,不少內容都已經不記得了。你忘記了曾經用過的軟件包、版本、要求、選擇緣由的緣由等等。更糟糕是,你的老闆但願你能在兩週以內完成。
請引覺得戒。下次,記得花點時間爲構建的每一個項目建立文檔。文檔能夠救你一命。
這點很是重要。
不能由於你已經掌握了幾種語言或正在使用的技術棧,就沾沾自喜。別忘了繼續學習。咱們須要學習的技術還不少。技術突飛猛進,不要誤覺得當下掌握的知識在十年後仍然有所幫助。
咱們須要不斷學習,提高本身,由於Android開發在不斷髮展。我以爲這就是Android開發最有魅力的地方,咱們永遠不會錯過學習新技術的機會。
機遇每每轉瞬即逝。你要時刻作好準備。保留儘量多的工具,當機遇敲響你的大門時,你已作好萬全的準備。
這裏小編也分享一份資料,內容包含: Android學習PDF+架構視頻+面試文檔+源碼筆記 ,高級架構技術進階腦圖、Android開發面試專題資料,高級進階架構資料 這幾塊的內容。分享給你們,很是適合近期有面試和想在技術道路上繼續精進的朋友。但願能夠幫助到你們提高進階
若是你有須要的話,能夠點擊這裏: Android學習PDF+架構視頻+面試文檔+源碼筆記 (不過要記得備註思否)
喜歡本文的話,不妨給我點個小贊、評論區留言或者轉發支持一下唄~