會使用編程語言但是不會做項目,怎麼辦?

每日一發小視頻

紙上得來終覺淺,絕知此事要躬行。


我猜你應該是自學了一段時間python,或者參加過某培訓機構吧


所以會出現,你覺得你好像會用python,會敲幾個python語句,可能大概能看得懂,但是不知道怎麼做項目,從何開始、從何結束、沒有一點頭緒、完全不知道怎麼開始、該怎麼做。


所以你需要做的事,跟著別人去接觸項目,去學習怎麼開始做項目,找個小公司能接受你這種程度的也好,自己主動意識比較強的話,找一些開源的先看看,然後自己學著動手編程做項目。


你缺乏的就是動手編程、接觸項目。


編程教育佈道師

我是一名Python在線教育的導師,輔導的學員有幾百人,題主問的問題,也是學員們剛開始接觸編程的時候提出的問題,同樣的困惑被問了幾百遍,多少總結出一些東西,現在就拿出來跟大家分享:

第一,手要動起來。我經常跟我的學生說的話就是,“行業大神也是從不會開始的”,鑑定的邁出第一步,哪怕從世界通用的“hello,world”開始,也要動手實際敲鍵盤,不要覺得簡單就不去做了,要是不去做,就失去了跟這門語言的第一次親密接觸。只有敲擊了鍵盤,才能一方面通過手、眼、腦的互動,讓記憶領深刻,掌握更快捷;另一方面,在敲擊過程中,可能會有各種各樣的錯誤,哪怕是少一個字母,或縮進不一致,這些錯誤都是學習語言的成本,同樣會加深對語言的領悟,也有事半功倍的效果。在第一次跟語言親密接觸之後,語法也是很重要的;

第二;掌握編程語言的語法,語法就好像一棟建築的基礎,所謂“基礎不牢,地動山搖”,打基礎很重要,要夯實而且要熟練掌握,並且能夠靈活運用,無論你是看的書或者看的視頻,在這些課程裡面都會有很多的示例,要親手把這些代碼,寫進自己的電腦裡面,並進行驗證,遷完不要使用現成的或者書中提供的電子代碼進行驗證,那樣就失去了,鍛鍊自己細心和信心的機會,同時這些示例都是正確的,如果出現錯誤需要逐字逐行的進行排查,因為很有可能是粗心造成的。但是這些例子都是別人寫好的,與自己掌握這門語言有多大關係呢?

第二,學習資料中的大部分例子都是源於工作中的總結和提煉。有意識的將工作中的問題,與這些示例發生一些關聯,同時也是為了讓這門語言在工作中生根、發芽、開花、結果。一門語言學了和學會了,還是有很大差別的。學了只是知道其內在邏輯(這個內在邏輯每種語言都是大同小異的),舉個例子,每一門語言都有條件、循環控制等基礎性的邏輯,其實記住它們並不難,但是應用起來卻不簡單,最有效的方法就是跟生活、工作相結合。只有將這些語言變成自己的,才能說算是學會了。編程思維和創造力都是在精準使用和熟練掌握之後,經過實踐的錘鍊得以實現的,但是怎麼樣才能在實踐中錘鍊出編程思維和創造力呢?

第三,多讀多練,方得精華。

多讀,指的是經常讀一些大神的加精的代碼源碼,研習其中的邏輯以及實現的方法,思考一下自己如果遇到同樣的問題,能想出什麼樣的解決方法,和大神的解決方法有什麼差別;

所謂“實踐出真知”,一方面要求動手實際操作,在實操中找到和提煉出自己的編程思維,這就是“拳打千遍,身形自現”的道理;另一方面只有在實踐中,才能找到錯誤,這些錯誤就是經驗,是彎路,走過了,總結出來了,避免以後重複走,這個就是多練的原因;

做到以上三點,加之循序漸進,必將解決題主心中眾多疑慮


大海的欣

