-
1 # 水滴的三體
-
2 # 我低端就改我名
沒有做過專案,不叫會程式設計。學程式設計應該先從需求開始,而不是為學而學。
首先,問問自己有什麼需求?想讓計算機為你幹什麼?這個不需要想象力,只需要“懶”。所有的程式設計都開始於懶的乾重復勞動這一基礎。如果你不會幹某事,你也別期望於讓計算機幫你幹。
其次,你希望計算機怎麼幫你,幫你到什麼程度。這就有點跟程式碼有關了,怎麼輸入,怎麼輸出,中間都幹些什麼……這個階段寫點文字,或者腦圖(畫點圈顯得高大上),關鍵是寫點什麼下來,因為,你後面的工作會以這些記錄為基礎。
然後,看看完成你需要的工作,你需要哪些知識。你之前的知識肯定不夠幹你想幹的。別說你了,我做了10多年程式設計師,都需要查資料。比如,語音輸入,最流行的語音api是誰家的?怎麼用?輸出pdf,有現成開原始碼嗎……不要開始學,而是開始找最佳的技術和知識。
再然後,你對完成這個專案,需要哪些知識和技能瞭然於胸,就可以編寫程式碼了。也不用學,用到了,查人家的手冊或者直接copy最佳實踐程式碼就好了。
以上工作,直到你寫了程式碼,算做完成了工作的一半。下面是另一半:
1.除錯程式碼,讓它能工作,有時候發現錯誤的理解了人家的api,甚至需要重寫程式碼
2.最佳化一下,處理一下很簡單的錯誤操作。有時候需要重寫
3.終於能用了,發現很多程式碼重複,想要優雅一些,還是需要重寫
4.重寫很多次,發現改程式碼會造成更多錯誤,如果以後還想修改自己的程式碼,就要趁自己還能知道這堆東西是幹什麼的,就寫一些單元測試。多半還是需要重寫,以簡化單元測試
寫在最後,不經歷幾次重寫(專業術語叫重構)的專案不是好專案,不經歷幾次重構的程式設計師不叫會寫專案。沒有大神,只有喜愛,潔癖,不厭其煩的質疑自己,才會成為優秀的程式設計師。
-
3 # 大海的欣
我是一名Python線上教育的導師,輔導的學員有幾百人,題主問的問題,也是學員們剛開始接觸程式設計的時候提出的問題,同樣的困惑被問了幾百遍,多少總結出一些東西,現在就拿出來跟大家分享:
第一,手要動起來。我經常跟我的學生說的話就是,“行業大神也是從不會開始的”,鑑定的邁出第一步,哪怕從世界通用的“hello,world”開始,也要動手實際敲鍵盤,不要覺得簡單就不去做了,要是不去做,就失去了跟這門語言的第一次親密接觸。只有敲擊了鍵盤,才能一方面透過手、眼、腦的互動,讓記憶領深刻,掌握更快捷;另一方面,在敲擊過程中,可能會有各種各樣的錯誤,哪怕是少一個字母,或縮排不一致,這些錯誤都是學習語言的成本,同樣會加深對語言的領悟,也有事半功倍的效果。在第一次跟語言親密接觸之後,語法也是很重要的;
第二;掌握程式語言的語法,語法就好像一棟建築的基礎,所謂“基礎不牢,地動山搖”,打基礎很重要,要夯實而且要熟練掌握,並且能夠靈活運用,無論你是看的書或者看的影片,在這些課程裡面都會有很多的示例,要親手把這些程式碼,寫進自己的電腦裡面,並進行驗證,遷完不要使用現成的或者書中提供的電子程式碼進行驗證,那樣就失去了,鍛鍊自己細心和信心的機會,同時這些示例都是正確的,如果出現錯誤需要逐字逐行的進行排查,因為很有可能是粗心造成的。但是這些例子都是別人寫好的,與自己掌握這門語言有多大關係呢?
第二,學習資料中的大部分例子都是源於工作中的總結和提煉。有意識的將工作中的問題,與這些示例發生一些關聯,同時也是為了讓這門語言在工作中生根、發芽、開花、結果。一門語言學了和學會了,還是有很大差別的。學了只是知道其內在邏輯(這個內在邏輯每種語言都是大同小異的),舉個例子,每一門語言都有條件、迴圈控制等基礎性的邏輯,其實記住它們並不難,但是應用起來卻不簡單,最有效的方法就是跟生活、工作相結合。只有將這些語言變成自己的,才能說算是學會了。程式設計思維和創造力都是在精準使用和熟練掌握之後,經過實踐的錘鍊得以實現的,但是怎麼樣才能在實踐中錘鍊出程式設計思維和創造力呢?
第三,多讀多練,方得精華。
多讀,指的是經常讀一些大神的加精的程式碼原始碼,研習其中的邏輯以及實現的方法,思考一下自己如果遇到同樣的問題,能想出什麼樣的解決方法,和大神的解決方法有什麼差別;
所謂“實踐出真知”,一方面要求動手實際操作,在實操中找到和提煉出自己的程式設計思維,這就是“拳打千遍,身形自現”的道理;另一方面只有在實踐中,才能找到錯誤,這些錯誤就是經驗,是彎路,走過了,總結出來了,避免以後重複走,這個就是多練的原因;
做到以上三點,加之循序漸進,必將解決題主心中眾多疑慮
-
4 # 程式你好
最快入手的是去參考一些開源專案的原始碼,從簡單的專案著手,看看整個專案程式碼是怎麼組織的,都需要哪些內容。再有就是學習一下專案相關的需求,設計,編碼,測試,分發部署等知識。其實,不需要擔心,只要,真正一兩個專案做下來就熟悉了。
-
5 # 軒爸IT說
首先,程式語言只是專案需要的一部分,整個專案需要用到的技能還有很多。比如:資料庫,快取,高可用,容災等等。從一個一個專案中去吸取經驗
相關內容
- 少兒程式設計,Scratch還是Python怎麼選?
- 想學習一門職業技術,糾結於程式設計python和設計ui之間,該如何選擇?
- 學化工專業的,只是在學校裡面學過VB程式設計,還能學python嗎?
- 程式設計零基礎,如何入門Python語言?
- 明年畢業,非計算機專業,想學程式設計,以後想要從事程式設計師方面的工作,請問可以學習哪一門程式語言?
- 程式語言中最簡單的是哪一種?
- 0基礎的孩子如何學習少兒程式設計?
- 會C語言和java的人準備從事Java後端,有沒有必要學python程式設計呢?你怎麼看?
- 看現在程式設計很火,想自學Python,但不知道會有什麼用,大神有什麼建議?
- 30多歲學點東西提升,考MBA或者學Python程式設計怎麼選?
謝謝邀請,我從高中就喜歡程式設計,自學過批處理,c,c++,java,javascript,python,pascal,shell script,c#,lisp,html,css,asp,php,jsp,cgi,彙編……等等等等,終於發現自己在程式設計方面是個低能兒,永遠停留在hello world的水平上,現在只求能找一份新手的程式設計工作,能養活自己就好……程式設計不是人人都能勝任的,事實很殘酷