Time of Update: 2018-12-05
上周遇到了一個DevExpress的問題,簡單的拖動控制項想實現wids7的介面,出現了有些資源找不到的現象,最後定位的原因是資源尋找錯誤,之前在將DevExpress的控制項使用到之前的一個程式中時,也出現過些問題,當時只是將解決方案直接更改了,沒有相應現象和解決方案的記錄,所以開始在解決今天的問題時還以為是當時的原因導致的。上周還遇到了一些開發過程中設計的程式提示,一般情況下這些細節只有測試人員以及開發人員比較清楚,但是對於其他人來說可以說給出提示之後還是一臉茫然,但是開發與測試分別關注於自
Time of Update: 2018-12-05
單一職責原則1、一個對象應該只包含單一的職責,並且該職責被完整地封裝在一個類中。 一個優良的系統設計,強調模組間保持低耦合、高內聚的關係,在物件導向設計中這條規則同樣適用,所以物件導向的第一個設計原則就是:單一職責原則(SRP,Single Responsibility Principle)。2、 就一個類而言,應該僅有一個引起它變化的原因。 指導思想:
Time of Update: 2018-12-05
一頭驢,掉到了一個很深很深的廢棄的陷阱裡。主人權衡一下,認為救它上來不划算,走了,只留下它孤零零的自己。每天,還有人往陷阱裡面倒垃圾,驢很生氣:自己真倒黴,掉到了陷阱裡,主人不要他了,就連死也不讓他死得舒服點,每天還有那麼多垃圾扔在他旁邊。 可是有一天,它的思維發生了轉變,它決定改變它的人生態度(確切點說應該是驢生態度),它每天都把垃圾踩到自己的腳下,而不是被垃圾所淹沒,並從垃圾中找些殘羹來維持自己的體能。終於有一天,它重新回到了地面上。
Time of Update: 2018-12-05
今日將架構完整走通,給測試試用。但從測試表情看,顯然沒有Surprise的意思,反而有種因為改變使用習慣並要學習新架構的厭煩。儘管事前,我們已經對需求做過自認為相當全面的分析,而且在架構設計上也充分進行了斟酌和權衡。但是,結果就是這樣的。當然了,分析這個原因的前提,在於我對自己的要求還是挺高的。期望也是挺高的。那麼,原因到底在什麼地方了?人如何才會Surprise呢?驚奇,從字面上講,就是超出其期望。我們在做軟體的時候,想到的是如何滿足需求。要考慮如何超出其需求,確實比較難。因為這和正常工作是不
Time of Update: 2018-12-05
Delphi本身很難實現一些很炫或者很靈活的動畫變幻,flash來說實現這些就是比較常規的功能了,那有沒有一種方法將delphi和flash相結合呢?答案是可以,那如何使用呢?(1)在delphi中安裝控制項swflash.ocx,要能在其他環境中運行flash。 在Win98的$Windows\System\Macromed \Flash中或在Win2000中的$Winnt\System32\Macromed\Flash中找到它。
Time of Update: 2018-12-05
昨天的部落格中介紹了,如何使用delphi的氣泡提示,但是這種方式的提示,只有滑鼠在一定範圍內時才可以很好的顯示,如果我們要在程式中應用,似乎這樣的效果不會帶來很大價值,下面介紹一種更好控制的方法,來實現制定位置的提示顯示。代碼如下:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,commctrl, StdCtrls,
Time of Update: 2018-12-05
產品概述 OCC是基於OO概念的C++類庫,用於精密裝置等設計應用程式。典型的應用是CAD(2D/3D)應用程式的開發,製造業,模擬,或者一些其他的圖形工具。OCC讓你能夠很快的開發這些程式。 OCC提供以下模組:提供2D/3D幾何模型庫,用以建立任意模型: 建立基本圖元包含:稜柱,圓柱,稜錐,圓環等 實現了布爾運算(交並差) 對實體進行倒角,圓角等操作用位移,殼,鏤空等方式建立實體 計算屬性,例如:surface, volume, center of gravity, curvature
Time of Update: 2018-12-05
物件導向的原則是由7個原則組成的,分別是:1、開閉原則2、依賴倒置原則3、單一責任原則4、裡氏代換原則5、複合複用原則6、迪米特法則7、介面隔離原則這些原則並不是孤立存在的,它們相互依賴,相互補充。 1. 開閉原則定義 :一個軟體實體應當對擴充開放,對修改關閉。也就是說在設計一個模組的時候,應當使這個模組可以在不被修改的前提下被擴充,即實現在不修改原始碼的情況下改變這個模組的行為。2. 開閉原則分析:(1)開閉原則由Bertrand
Time of Update: 2018-12-05
我想弄個可以組合的自訂的參數,就像MESSAGEBOX那樣的messageBOx(0,'f','',MB_OK OR MB_ICONQUESTION);要是我自己來實現MESSAGEBOX的話,怎麼分別區別MB_OK和MB_ICONQUESTION啊?
Time of Update: 2018-12-05
一、什麼叫原子表和原子函數? Win32系統中,為了實現資訊共用,系統維護了一張全域原子表,用於儲存字串與之對應的標誌符的組合。應用程式在原子表中可以放置字串,並接收一個16位整數值(叫做原子,即atom),它可以用來提取該字串.放在原子表中的字串叫做原子的名字;二、關於原子表 系統提供許多原子表.每個原子表用於不同的目的;例如,動態資料交換(DDE)應用程式使用全域原子表(global atom
Time of Update: 2018-12-05
什麼事迪米特原則?迪米特原則能協助我們在類設計中起到什麼作用呢?迪米特原則介紹1. 定義:每一個軟體單位對其他的單位都只有最少的知識,而且局限於那些與本單位密切相關的軟體單位。2.
Time of Update: 2018-12-05
一天中或者一個星期或者一個月中,總會有些時候,你會覺得自己分身乏術或者有些事情就是能不做就不做,我覺得沒有一個人可以沒有出現過自己不喜歡做的事卻還是要做,自己明明已經很多工作了,可是來安排的工作還在途中,我們就是在這樣的日子中,慢慢的感受著學生時光的美好,驚歎當時為什麼那麼瀟洒的生活沒有多珍惜。 這也就造成了,現在的一種情況,有些不急的事情越壓越多,在自己處理了很多問題之後,越來越多的問題堆壓過來,導致每天都負債纍纍,直到有一天自己垮掉。
Time of Update: 2018-12-05
很久沒寫關於occ的介紹了。今天有時間,繼續寫,如果我一直在做這方面的話,我想我會把它的文檔看完並寫完。 occ的基礎類型包括了以下6個方面的內容: 1:原始類型,字串和各種數實值型別的定義(將一些int,float等重新定義為內部類型)2:堆記憶體的自動管理(主要是handle的模式)3:異常處理4:資料集合類(數組,鏈表之類)5:向量,矩陣,基本幾何類等數學工具6:檔案操作 這些內容被組織在Kernel Classes ,Math Utilities ,Basic Persistence
Time of Update: 2018-12-05
對於delphi中的absolute,其實用到的機會很少,只有一次看公司的代碼文檔時見到了,當時大牛們還特意問了一下,不過當時覺得應該就是使用的同一塊記憶體,但是今天看了萬一老師的部落格之後還是感受頗深的,看來不僅僅是共性同一塊記憶體那麼簡單。特意引用一下例子:procedure TForm1.FormCreate(Sender: TObject);var num: Int64; pt: TPoint absolute num; arr: array[0..1]of
Time of Update: 2018-12-05
在程式開發中,為了方便操作,我們可能經常會需要處理建立捷徑和刪除捷徑的時侯,但是如何建立和刪除呢,這就是這篇文章所要講述的。有人可能可能覺得建立比刪除簡單,其實不然,所需考慮和處理的問題,大致相同,例如許可權問題就是一個很需要注意的,如果處理的不好,會出現不成功的現象。一、建立捷徑捷徑大致分為兩種,案頭和啟動菜單上的。(1)案頭捷徑 案頭捷徑和建立一般的檔案沒有太大區別,主要就是確定案頭的位置,然後建立一個捷徑的檔案或者說是一個*.lnk的檔案。
Time of Update: 2018-12-05
引言布爾運算是非常有用的建模方法。但是,初學者會發現它們經常發生詭異的錯誤,而且很難找到原因。這個文檔或許可以說明一下這個問題。要想理解布爾運算為什麼失敗,必須先瞭解它是如何工作的。它並非是幾個神奇的指令將實體組織在一起。布爾運算其實是將幾條基本命令半自動的組合後的操作,大概是4個基本命令:相交2個實體,分離相交後的結果為2組,刪除不要的部分,串連剩餘的。這些步驟就是布爾運算的全部內容,你也可以全部用手工完成。所以如果你想讓布爾運算成功,那麼你就必須保證,Intersect,Split,Join
Time of Update: 2018-12-05
合成複用原則1.定義 i. 盡量使用對象組合,而不是繼承來達到複用的目的。2.分析 i. 合成複用原則就是指在一個新的對象裡通過關聯關係(包括組合關係和彙總關係)來使用一些已有的對象,使之成為新對象的一部分;新對象通過委派調用已有對象的方法達到複用其已有功能的目的。簡言之:要盡量使用組合/彙總關係,少用繼承。 ii. 在物件導向設計中,可以通過兩種基本方法在不同的環境中複用已有的設計和實現,即通過組合/彙總關係或通過繼承。a)
Time of Update: 2018-12-05
裡氏代換原則(Liskov Substitution Principle LSP)物件導向設計的基本原則之一。 裡氏代換原則中說,任何基類可以出現的地方,子類一定可以出現。
Time of Update: 2018-12-05
從四月份到現在也堅持寫了60多篇文章,但是今天回顧了一下,瀏覽量還是挺高的,可是評論的量確實少的可憐,哎!雖然現在“潛水”是一種時尚吧,但是總覺得自己寫的內容沒有被關注,感覺有些失落,呵呵。其實想想自己也是,以往都是有什麼問題了到網上搜尋一下尋找問題的解決方案,然後就將網頁關閉了,誰會嘗試了之後還將評論寫上說”某某,我測試以後不能用,用某某方法才可以“,既然自己這樣有怎麼要求他人呢?不過其實自己想想,這也是一種魅力,有人在描述一個故事的時候能夠有聲有色,引人入勝,有人確實說完之後,要麼所有人”茫
Time of Update: 2018-12-05
現在很多公司都有自己的代碼管理,我們公司使用的是svn,應該說使用svn的公司很多,記得我在大學實習時就是用過,當時覺得還是很高效的一款工具,現在覺得一般般,而且還有很多功能希望能夠提供。 今天又被fastMM4攔截了,著實不爽呀!