nc的體系結構相對於teems要輕量級的多,至少目前初步的感覺上是這樣的。說是輕量級並不意味著內容上的多少,而是開發時應用對nc架構的依賴程度。
teems是完全物件化的應用架構,包括持久化、業務應用、使用者介面都是完全物件化的。而nc則有些不同,在持久化方面它採用的並不是完全的or對映關係,而是傳統的行記錄模式。也就是說資料庫中的一張表,對應於乙個nc中的vo,而vo與vo之間的關聯,是以pk的形式記錄在vo中的,如果業務應用中,需要關聯物件,要手工的載入它。從開發的角度來講,teems的方式在開發和理解起來更容易些,而nc則在效能上有更好的表現(雖然理解起來也並不難)。
nc在持久化層上,使用的是dmo(data management object),實質就是dao模式,不過dmo可以通過nc的開發工具,在開發初期匯出資料庫表,自動的生成大部分的**。nc有vo的概念,有些類似與teems中的bo,不過並不相同,vo也是從前傳到後的,不過vo只是個簡單的pojo,並沒有業務方法。vo的業務方法,是寫在nc中的bo上的。bo是完全的業務方法,可能是乙個vo的,也可能是多個vo的,有些類似business service 的概念。
nc的報表列印,採用的是自己開發的nc報表和列印元件。通過手工配少量的資料庫表及調整類似excel的二次開發工具來實現報表和列印的功能。雖然對於十分複雜的報表實現的能力比較有限,但對於大多數的報表可以相對非常簡單的完成。teems並沒有自己成熟的報表列印方案,至少開發的效率感覺上不如nc的高。
nc的**質量,在現在看來,和teems比較的類似,大部分的**都是複製貼上的產物。不過我認為這也是這兩個架構都具有的工程性比較好的特點。由於nc的繼承體系和實現方式相對teems較輕量級,因此相對自主的設計和開發也就空間大的好多。也就是說在自己的專案上對使用的nc架構進行一定的封裝和改良相對來講要比teems容易。nc的**風格和teems一樣,都相對較好,至少對這樣的乙個大的架構來講。雖然有非常多的大類和大方法,但由於格式和內容都非常的相似,因此看起來,也是很容易理解的。
綜述,對於nc和teems都有共同的特點,很難說是優點還是缺點。工程性非常好,適合大量的人員進行開發,而且對人員的要求不是特別的高。技術都是非常傳統的,在技術方面沒有高的門檻,也許是因為工程性和歷史的原因,兩個架構都沒有冒險採用商業上不成熟的技術和設計開發方式(不知是好是壞)。
大概就是這樣子了,以後還會繼續詳細的分析。
簡析 JSON 中的 與
在 json 裡 是 array 也就是陣列 是ojbect 也就是物件 array 的key 是 int.的key 是 string 例如 var dot1 a 就是乙個陣列 var dot2 就是乙個物件 陣列和物件轉換非常簡單,dot1把 替換為 就是物件,dot2把替換為 就是素組。這在jq...
車牌識別軟體簡析及國內各廠家對比資料
什麼是車牌識別軟體 車牌識別軟體,安裝在pc 上即可執行。可完成進出車輛識別抓圖和對進出車牌資訊進行常規的統計分析,並且支援車牌資訊回查,提高管理水平。車牌識別軟體原理 車牌識別是基於計算機視覺和模式識別理論,對含有車輛號牌的影象進行分析處理,從而確定牌照在影象中的位置,並進一步提取和識別出文字字元...
Mysql鎖的型別與簡析
資料庫鎖設計的初衷是處理併發問題。作為多使用者共享的資源,當出現併發訪問的時候,資料庫需要合理地控制資源的訪問規則。而鎖就是用來實現這些訪問規則的重要資料結構。根據加鎖的範圍,mysql 裡面的鎖大致可以分成全域性鎖 表級鎖和行鎖三類。全域性鎖 顧名思義,全域性鎖就是對整個資料庫例項加鎖。mysql...