2012年9月6日

是打口號還是真正內化

剛才突然想到才又去google了一下正規化這東東
才發現以前大學的時候怎麼看都看不懂的東西
現在竟然覺得怎麼好像都講一些本來就該這樣的道理
想想碩一上的Data Model那堂課上不斷的在辯論ERD
但是老師從未提到正規化這個名詞
雖然老師一再強調說以他的方式根本不需要正規化
但現在想想其實是在建模的過程中把那些不該出現的問題都屏除了
只是我們不遵照正規化的步驟來一步一步做罷了

那麼正規化這個名詞和那五個步驟看來應該就是前人專家們
因為在關聯資料庫的發展當中看見了一些不太好的問題
所以把那一系列問題已規則的方式流程化出來
讓之後要建模的人有一個流程可以遵照著做
大概也是因為這樣所以大學在教關聯資料庫的教科書上都會有正規化部分
讓他有一個看起來正式的流程使學生比較有系統的學習

但是只是背背甚麼1NF、2NF和他裡面的甚麼重複性、遞移性的blabla...
根本無法真正理解到其中的奧妙之處
除非不斷的以實際操作和真實問題來思考這些東西才能漸漸的將他內化成感覺
等到有了這種感覺的時候根本也就不需要這些步驟了

另外最近在接觸的物件導向設計模式看來也是類似的發展
前人在實戰中遇到的不良問題和解決方法把他創造出了那堆模式
如果學習的人只是看看口號想想書中的範例程式應該很難將他內化成感覺
其實身旁的開源程式碼中就有很多模式的案例
有事沒事就想想SE或某開源框架的實作方式是在實現哪種模式也是很好的學習

沒有留言:

張貼留言