再談電腦編程的學習

來源:互聯網
上載者:User

    很久沒有寫筆記了,有幾次想寫點什麼,可是提起筆來,又不知該給誰寫,寫點什麼,大本營裡的人越來越多,加我好友的越來越多,可是真正研究過我筆記的卻沒有幾個,來這裡的朋友大多數還是想學點東西,或是對軟體開發有興趣的,不過也有一些是來消遣娛樂的,如果是,就請繞開吧。
    關於電腦語言的學習,在我過去的一些筆記裡已經談到過不少,但不是很系統,在這裡再說一說,希望能給想要學習的朋友一點啟發。
    首先要說的是語言的學習,我的一片筆記"程式設計語言究竟學什麼?",曾經說過,語言最根本的是文法,編程=文法+演算法,有了演算法,才能編出程式來,演算法一定要學,但演算法不屬於一種特定語言,文法其實非常好學,電腦語言的文法是很有規律的,電腦語言是以電腦為載體的語言,它主要是對記憶體單元進行分配,賦值,傳送,如果你把語句能理解到對記憶體單元的處理,基本上就沒有問題了,另外還有計算和跳轉,計算是CPU的強項,沒什麼難的,跳轉也很簡單,改變了指令的執行順序,迴圈和分支語句都是靠跳轉實現的,大家可以看一下我的C語言教程,關於文法部分都是用儲存空間來講述的。123,其他任何一種語言都可以按這種方法去理解和學習,在掌握了一些基本演算法之後,應該就可以隨心所欲編寫代碼了。
    接下來要強調一件事情,就是函數,我覺的這是學習程式設計語言最重要的一個東西了,函數是任何程式設計語言的最基本構件,也是代碼的棲息地,我有過一篇筆記“語言學習的誤區”,裡面提到過關於函數的問題,現有的教材,尤其是C語言教材,在這一點上對大家有一個誤導,過分強調了輸入輸出,輸入輸出其實只是函數庫的一個小部分,不屬於語言的範疇,函數是用來封裝一個演算法,或實現特定功能,每一個函數的功能並不複雜,但通過函數之間的調用,可以完成一個龐大複雜的程式.還有一個最重要的東西,就是複用,我在編寫代碼的基本原則中/強調過,是編程技術的重中之重,而函數是複用代碼最常用而且是最基本的手段。關於C語言函數的講義,我將在近期整理後發出。如果函數掌握的非常好,去看windows api庫,c runtime庫時就會覺的很容易,即使遇到新出現的類庫,也很容易上手。順便說說物件導向,物件導向主要目的還是複用,同時增加了代碼的安全性和可讀性,本質上就是編寫代碼的方式,各種語言也都差距不大,思想並不複雜,學習起來並不難,但函數(或稱為方法)仍然是構成類的最基本元素,也就是說物件導向編程也一樣是寫函數,函數沒學好,學物件導向一定不會順利。
    然後再說說編程能力,有些同學覺的學完了一種語言,想寫個小東西,就是寫不出來,首先看你基礎是不是打好了,文法(包括函數的編寫和調用),演算法是不是真的沒問題了,自己檢查一下,是不是能把一個演算法(自己想出來的或書上看的)用函數實現出來,並且能複用,如果沒有問題,說明你對這種語言已經沒有問題了,剩下的問題就簡單了,主要就是介面的問題,在你語言基礎打好之後,介面問題其實已經很簡單了,我們開始學習的時候一般用控制台,用類似printf和scanf做io,換到映像介面,可能改變是有點大,多找幾個例子看看,最好是從最簡單的到稍微複雜一點的例子,比你看書有用的多,比照著寫寫,很容易就會了,各種語言,平台,圖形介面的類庫相差很大,用到哪個學哪個就行了,不用著急學,關鍵是把語言基礎打好了,學什麼都很快。
     再來說下資料庫,我也寫過一篇筆記“關於資料庫的學習答網友問”,介紹了一些資料庫學習的知識,資料庫分編程和管理,我們這裡主要談基於資料庫的編程,說到編程,上面說的關於編程的內容都要學習並掌握,這一點有些同學要注意了,除此之外就是資料庫的知識,我在筆記中有比較清楚的闡述,主要是建模和SQL語句的使用,需要注意的是建模是和需求分析緊密相關的,需求分析很明確了,才能建立正確的模型。
     最後說一下WEB編程,現在web編程大行其道,尤其是資料庫方面的編程,多數都轉向了WEB平台,WEB編程也是編程,所以上面所說程式設計語言的學習也必不可少,web編程現在也有多種選擇,asp.net,php,jsp等,不管用什麼語言,有些基本概念一定要清楚,如客戶服務器模式,瀏覽器,伺服器,request,response,cookie,session等,html的一些主要標籤要弄明白,如form及其屬性action,method,enctype等,還有就是javascript編程,它只和瀏覽器相關和後台使用的語言無關,現在用的很多,也很有用。
     先說這麼多,歡迎大家多多交流。
       方便聯絡老師,點擊可以加為好友。http://student.csdn.net/invite.php?u=108270&c=189a59b57330cb29

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.