精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
新手入門程序必須克服的5個障礙

360docimg_0_

程序員作為目前當下互聯網行業中必不可少的角色,高薪酬,好就業成為其身上頗具代表性的兩個標簽。

很多人都有入行或者轉行來做程序員的想法。不過想要成為一個合格的程序可并不輕松,作為一個新手想要入門程序,首先就有5個必須克服的障礙。

一、不知道選擇哪種語言

很多人會問:“我應該先學什么編程語言?”能有此一問,自然是因為你明白程序劃分的細致,但也說明認知也僅僅停留在這一層上。

如果你心中已經有了一個既定的目標或者說是想要完成的項目,那么就可以依此做出選擇。

1.如果你想構建iOS app,那么你需要學習Objective C或Swift。

2.如果你想構建Android app,那么你需要學習Java。

3.如果你想構建Web app,那么你需要學習JavaScript。

其實現在我們可以使用JavaScript來創建任何類型的項目——無論是簡單的web和移動app,還是高級的硬件項目。大多數行業中都有它的身影:音樂、醫療、游戲、時裝等等。

此種語言被淘汰的概率極低,且市場需求廣泛。如果你追求穩妥,那么筆者建議你學習此種語言。

二、不知道如何學以致用

選擇好方向之后,剛開始學習理論總是很輕松的,而且網上也有許許多多免費和付費的在線課程。

很多人都能較快的掌握理論知識,甚至能夠做到自己來解釋某個代碼片段的工作原理。然而一旦實際應用理論來解決問題并編寫新代碼的時候,就會無力應對。

導致這種情況出現的原因很簡單:技能空白。

比如說游泳。你可以閱讀大量的技術文章,然后解釋得就像一個專業教練。但是,要想實際應用這些理論,就需要大量的實踐、斗爭和錯誤——你肯定會吞下大量的水!

所以我們需要將理論結合大量的練習,具體的方法步驟如下:

1.選擇一個復雜的項目。最好這項目得能夠激起你的興趣。

2.將這個任務分割成小而獨立的任務。例如,“實現登錄頁面”是一個很大的任務。但你可以將其分解為多個小任務。而關于一個小任務我們可以再次做個細分:不應該超過20行左右的代碼。一次不使用太多的理論概念。一次專注一項任務,而不是并行解決多任務。不要跳到下一個任務,除非你已經徹底測試過當前任務,并確信沒有問題。

3.自己在開始任務之前知道所有必要的理論知識。有時候,你可能不知道需要學習什么理論,這很正常,所以你需要向他人尋求幫助:程序員朋友,導師,或類似Dev Store的平臺。

4.你解決了任務,獲得了經驗值。

三、不知道吸取教訓

圓滿完成任務的感覺很好,但如果你完成任務后,直接開展下一個任務,那么你浪費了一個絕佳的學習與成長機會。

完成任務后,最好做一個完成的總結。例如問問自己以下的問題:

1.哪些邊界情況會導致我的代碼失敗?即使現在還沒有失敗,有哪些應用程序狀態可能會破壞代碼?

2.我的代碼是否足夠整潔?對其他開發人員,甚至是自己而言,代碼是否易于理解和改變?因為以后可能需要修復隱藏在這段代碼中的問題,或者根據其他產品規格改變代碼。

3.我的方法是最好的嗎?有沒有其他選項是我可以選擇使用的?各個方案的利弊?這任務是否值得用不同的方式解決?

4.此模塊與其他模塊是如何交互的?是否會對其他模塊造成負面影響?是否容易被其他模塊影響?

四、不知道攻破難點

這里有兩種難點。第一種,你不知道如何解決。

你不知道從哪里開始?你可能會隨機地去嘗試,或者從其他地方復制一些你自己也不明白的代碼。但是,這是沒有幫助的。即使你復制來的代碼有效也沒用。因為當你今后再一次碰到類似的任務,你依然不能解決。

