人們在一起可以做出單獨一個人所不能做出的事業;智慧+雙手+力量結合在一起,幾乎是萬能的。——美.韋伯斯特 (昨天在合作開發時老師在我們旁邊經過,看到我們對合作開發理解有誤,並對軟體工程中的圖和文檔沒有清楚的認識,於是乎把我們臭罵了一頓,自感有愧,同時也發現很多人還有同樣的理解錯誤,於是昨晚面壁思過檢討自己的過失。)
前篇部落格寫過建造者模式,建造者模式是將實現和顯示分離,它屬於建立型(Creational)的設計模式,在使用時我們應盡量考慮對象的建立。另一方面它隱藏了具體功能的組裝過程,而把具體的實現放在子類中。也就是建造者模式將建立一個產品的基本骨架封裝好了,而把具體的步驟放在了子類中,它提高了系統的可擴充性,但卻降低了代碼的可複用性。這種模式的UML圖有兩層關係,一層是父類和子類的繼承關係,另一層是指揮建造者和具體建造過程的彙總關係。 這兩層關係和我們今天要說的狀態模式有相似之處
上篇部落格我們對狀態模式進行了分析,狀態模式消除了龐大的條件分支,它把對象狀態的轉移放到了子類中,減少了相互間的依賴,使得軟體維護簡單,更易於後期的擴充。這種職能似乎類似於我們今天要說的職責鏈模式,職責鏈模式側重於類的行為,每個類都有自己的請求範圍,在用戶端執行請求時是按照鏈中制定的順序進行驗證,直到找到適合自己的請求。 從功能實現上它們兩者有著相似之處,但是它們兩者的結構卻有著本質的不同。首先職責鏈模式(鏈子、鏈子是一種很活的東西,可以隨意的進行組合)中對象的傳遞是不
首先我們先看張圖: 是物理學中的三種方向的力對物體做功的不同形式。相較三種方向的力,如果想要達到同樣效果的話只有圖A的力是最小的,圖C也可以做相同的功,但是所需的力要比圖A的大,但恰恰相反圖B中的力根本達不到想要的效果。
約束、規則、預設值這三者在資料表中規定了資料進行操作時的限制條件。他們三者有關係也有區別,用了兩天的時間研究了他們三者,總結如下。首先讓我們從關係角度來分析:●淺談約束、規則、預設值 1、約束,約束顧名思義是限制條件的意思,其實它的作用也是如此,它是對所要進行增刪改查操作的資料進行一次檢查,檢查這些資料是否符合我們所要約束的條件。舉個例子:我們都經曆過高考,考試規定考生不許帶與考試無關的物品這就是一種約束。報名考試的考生可能因為某些意外沒有進入考場考試,但大部分考生還是進行了考試。
一、資料採礦簡介 資料採礦(Data Mining,DM)又稱資料庫中的知識發現(Knowledge Discover in
在用VB.net對機房收費系統進行重構時遇到了些小問題,下面對一些問題進行總結。 一、MDI子表單顯示到Panel、PictureBox等控制項前 正常情況下Mdi子表單只能顯示到父表單的容器中,但是在設計時父表單往往不能加入基本的互動控制項,為了能夠加入按鈕、文字框等的基本控制項我們常常在父表單的容器內加入能作為容器的控制項如Panel、PictureBox等的容器控制項,於是在父表單內方基本控制項的難題解決了。
合作版的機房收費系統緊鑼密鼓的進行著,從一開始的討論到角色指派再到如今系統架構設計完成,這期間很順利,唯有一點是系統需求的變更。以前收費系統的設計沒有臨時使用者的功能,但當系統架構設計到一半時又新增加了功能,系統能夠允許臨時使用者上機,但是上機的收費方式不同。需求的變更,使得本來很順利的開發過程,收到了小的衝擊,因為添加臨時使用者後相應的很多功能都需要重新定義,包括系統資料庫也需要重新進行一些變更來適應需求的變更。
終於來把所有的東西搬走了。正在屋子裡一個人無所事事的時候,聽到有人在插鑰匙開門,然後使勁敲門,我問是誰,也沒人應答。兩個人進來後,就沒怎麼說話,直接進自己房間收拾去了。然後是吃午飯,應該是最後一次一起在那個地方吃飯了吧。再然後,兩個人在沙發上看電視,我則躲在自己的小黑屋裡,看書,難得拿起書,有這個心情,有這個時間,有這個機會,其實是無奈,是遺憾,是歎息。沒多久,搬家公司的人來了,一下所有的東西都拖走了。小妞最後說了句,那我們走了哦,拜拜。看著她們離開,我堅持住了。但是一個人靜下來,就忍不住了,趴
ADO.NET是.Net FrameWork SDK中用以操作資料庫的類庫的總稱。它提供了一些核心的對象實現對資料庫的操作,這些核心對象在前篇部落格中已經大致引述了一下,該篇部落客要對主要對象進行說明。一、Connection對象 Connection對象是資料庫連接對象,主要負責對資料來源的串連,所有Connection對象的基類都是DbConnection類。 Connection對象有兩個重要的屬性:
使用.NET編寫的個人版的收費系統接近尾聲,從一開始的資料庫設計到系統模型圖再到系統編碼,這其中著實遇到了很多問題,同時也暴露了自身對基礎知識掌握的不夠牢靠,前篇部落格對收費系統的資料庫設計進行了部分總結,該篇部落客要對收費系統的資料庫設計進行較詳細的總結。一、資料類型1、儲存類型
打折下來,一套加上送貨費,也得花掉128元大洋呀~~~本來也不是這麼堅決的,前幾天在網上書店看了又看,各種介紹,書評,還是猶豫了很久最後沒買,今天在BBS上看到holyzzd說在看這三卷本,於是猛然狠心上網馬上訂了一套要縮衣節食了哇,嗚嗚~~~ 不過套用室友的一句話,知識是無價的!所以現在這是必要的智力投資,hoho~~~
該篇部落格是緊接著上篇部落格的總結部落格,上篇部落格具體說了下工作總結需要包括的幾項及總結的意義。這篇部落格是對機房收費系統整個實現過程進行總結,主要分為三個階段:第一,系統資料庫的設計;第二,系統表單的設計;第三,系統代碼的編寫。一、系統資料庫的設計
昨天下午和小思宇一起跑去華強北買東西,結果用小思宇的話說,我們兩個人四隻眼睛還是沒看清楚,買的轉接頭還是有問題,是反的,不能用,小思宇估計是要鬱悶死了,為了個硬碟轉接頭耗費的精力不知道有多少了。晚上回來,就在各自的屋裡用各自的電腦打著各自剛剛買來的網路攝影機在那裡玩視頻,用玩QQ還用MSN,還真是會鬧,自己回想起來就覺得有點好笑。能上網了,突然就多了很多誘惑,沒上網的時候還想好要幹嗎幹嗎的,結果還是像沒頭的蒼蠅一樣到處亂撞。先給自己定一下目標,要做哪些事:1、總之,先,我不會放棄的,我還是希望
雨傘是遮風擋雨用的,但是什麼是共傘主義呢,請看下面這兩則資料。
題意:給定兩個點A和B,求包含這兩個點的面積最小的正 n(已知)邊形。#include<iostream>#include<iomanip>#include<cmath>#define pi 2.0*asin(1.0)#define sqr(a) ((a)*(a))using namespace std;int main(){ int n; double x1,x2,y1,y2,d,thy,s; while(cin>>x1>
上篇部落格中所說的對於表操作的幾種限制少分析了觸發器。這次從對錶設計的角度來著重分析約束和觸發器的關係,並進一步擴充比較觸發器和預存程序。但在看該篇部落格前強烈建議大家好好讀下我的上一篇部落格《約束與資料庫物件規則、預設值的探究》 首先,從圖上來比較三者的關係:
眾所周知在SQL的世界中共有九種SQL語句,而在這些語句中最複雜的就屬我們的Select語句了,它是我們資料庫中用的最多的語句,於是乎如果我們把Select語句掌握了那我們的SQL語言就至少掌握了一半多了。那麼就請跟隨我們介紹來學習Select語句吧。
對於表單驗證,大家都不陌生,市面上太多太多的校正架構,其中不缺乏精品中的精品。小弟特此也開源發布一個小外掛程式。沒有其他目的,和大家一起分享下成果。首先 先說下寫這個外掛程式的原因。最近在和某公司一起合作一個項目,合作公司用的DWR去和後台互動。而用dwr 無法使用一些市面上成熟的jquery 校正外掛程式,而這些外掛程式大部分都是 固定的 ajax