1.需求分析與功能設計
程式員的學習之路,除了對程式架構的了解之外,更重要的是一個“積累”的過程。在工作和學習中,相信大家和我一樣,很多技術細節方面并不是一開始就了解,需要通過其他途徑來獲得這些知識,比如搜尋引擎、論壇等。我本人使用最多的是baidu。
慢慢的,積累的資料多了,電腦中就比較混亂---這裡是幾個網頁,那裡是幾個文本檔案,當回頭要找以前的某個資料時,便會顯得非常麻煩。很多時候我就想,要是有一個工具,能夠将這些資料整合成類似于CHM格式的文檔,友善管理與查找,那就好了!實際上,網上這樣的工具并不少,但是,作為程式員,自己動手做一個這樣的工具,不是更有成就感嗎?而且,學習一種新的語言或者開發工具時,相信做一個東西,帶着問題去研究是是一種不錯的選擇。
在學習vs2005的過程中,我給自己定下了一個目标:做一個這樣的日志工具。
事實上,日志工具我已經做過好幾次:接觸delphi也是剛工作時用delphi做了一個,剛接觸vs時用c#.net做了一個,後來又用asp.net做了一個。但那時,隻是單純的“為了做而做”,每次做出來的東西,都和開始的想法不一樣。那麼,我是應該換一種思路,先設計好它,再去實作這些設計!
一、需求分析
既然準備從頭開始做,那麼就自己來寫一個簡單的需求分析吧。
這個項目仍然屬于.net中的winform程式,是我做的第三個winform日志程式,是以将它命名為MyLog3。
a.注冊檔案類型
以資料庫的形式來做這個程式,無疑是很友善的。但也有缺點,因為可能會有多種類型的日志。比如delphi的、c#的,如果放到同一個資料庫中,會顯得混亂;如果放到不同的資料庫中,又太麻煩,而且如果沒有安裝資料庫程式怎麼辦?如果使用sql server,光一個sql server的安裝就不簡單,就算桌面版的sql server安裝程式也有好幾十M呢。對于ACCESS,也不是太好的選擇,因為MyLog3要提供附件的功能,當整個日志的附件有幾百M大小時,對于ACCESS實在是一種考驗。
是以,初步設想MyLog3是一個類似于Windows中記事本這樣的程式。隻要建立一個檔案,将其字尾名改為".ml3",輕按兩下這個檔案就能啟動MyLog3應用程式,進而對這個ml3檔案進行編輯。
b.日志類型
一個ml3檔案,可以被稱作“日志本”,類似于一個chm類型的檔案。日志本中可以有多個日志,可以将一組内容相似的日志歸于一個“日志類型”中,是以MyLog3需要提供對日志類型的操作,有建立類型、删除類型、重命名類型、移動類型等。在MyLog3中,日志類型之間要以“樹”的形式來展現想到之間的關系。就像下面這樣:
開發日志
MyLog3開發日志
HTIMM開發日志
心得體會
2008年1月
2008年2月
随筆
c.日志
有了日志類型,對于日志的操作也出來了:建立日志、删除日志、重命名日志、編輯日志等。
d.編輯日志
編輯日志時,希望能夠插入圖檔,而文字本身也可能修改字型、顔色等。(rtf檔案格式是一個不錯的選擇。)
e.查找日志
f.附件
MyLog3要對單個日志提供附件的功能,能上傳附件、下載下傳附件、删除附件。
二、功能設計
根據需求分析,初步設想MyLog3要能夠完成下面的功能:
1.注冊檔案類型
2.檢查資料結構(對于.ml3檔案,當然要有一定的格式,MyLog3程式才好對它進行處理)
3.增加類别
4.重命名類别
5.移動類别
6。清單類别下的日志
7。建立日志
8。編輯日志
9。儲存日志
10。重命名日志
11。删除日志(删除到垃圾箱中,可以恢複)
12。移動日志
13。查找日志
14。增加附件
15。删除附件
16。下載下傳附件
下一篇,根據功能分析進行系統設計。
ie.2008.04.07