如果你想妥善解決任務,那么首先你得知道你為什么卡殼。下面是一些可能的原因:

1.沒有很好地掌握這些理論知識:

語言語法。

庫或API的工作原理,某個具體方法或類的工作原理。

編程范式(例如:異步編程)。

系統運作(例如:HTTP請求是理解Web開發的關鍵)。

如果是上述情況,那么可以去復習理論知識,如果依然摸不著頭腦,也可以去找人尋求幫助。

2.任務太大了,那就分解為一個個小任務。

3.也有可能是因為你讀得太快,忽略了一些你以為熟悉其實似是而非的概念,所以無法理解任務要求。

第二種,你知道如何解決,但解決方法無效。

這是編程中最常見的情況,哪怕是那些經驗豐富的資深程序員也是如此。你的解決方案之所以不起作用最大的可能是你的代碼中存在著bug。

如何修復?方法是調試代碼。這也是作為一個程序員需要學習的最重要的技能之一。這不是可以隨便湊合的事,也不是玩幸運猜猜猜游戲。如何尋找bug是有具體步驟的。而且很多書中都有教這個技能。

不幸的是,這是很多新手程序員失去動力選擇放棄的難關。很少有課程會說明調試的重要性。如果你不知道如何正確地調試,那么它就是不可戰勝無法攻克的難關。

很多人擔心會花太多時間用于調試代碼。這是正常的,在你第一年的編程規劃中這是不可避免的。

甚至,你還得學著去喜歡調試。不妨將此看成是一個機會,一個修復錯誤提高編程能力的機會。當你解決了一個bug,可以問問自己這個問題:“我為什么會犯這種錯誤?以后我該如何預防再犯?”

還有一個好主意是將找到的bug寫成編程日記,方便你總結和學習。

五、不知道如何利用資源

當你在學習代碼,或調試代碼時,可以咨詢很多材料:書籍、課程、教程、導師,開發者社區等等。

在你學習這些資源時最常見的問題是,你并沒有完全了解幕后發生了什么事情,也不知道概念是如何融入到更大的藍圖中的。

簡單的打個比方:你在某個問題上花了10小時,最后終于有人提供一個解決方案,你往往會在高興之余拿了就用,并不考慮太多。而這樣做的弊端不小,筆者建議你在解決問題之后:

1.思考自己之前的思維過程。問問自己,做錯了什么,對于這個特定的解決方案有哪些是值得你先前的思路借鑒和改進的地方。

2.詢問他人的思維過程。她是如何解決的呢?向對方學習,吸取經驗。

如果你足夠細心,可能會發現這五個障礙循環相扣,包含了作為一個程序員從入門到提升的整個過程。作為一個準備入門或者剛剛入門的程序員,可能其中的很多點你還沒有接觸。但在之前就擁有先驗的認識對于你在之后的學習成長中避開彎路還是非常有幫助的。


本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
程序員學習編程需要攻克的8個障礙
人工智能會代替程序員的工作嗎
iOS 開發怎么入門
不愧是清華老教授,將Python濃縮成四階段,新手小白也能輕松入門#程序員 #編程入門 #pytho...
程序員的簡單成長路
新手學編程,零基礎入門Python,需要下載哪些軟件才能開始寫代碼
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 获嘉县| 峡江县| 沭阳县| 芒康县| 阳春市| 长宁区| 双牌县| 西宁市| 沅江市| 山阳县| 讷河市| 阳江市| 佛冈县| 淮阳县| 拉萨市| 赞皇县| 芦溪县| 云浮市| 泸水县| 潼南县| 马关县| 玉门市| 皮山县| 嘉义县| 高尔夫| 潞城市| 兴和县| 本溪市| 柳州市| 广宁县| 中江县| 南平市| 松原市| 东乌珠穆沁旗| 新营市| 麻江县| 瓮安县| 五河县| 东台市| 平顶山市| 新绛县|