-
1 # zoom氣墊
-
2 # 冬哥日記
很多人認為程式設計的難點是自己的英文不好,看不懂英文,其實不然。
其實程式設計用到的常用英文單詞並不多,也就幾十個,普通人一到二天就可以掌握這些單詞,那麼程式設計的難點到底在哪呢?以我多年的程式設計經驗,認為程式設計的難點有二個:一個是理解能力,一個是邏輯思維能力。
關於程式設計中的理解能力,我先給大家說幾個程式設計中的幾個常用名詞,如名稱空間,條件反射、依賴注入,什麼是名稱空間呢?名稱空間各種語言使用的一種程式碼組織的形式,透過名稱空間來分類,區別不同的程式碼功能。什麼是依賴注入呢?依賴注入就是指程式執行過程中,如果需要呼叫另一個物件協助時,無須在程式碼中建立被呼叫者,而是依賴於外部的注入。大家透過上述的解釋理解了這2個名詞了嗎?肯定大部分人看了是雲裡霧裡,程式設計中理解能力的重要性從這幾個常見的名詞解釋就可以略見一斑。
程式設計中的邏輯思維能力的重要性更不用說了,大家是不是經常在網路上看到禿頂的程式設計師呢?程式設計師為什麼容易禿頂呢?就是因為程式設計過程中思考解決邏輯問題太多傷腦導致的,程式設計過程並不是大家電視中看到的輕輕鬆鬆幾秒鐘就敲幾十行程式碼,大部分的程式設計過程是在解決程式中遇到的各種邏輯問題,舉個例子:我們做一個簡單的日曆小程式,是不是要考慮日期和星期幾相對應,要不要考慮月大月小的問題,要不要考慮農曆和公曆日期的對應呢?這些都是邏輯問題,需要花腦經去解決的,沒有一定的邏輯思維能力不是那麼輕鬆就能解決的。
綜上所述,程式設計難點就二個,一個是理解能力,一個是邏輯思維能力。
-
3 # 閒話絲路
把大象放進冰箱分幾步,1開冰箱門2放大象3關冰箱這是正常思維。程式設計思維要考慮,各種假設比如,冰箱大小,大象大小,大象能死嗎,不能死怎麼辦,可以死怎麼辦,冰箱是一臺還是多臺,大象是亞洲象還是,非洲象,還有各種環境都要用邏輯排除過濾。一個簡單的遊戲考慮因素都這麼多,何況具體到某個案例專案。語言無非變數,常量,語句,語法等等,最重要是解決問題思維,所有可能性都要想得到,並把這是因素或排除,或繼續執行……
-
4 # BWanger軟體開發達人
程式設計難,還是不難?每個人都會有自己的看法。但有一些觀念或者經驗,是值得借鑑的,如帶著課題去學習;聽網課;從宏觀到微觀等等方法,都值得借鑑。
帶著課題去學習,效率最高。
一個人什麼時候學習效率最高?當然是有一個很急迫、很重大的任務交給你完成時,效率最高,能最大限度激發你的能動性。
1992年之前,程式語言只會BASIC,FORTRAN77,宏彙編,dbase等。但在92年5月份,參與了一個85攻關專案,指定要用C語言做開發。
接到任務後,找到一個有TC開發經驗的工程師,先把TC系統軟體在我們的筆記本上安裝好。然後,他給我們演示了TC的編繹、編輯、除錯、開發配置等等操作,我們也一一照做了。緊接著,就是一個簡單的帶圖形的編輯軟體的大致做法,如,幾大類庫函式介紹,如io、圖形、檔案操作、字串操作、數學庫、記憶體管理等;庫函式的呼叫方法;對VGA、解析度模式的設定;定時中斷、串列埠中斷等用法。最後,給我們推薦了一套共三本的C語言程式設計語法、庫函式用法的書。當天,我們自已做了一個顯示”hello world!”的著名程式,做為c語言開發的開端。兩週後,我做了一個能夠編輯64KB字元的編輯程式,可以儲存、開啟檔案,可以用malloc,free動態管理記憶體,可以用滑鼠選擇按鈕,可以進行兩個電腦的串列埠通訊.....總之,學的非常快。
相反,我的一些同學,畢業後,買C語言的書看,四~五年後,依然一知半解。為什麼?沒有相關c語言的開發專案,根本記不住。
從宏觀到微觀,先框架,後細節,採用逆向學習的方法。
VC++在上世紀九十年代後期逐漸被國內軟體開發者所接受,但當時的資料很少,能借鑑的,就是微軟MS的最有名的MSDN。這套軟體當時花了兩萬多RMB,650MB的光碟,共三張。還買了windows程式設計,VC++程式設計,美華人編的中文譯本。
第一步,主要學windows的工作機制,如訊息Message傳遞機制、執行緒及程序、記憶體管理機制、IO訪問方法等等,從宏觀上,認識了windows,認識了它與MS DOS的異同點。
第二步,VC++的框架構一造。單頁面、多頁面、屬性頁、資原始檔、MFC類的層次結構、類的生成及呼叫等
按照這三步,大結構、大框架,逐步細化到一般的程式設計、編繹找錯、執行程式。
很多人學習,總是按步就班,在語法細節上花大力氣學習,卻不想先搞安裝VC,做一個學習平臺,去實際程式設計,測試、學習語法,去逆問學習。
曾經有個學生,整天糾結i++與++i到底區別在那,老是在說
i++;
if(i==1)
與
++i;
if(i==1)
到底有什麼區別。我給他說沒區別,他愣是不相信。
最後,我告訴他,用在
for(i=0;i<MAX;i++)及for(i=0;i<MAX;++i)時,才有區別,他才恍然大悟。
還有&,*在函式、變數中的用法,有的人也是永遠糊塗。
寫法、用法是固定的,程式設計實踐一次,永遠記住了;看書聽講,過幾天就忘了。
總結:程式設計,看似簡單,實則是一個系統的科學,涉及到計算機、作業系統、各種系統開發環境等等基礎科目,這些在學校一定要掌握好。有了基礎,具體到JAVA,C,C++,PYTHON的程式設計,應以專案為主導,按照工作中的具體專案,進行深入學習,這樣不僅效率高,而且記憶深刻。
回覆列表
程式設計不難,但很麻煩,編輯簡單點說就是想辦法讓電腦完成我們想要的結果,程式語言好學,程式設計思維要慢慢培養,現在程式設計都已經有各種各樣的庫和模組,所以,實現一些很基礎的功能還是很容易的,但瞭解各種協議需要時間和悟性