windows編程入門所必須知道的機制和規範

來源:互聯網
上載者:User

標籤:android   java   資料   sp   問題   c   代碼   r   演算法   

        學習程式設計語言林林總總也不算少,課堂學過C\C++對進階語言編程中的面向過程和物件導向、基本文法有了基本瞭解,自學過資料結構C版的內容,也曾簡單學過用Java開發的Android應用。現在開始讀研一,研究所裡做項目面向windows程式開發,周圍的人都在用C#,於是開始轉向C#開發並自學。

        以前,學習軟體開發,練習編程,都是從語言這個學科去考慮,更多的是糾結具體的知識點,某個文法、函數怎麼寫等等,這種學習作為打基礎無可厚非,寫出來的代碼都是a,b,c,a1,b1,m等命名格式,寫下倆的完整程式也就幾百行,遠遠不足以去競爭好公司的眾多應聘者;現階段,需要提高自己的眼光和品鑒力,對於學習編程而言,需要考慮怎樣寫出好的代碼,優秀的代碼,規範的程式和從整體把握編譯器的運行機制,從商業標準來要求自己。這是對於自己目前階段的心得和想要的能力提升。現在就從幾個方面來“看看”菜鳥需要瞭解的地方:

        1. 什麼是優秀的代碼?

        2.windows架構和編程設計的運行機制是怎樣的?

        3.高手是通過敲出來的還是看書看出來的?

        4.有什麼樣的好書推薦,協助提高編程能力和眼光?

         這裡一一道來: 

       1.如何寫出優秀的代碼?

           優秀代碼,需要考慮的東西無非一下幾點: 命名的規範性,函數封裝與介面,靈活性,演算法設計效率。這些規則,我將會用一段代碼來具體說明。

        2.windows程式設計的運行機制怎樣的?

          windows與程式運行之間的關係是利用訊息機制來互動的,程式設計中考慮的是如何利用作業系統的介面來實現功能,所以充分挖掘作業系統的潛力比關注如何具體實現這個功能更重要,舉個例子,利用printf來列印字串,程式關注的是調用系統函數printf,並將字串代入printf的參數就可以列印,至於字串在記憶體中怎樣經過處理到外設中並在螢幕中顯示出來,C語言做不到,能做到的是作業系統。

        windows作業系統的重要特徵是搶佔式即時多任務。如果兩個程式同時運行,記憶體該如何分配和管理?作業系統一個很重要的作用就是處理機管理,一個程式運行是以進程為單元的,進程開始於程式被調用,結束於程式停止運行。如果多個程式同時運行,處理機怎樣響應不同的程式並保持高效呢?每個進程只有佔有記憶體並被處理機調用才被執行,而且進程執行通常需要接受外設輸入;作業系統為了充分使處理機處於忙碌狀態,不會等待過長。所以處理機機制就是為瞭解決這個問題,讓進程處在不同狀態。

       3.學習太極時,光看師傅每招每式,看千遍萬遍始終不會出手;只有在看的基礎上自己去打出每一拳,每一個動作,才會知道哪裡犯錯哪裡需要強記,才能體會每一個要領。要看也要練手。

       4.一本好的參考書,相當於一本武功秘笈,指匯入門到精通都是有跡可循的;這裡推薦帶有“微軟技術叢書”的標誌,都是比較好的windows開發叢書。另外需要經常訪問MSDN,擷取網路資源。

        下面就範例程式碼來講講編程規範:命名方法、代碼靈活性、函數封裝和介面、演算法複雜度。

         持續更新中。。。




      

windows編程入門所必須知道的機制和規範

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.