實質上鼓勵一下吧

目前分類:VB.NET (5)

瀏覽方式: 標題列表 簡短摘要

物件導向這個議題已經是老掉牙了,但是實際上會寫物件導向程式的人實在不多,因為即使你不使用物件導向方法程式照樣可以運作,而且使用物件導向方法程式的效能未必好,所以使得大部份的程式設計師即使使用物件導向程式語言還是使用傳統的副程式方法在寫程式。

那麼為甚麼要使用物件導向方法來寫程式呢,我可以大膽的說,物件導向的精髓就在於繼承。使用繼承的技巧可以讓你的程式變得非常容易維護。

漠哥 發表在 痞客邦 PIXNET 留言(2) 人氣()

多執行緒的應用實在很多,以證券公司出每天每一個客戶的交易記錄報表為例,早上九點到下午兩點是交易時間,必須把所有的資料庫資源留給大量的交易做為儲存用。而交易時間過後就是證券公司的結帳時間,雖然這段時間有很多人工作業,但是資料並非完全正確,所以也不能拿來利用,所以只有在結帳時間結束,才能夠把資料拿來進行報表的輸出作業。也就是說大約在三點半之後才能夠把資料進行報表輸出處理。

因為每一張報表都是個人化的,如果當天有一萬個客戶進行交易(這對證券公司來說算是很少的),就算說每一張報表只需要0.5秒的時間,如果使用傳統的循序處理方法,那麼整個輸出過程就需要1.4個小時才能完成。現在的電腦CPU都是超多的,而循序方法卻都只用到一顆CPU的功能,就以普通級的伺服器來說,四顆CPU再乘以四核心,等於有16顆CPU可以使用,如果能夠充分利用CPU的能力,就算一顆一次只能處理一個進程,那麼也只需要5分鐘就能完成所有工作,何況一顆CPU同時不止能夠處理一個進程,不使用多執行緒不但對不起自己也對不起客戶。

漠哥 發表在 痞客邦 PIXNET 留言(2) 人氣()

使用VB.NET經常需要遇到讀取檔案的問題,CSV格式是一種由逗號分開的標準文字檔格式,自然很容易在程式中遇到,把它寫成標準函數可以很容易的應用。

雖然微軟程式庫裏面已經包含了一個標準程式庫TextFieldParser,這個方法很好,使用的記憶體以及效率都很高。

漠哥 發表在 痞客邦 PIXNET 留言(1) 人氣()

元件序列化技術實在造福了我們程式設計師很多地方,最明顯的例子就是能讓我們不需要在資料庫開很多欄位甚至很複雜的結構去保存一些複雜的元件內容,只需要開一個Text欄位就能夠把複雜結構保存起來,當然在internet上傳遞資料也是一個很常見的應用。

這段程式碼我就不多做說明了,他的動作一個就是序列化,另一個是反序列化。序列化的格式是應用最多的XML格式,如果需要其他的格式請參考微軟說明文件。

漠哥 發表在 痞客邦 PIXNET 留言(5) 人氣()

現在程式越寫越大,CPU功能越來越強,要能夠聽充分的利用CPU的能力才能讓我們的程式在複雜的運算下以最快的速度反應,除了在演算法上面下功夫外,最簡單的就是能夠利用多核心CPU的能力,因此會寫多執行緒(大陸稱為多線程)的程式變成現今高級程式設計師必須具備的技能。

既然要討論多執行緒,就必須了解能夠應用多執行緒的場合。最簡單的場合就是有大量同樣的運算方式但是不同的輸入資料需要在極短的時間運算出來,這樣的場合很多,比如說類神經網路、客製化的電子報…等等。或者是需要近乎同時處理大量使用者輸入並且做出反應的場合,例如線上遊戲的某些處理,雖然輸入所要處理的程序可能不同,但是必須能夠快速的反應回饋。

漠哥 發表在 痞客邦 PIXNET 留言(3) 人氣()

找更多相關文章與討論