Time of Update: 2018-12-07
在開發WinForm系統中,我們經常需要得知當前是設計時還是運行時。舉個例子,假定我們設計了一個使用者控制項,其中包含一個TreeView,我們希望在這個控制項被裝載的時候就自動把一些資料填充到這棵樹裡面。如:protected override void OnLoad() { // FillTreeView()方法填充樹結構, SystemData.GetCatelog() 獲得資料 FillTreeView( myTree, SystemData.GetCatelog("產品
Time of Update: 2018-12-07
Erlang是愛立信開發交換器軟體的成果。據說能達到99.9999999%的可靠性,讓人歎服。這是一門有很多創新的語言,是面向並發編程COP的開創者。在這個多核處理器的時代註定要大行其道。今天瀏覽了Joe博士的論文《面對軟體錯誤構建可靠的分布式系統》,初步的有了個印象。其中的基於非同步訊息的並發,容錯思路等都很有新意,對於我們的開發都很值得學習和借鑒。打算深入學習一下,春節長假有事情做了,呵呵。POP,OOP,AOP,COP,FOP這是幾個重要的編程思路和世界觀,過程,對象,方面,並發,函數。
Time of Update: 2018-12-07
我剛才把原來發的心理訪談節目的文章刪掉了,因為大多是一些不愉快的事情,過去的就讓它過去吧。解決心理問題大致有兩個思路,一個是學習心理學知識,還有一個是學習宗教,比如佛教,基督教。宗教是很好的方法,可以解決缺乏愛,缺乏意義感這樣一些問題,可以開闊人的思路和心胸。有網友誤以為我是楊李二位老師,注意了我不是,呵呵。儘管我不是專業心理醫生,不過如果你有問題我很樂意為你盡微薄之力,祝願天下人都快樂地生活!
Time of Update: 2018-12-07
最近一年來一直在做WinForm相關的系統,對WinForm的UI設計有一些想法想和大家討論(主要是比較忙,所以很多隻是設想,還沒有開發執行個體) 關於WinUI,理想的情形應該是外觀比較cool,能給使用者良好的使用體驗和印象,同時又兼顧功能強大和容易開發。但基於傳統的.NET WindowsForms,恐怕除了容易開發,在其他方面的指標都很普通了。如果為了介面和功能,則複雜度會提高很多,用大量的GDI+和API操作,相信會讓很多人頭痛不已。 以下是一些思路:Custom
Time of Update: 2018-12-07
自殺的人雖然對周圍人有傷害,但是自己是最大的受害者,所以是值得同情的,在所有的各種死亡中是最可憐的。希望社會能從這些事件中吸取教訓,悲劇不要再重演。個人來講應該學習壓力管理和平衡生活的知識,避免對事業過分的貪心,房屋等把自己逼入壓力的陷阱。工作不順利最壞也就是辭職。大學應該給學生傳授適應社會職場壓力的知識。企業應該關心員工,即使不能減少壓力,也應該傳授壓力管理知識,如果你還有良知的話,對於企業來說可能只是萬分之一的死亡率,對死者的家庭來說是百分之百啊。社會應該鼓勵佛教,基督教等宗教的傳播,信仰宗
Time of Update: 2018-12-07
這段時間在網上越來越多的關於使用Table還是CSS來進行網頁設計布局的爭論,我倒是一直使用Table+CSS來進行設計布局的,需不需要改變呢?先看看再說吧,實在不行了乾脆直接轉到xml+xsl。 這些引用代表了一些觀點:為何使用表格排版是不明智的?(http://www.onestab.net/seybold/index.html)Web標準?你需要嗎?http://blog.joycode.com/ceocio/archive/2004/09/03/32312.aspx使 ASP.NET
Time of Update: 2018-12-07
近幾天每天都會收到來自萬網的“每日垃圾郵件摘要”,其中提供了通過萬網過濾得垃圾郵件列表,現在看起來過濾效能一般。不過通過服務提供者提供的垃圾郵件過濾也算是萬網對現在企業郵局系統競爭的一種市場回應吧。 其實現在IT行業中還是處於早期的戰國時期,大量的企業各自為政,靠自己的功能取勝。希望有朝一日可以看到這樣的情景:各個郵局供應商互連有無,融合各自的垃圾郵件資訊,構造更為完整的垃圾郵件屏蔽屏障。
Time of Update: 2018-12-07
一般情況下我們用Remoting一個通道應該就夠用了,因為程式要麼是用戶端,要麼是伺服器端。但是有時候也會出現一個用戶端需要串連多個伺服器端的情況,或者一個程式既作為伺服器端(針對內網),又作為用戶端(針對外網)。這個時候就需要註冊多個通道了。 根據一般的經驗,用戶端通道和伺服器端通道應該是不衝突的。但實際的情況呢?看一下以下的代碼: IChannel serverChannel = new TcpServerChannel( 5000 );
Time of Update: 2018-12-07
在使用Remoting之前一直很關心它的並發處理能力。之前寫了一個小測試,兩個Client線程訪問遠程對象,一個應該是立即返回,另外一個應該是線程休眠3秒鐘後返回。結果發現兩個線程的遠程調用都是在3秒後返回。 今天在翻閱MSDN中關於Remoting的章節時,發現有以下一些記載: [使用 .NET Framework 編程 -> .NET 遠端概述 -> 通道 -> 通道規則] 遠程對象共用通道;遠程對象不擁有通道。
Time of Update: 2018-12-07
PostSharp是一個比較強調易學易用的AOP架構,在這之前我接觸過AspectJ,Spring.當然花的時間也不多,不過一直感覺不好掌握,似乎AOP是比較難的東西。今天看到這篇英文論文裡面的說明,似乎並不那麼難以掌握。參考,對比一下兩組概念。PS用了我們熟知的東西,而沒有引入新名詞,這是它聰明的地方。看錶格右邊的一組概念,事件(還不太理解為什麼說是meta),事件處理器,aspect=定製的attribute,
Time of Update: 2018-12-07
是scala的作者martin寫的,很權威。好像沒有 正式出版。我看了下第九章列表部分,很受益。 列表是函數語言的關鍵,而列表是兩個基本操作構建的,Nil 和::,分別表示空表和串連。列表還有三個基本的方法:head,tail,isEmpty。 這樣歸納後是不是感覺簡單清晰了很多。 函數編程的基本功是模式識別,模式比對,模式描述。這個需要這方面的經驗和一些創意。 昨天開始折騰這個scala語言了,主要還是從找工作的實用主義考慮,對這個語言的印象還算不錯。扳著腳指頭算一下這是學習的第幾個語言了,
Time of Update: 2018-12-07
朋友的項目裡有這樣一個要求,一個按鈕按下後,同時出現四個csv檔案下載。我們當然可以用window.open()開啟4個新視窗來下載,但一下載蹦出很多頁面,客戶可能就不喜歡了。我本來想,那用隱藏的IFrame不就沒問題了,事實沒有這麼簡單。我們看一下如下的代碼: <script language="javascript"> function download(){ document.all.frmHid1.src =
Time of Update: 2018-12-07
今天開始看《programming scala》,oreilly出版的動物書。真的是本好書。今天瀏覽了整本書,隨後以這本書為主學習scala。 整本書結構如下:1-3章是一些基礎背景。4-7章是OOP8章是FP9-11章 是一些應用:actor並行存取模型,xml,dsl。12章 類型系統 13章是應用設計14章是工具、庫等。 作者倡導多語言多範型編程,PPP=OOP+FP+AOP
Time of Update: 2018-12-07
Test Double這個術語最早是在Fowler的部落格裡看到的。在測試模式書中闡述了這個術語,包括:Dummy Object,最簡單,只有建構函式,空方法,不允許調用。只是支援一下編譯。Test Stub,方法允許調用。Test Spy,還要儲存內部狀態。比如可以替代smtp類比發送郵件。Mock Object,動態產生測試支援對象。還不太習慣寫這種代碼。Fake Object,一種替代實現。測試領域術語不完全統一,還在探討中。參考:
Time of Update: 2018-12-07
我想這個每個人的答案是不一樣的,我是個初學者,所以答案是很平凡的C-h C-h,這個會顯示協助資訊,相當於windows的F1。其中比較常用協助命令有的C-h a, C-h c, C-h f等。 有一個很有用的命令是 M-x eval-buffer,這個可以執行buffer裡面的指令碼,測試對emacs的配置,讓emacs的配置立刻有效。 gnu的英文版入門指南還是比較簡明扼要的。
Time of Update: 2018-12-07
.NET中的枚舉我們一般有兩種用法,一是表示唯一的元素序列,例如一周裡的各天;還有就是用來表示多種複合的狀態。這個時候一般需要為枚舉加上[Flags]特性標記為位域,例如:[Flags] enum Styles{ ShowBorder = 1, //是否顯示邊框ShowCaption = 2, //是否顯示標題ShowToolbox = 4 //是否顯示工具箱}
Time of Update: 2018-12-07
我們知道通過在頁面中使用JavaScript調用微軟的XMLDOM/XMLHTTP組件,可以方便的在頁面中各種遠端資源,如網頁和XML資料。不過由於IE預設安全層級的限制,我們並不能通過XMLDOM/XMLHTTP訪問不同域的資料來源。也就是說,www.siteA.com不能訪問www.siteB.com裡的頁面。我們可以通過一個簡單的本地頁面代理來幫我們實現這個功能。新的流程將是: siteA.com/local.aspx (JavaScript) ->
Time of Update: 2018-12-07
今天看了infoq對作者的採訪,感覺很有意思。 我去他們的網站看了下,作者是俄羅斯人,他的目標是最大可能地簡化web開發。只需要用瀏覽器就可以開發 ,點兩下滑鼠就發布了。 他的哲學是unix哲學:做好一件事。 開發語言是JavaScript,這樣有個好處就是前端後端都統一為JS語言。 我為了練習複製了作者的simple-blog例子,有興趣可以去看看我複製的例子。
Time of Update: 2018-12-07
ServU是一款被廣泛應用的FTP服務程式。它的主要特色在於簡單易用、效能優越、穩定並擴充性強,能比較好的支援大並發流高頻寬的FTP應用。 ServU支援以外掛程式形式(C++DLL)擴充其功能。 I、ServU工作流程 a) ServU預設處理流程 1、用戶端發出下載請求 2、ServU核心處理該請求 3、返回處理結果(如許可權判斷) 4、返回FTP訊息到用戶端 b)
Time of Update: 2018-12-07
1: We are here at RubyFringe with Damien Katz. How about you introduce yourself?I am the creator and project leader of CouchDB. I currently work for IBM. Before that I worked for MySQL and before that I worked at IBM again on a project called Lotus