沒有做過項目,不叫會編程。學編程應該先從需求開始,而不是為學而學。

首先,問問自己有什麼需求?想讓計算機為你幹什麼?這個不需要想象力,只需要“懶”。所有的編程都開始於懶的乾重復勞動這一基礎。如果你不會幹某事,你也別期望於讓計算機幫你幹。

其次,你希望計算機怎麼幫你,幫你到什麼程度。這就有點跟代碼有關了,怎麼輸入,怎麼輸出,中間都幹些什麼……這個階段寫點文字,或者腦圖(畫點圈顯得高大上),關鍵是寫點什麼下來,因為,你後面的工作會以這些記錄為基礎。

然後,看看完成你需要的工作,你需要哪些知識。你之前的知識肯定不夠幹你想幹的。別說你了,我做了10多年程序員,都需要查資料。比如,語音輸入,最流行的語音api是誰家的?怎麼用?輸出pdf,有現成開源代碼嗎……不要開始學,而是開始找最佳的技術和知識。

再然後,你對完成這個項目,需要哪些知識和技能瞭然於胸,就可以編寫代碼了。也不用學,用到了,查人家的手冊或者直接copy最佳實踐代碼就好了。

以上工作,直到你寫了代碼,算做完成了工作的一半。下面是另一半:

1.調試代碼,讓它能工作,有時候發現錯誤的理解了人家的api,甚至需要重寫代碼

2.優化一下,處理一下很簡單的錯誤操作。有時候需要重寫

3.終於能用了,發現很多代碼重複,想要優雅一些,還是需要重寫

4.重寫很多次,發現改代碼會造成更多錯誤,如果以後還想修改自己的代碼,就要趁自己還能知道這堆東西是幹什麼的,就寫一些單元測試。多半還是需要重寫,以簡化單元測試

寫在最後,不經歷幾次重寫(專業術語叫重構)的項目不是好項目,不經歷幾次重構的程序員不叫會寫項目。沒有大神,只有喜愛,潔癖,不厭其煩的質疑自己,才會成為優秀的程序員。


第三代亻氐立耑人口

你這是隻見樹木,不見森林。你老師沒教好你。

80年代我在浙大學習期間,我學pascal課程的時候,一位從國外回來的教授給我們的第一次作業是寫個雞蛋炒飯的程序,大家愣住了,這怎麼寫。

這是一個沒有標準答案的題,但教授向我們傳授了一個概念,計算機編程不光是學習語言,是應用這個概念到生活的每一個項目。什麼是計算機語言,計算機語言就是人給計算機的一系列指令,計算機按照這些指令一條一條做事情。什麼是項目,項目就是一系列要做的事情,所謂編程就是給計算機一系列指令做這些事情。

咱們來看雞蛋炒飯這個項目,就是可以分為買蛋,打蛋,熱鍋,下蛋,翻炒等等。而我們就應該有相應的函數來做這些事情。

一個項目來了,把項目中要做的事情變成相應的函數,把在什麼條件下做這些事變成 if,把重複做的事情放在for語句裡,先用人的語言寫,再用計算機語言寫。


石頭2115913219159


水滴的三體

最快入手的是去參考一些開源項目的源碼,從簡單的項目著手,看看整個項目代碼是怎麼組織的,都需要哪些內容。再有就是學習一下項目相關的需求,設計,編碼,測試,分發部署等知識。其實,不需要擔心,只要,真正一兩個項目做下來就熟悉了。


程序你好

項目開發不是會語言就可以的,需求分析,技術分析,服務器搭建等等前期工作搞定。這些工作一般由技術老大牽頭去做。一般程序員只是負責代碼實現。想完成整個項目首先要完成技術積累。會使用語言只是基礎,框架技術,項目組件選擇與合理搭配,數據庫技術,網絡通信技術,這些基礎技術原理都要爐火純青才是自主開發的基礎。


分享到:


相關文章: