什麼是設計?在我看來,設計者有一定的權威性,他知道如何使用標準、規則來進行必要的約束,再加上經驗對現實業務的抽象,就得到了資料庫模型
僅僅的規則+資料庫還不能稱作優美的設計,還要有一些技巧的發揮。
有人要問了,你說的這些都太抽象了,根本連什麼是資料庫,什麼是規則,什麼是技巧都沒有說清楚嘛。呵呵,我覺得也是,如果我看到這裡,我也覺得
都是一堆廢話。那麼我就從乙個小小的例子來說說吧。
其實我們大家應該都知道把乙個具體的業務資料庫模型化,這裡我們說乙個打折的系統,不同身份的人,需要不同的打折。
那麼我們就要設計相關的物件:使用者,使用者和身份,身份和折扣等等的關係。
我們先可以把他們進行資料庫模型化了。然後我們要加入一定的規則,用什麼規則可以進行約束呢?
我們把打折扣的資料也存入資料庫中,行成規則:
usecase normal vip master rule
mm 50 0.8 0.5 *
gg 16 48 112 +
這樣,有些規則是使用乘法,有些東西是使用加法,他們到底如何執行的呢?
我們可以這樣說明一下,乙個小mm,她要買個東西需要花$50,如果她有一張vip卡,她就可以打8折,如果有一張master卡,她就可以打5折
他們只要用normal rul vip(master)作一次運算就可以了。
基本上使用了規則和資料結構,其實也加上了一些技巧了,就是rule中的東西,什麼時候設計成*,什麼時候設計成+需要自己去把我們的業務數學模型化
不知道我講的你看明白了沒有,也許我的表達不夠清晰,也許這也並不能算是一次很優美的設計,但至少她目前是我的想法。
資料結構常用技巧
1 如何尋找陣列中最大最小值 2 如何找出陣列中第二大的數 3 如何求最大子陣列之和 4 如何找出陣列中重複元素最多的數 5 如何求陣列中兩兩相加等於20的組合種數 6 如何把乙個陣列迴圈右移k位 7 如何找出陣列中第k個最小的數 8 如何找出陣列中只出現一次的數 9 如何找出陣列中唯一的重複元素 ...
常用資料結構的使用技巧
很多時候需要對字串中的每乙個字元進行處理,有時候會先將其轉為字元陣列。舉個簡單的例子,假設需要翻轉乙個字串,可以使用兩個指標,乙個指向第乙個字元,乙個指向最後乙個字元,然後進行交換,交換完成後兩個指標向 一步一步靠攏並進行交換,直到兩個指標相遇。因為無法修改字串中的字元,所以需要先將其轉為字元陣列。...
資料結構設計
mfc提供的集合類來管理文件資料,mfc提供幾種處理物件陣列的類,如集合類,這些集合類表現為下列兩種風格 1.模板為基的集合類 2.非模板為基的集合類 每個集合類又進一步按他的元素型別和他的形加以區分。集合的形指明在集合每如何組織資料,mfc提供3種通用集合類的形 array 陣列,有次序性,可以動...