前幾星期看到李老師的代碼產生器,下回來用了一個,但對於一個已經有基礎的系統,例如一些組件及一些類,介面等都已經定義好的項目來說,用他的代碼產生器確實有些不實際,出於以下幾個重要的原因:
1、代碼完全不能與原來的項目融合,幾乎要修改90%以上的代碼。這已經決定我不能用他的代碼產生 器了。
2、代碼風格完全與個人風格不一致。
這一點讓我很鬱悶,因為個人的編程風格已經形成,對於他產生的程式碼看的很不習慣,例如,一些變數,我習慣的用“m_”開頭,而不管它是什麼類型,因為從變數名上我可以知道類型,或者開發環境會提示類型,所以我沒有習慣用類似“iStudentNumber,strName,dMondy”等這樣名字,這完全是個人習慣,因為從"m_LoginName"上我就知道它是一個字串了。當然,這隻是一個習慣。
3、資料庫的介面以及一些中介軟體的問題。
他的代碼產生器也有幾層的架構,因此它也產生了一些中間結構,然而對於我的這些項目,已經有固定的結構,不可能了為添加一些新的結構及代碼來改動原來的中間結構,例如一些資料層。
當然,可能是我對這個代碼產生器不習慣,所以存在這些問題。
然而面對一些機械化的代碼,真的不想寫了,於是我自己做了一個,便於快速開發中間結構的小工具,取名為SmartCoder
這隻是一個初步嘗試,早就有這樣想法寫一個代碼產生器,然而時間關係,沒有認真的架構及開發,只是花了半天的時間,做了一個簡單的,暫時可以滿足我的個人項目要求的工具。當然我是很想花些時間認真的開發的,也在和李老師在保持聯絡,希望能開發一個好的代碼產生工具,取代一些無聊的機械代編碼工作。
從資料庫裡選擇欄位,工具根據資料屬性自動產生相關的代碼,例如自動增加的欄位做為關鍵字段,在添加及更新時,不會修改。
產生的程式碼,放到項目裡可以正常運行,算是輕鬆了許多。
這隻是一個初步的工具,相信有時間我會完善它的。 由於目前它只能以我的項目產生代碼,所以就不發布這個根本算不上代碼產生的小工具了。等時機成熟時再說吧。