企業應用開發架構談(二) (轉)
企業應用開發架構談(二)
多年以前,我剛從是開發這一行,就遭遇了尷尬的事情,當我將軟體
到時,發現使用者的資料服務主機和我中硬編碼的不一致,我
不得不重新修正我的程式碼。我的第一個就是因此而起的。
.ini 改進你的查詢檢視 作為一個開發人員,懂是最基本的,與熟練越好,但在開發一個系統的時候, B: Collection sales = exc.getResult(); SaleV sale = sales.get(1); 如你所看到的那樣,透過動態配置,我們成功的消除了在程式碼中硬編碼sql,對 有關內部賦值的實現,我在以後將詳細講述。 一個龐大的系統中,不可避免的會有許許多多的訊息,校驗訊息、驗證訊息、業 a: MessageRes carResources = null; return (carResources); 讓你的軟體適應國際化的要求是好的,如果能夠很簡單的實現何樂而不為呢,透過配 A: a_cn.properties B:
connectString=xxxxxxxxxxxxxxxxxxxxx
userName=yyyyyyyyy
pass=zzzzzzzzzzzzz
想必讀者對早期的ini檔案還有記憶,幾年以後,流行起來了,我的配
置檔案也大都為xml格式。(有關xml參考相關書籍)
db.xml
<>xxxxxxxxxxxxxxxxxxx
如果說這幾年的開發中對我影響深刻的之一是什麼,回答是:的動態可
配置,一個動態可配置的系統 是優雅的,易維護,可擴充套件的。
建造高樓大廈,總是先構建,然後再填充牆壁,窗戶等具體構件,用水
泥將構件與架構結合。想象一下軟體開發,同樣是由許多的構件組成軟體的
整體,我們往往是將他們堆砌在一起,而不是有序的組織,者往往造成一動
而牽全身,擴充套件、修改模組都變得不易,也使得系統在需求頻繁變動的真實
世界中經不起考驗。
對於我而言,可配置檔案就如同建築中的水泥一樣,是構建系統的粘合劑,
有效的整合大量無序的個體和相關聯絡。
檔案還是?
配置方式有兩種:資料庫、檔案。前者透過將資訊儲存到資料庫系統中,執行
時讀取資訊,後者透過載入檔案方式來獲取資訊。
說實話,是使用檔案還是使用資料庫系統還進行配置,這完全因人而定,不
過就我個人來說,總是將他們結合使用,凡是涉及到控制相關的資訊,
我都透過資料庫來配置,以便於整合,此外的資訊則是透過檔案來配置。
無論你選擇那種方式,你因儘可能的權衡利弊,取最適合的方式來用。
關於許可權相關的配置問題我將在以後的章節講解。
檢視分發與器
在企業級應用開發中分發與響應控制是重要的,而使用配置方式來實現他們是
一種可取得有效方式,在模型--檢視--控制中,透過增加分發器改進為模
型--檢視--控制--分發使得系統的實現更為合理,配置檔案將以上相關聯起來
更進一步的松耦合整個系統。
一個簡單的監聽器控制.
A:
B:
.........................................
..........................................
C:
String name = "xx";
Moduel module = Module.getDefaultModule(name):
Listener listener = module.getListener();
String nextPage = listener.getNextPage();
如上所示透過配置檔案很容易得將模型--檢視--控制--分發有效的整合到一起。
我常常希望減少程式中sql的出現,甚至開發中不出現sql更好。透過實體關係
對映我消除了curd相關的sql程式碼,可對於複雜的查詢和瀏覽,消除sql是一個不
可完成的任務,既然消除不可能,那是否有一種方法對大多數程式開發人員遮蔽
sql呢?
方法是有的。如下所示。
A:
a.d=?1 and b.e=?2
SqlExce exc = SqlExec.lookUp("BROW_SALES);
exc.bind(1,"xx");
exc.bind(2,3454);
大多數開發人員遮蔽了sql,透過集中的管理sql,更容易提前進行測試以驗證sql
的有效性和減少各處編碼導致的出錯,以及方便的修正SQL.
集中控制你的訊息。
務流程訊息等等,而集中的控制他們,並已同一的方式出現是重要的,不然不同
的開發人員會寫出千奇百怪的訊息來。透過配置訊息使得集中控制成為可能。
B:
MessageResourceactory factory = (MessageResourcesFactory)
FactoryFinder.getFactory(
FactoryFinder.MESSAGE_RESOURCES_FACTORY);
carResources = factory.getMessageResources("INPUT_G_OR_L");
國際化問題
置檔案讓應用支援多語言變得可能。
a_en.properties
Title=bench
Desc=bench 600
BasePrice=150000$
CurrentPrice=150000$
Title=賓士
Desc=賓士 600
BasePrice=1500000Y
CurrentPrice=1500000Y
關於資源的可配置 ,有許許多多的可應用之處,我只是簡單的介紹了幾個典型的應用,
透過不斷的在開發中積累,相信你可以在適當的地方以適當的方式應用她。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-956474/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 企業應用架構研究系列十九:Docker開發環境應用架構Docker開發環境
- 企業應用架構研究系列二:MSF&Scrum 專案管理應用架構Scrum專案管理
- 第五天-《企業應用架構模式》-併發應用架構模式
- 企業應用架構研究系列三:應用系統整合應用架構
- 從零開始搭建React應用(二)——React應用架構React應用架構
- 談談關於 iOS 的架構以及應用iOS架構
- 架構雜談《二》架構
- 快速構建企業級應用的開發平臺
- 低程式碼開發:企業應用構建新模式模式
- 淺談企業開發APP應用常見的型別有哪些APP型別
- 企業應用架構的基本模式之分離介面應用架構模式
- 企業應用架構的基本模式之入口模式應用架構模式
- 大型直播平臺應用架構淺談應用架構
- Flume架構以及應用介紹[轉]架構
- TOGAF企業架構與軟體架構的對應圖架構
- Oracle開發:構建強大企業級應用的關鍵Oracle
- 使用 Angular 打造微前端架構的 ToB 企業級應用Angular前端架構
- 從點線面體談開發到架構師的轉型架構
- 漫談企業資訊化安全 - 零信任架構架構
- MVC、MVP、MVVM,談談我對Android應用架構的理解MVCMVPMVVMAndroid應用架構
- H5-APP在企業系統中的架構應用H5APP架構
- 企業應用架構演化探討:從微服務到Service Mesh應用架構微服務
- 第七天-《企業應用架構模式》-分佈策略應用架構模式
- 開發者架構選型:原生應用 or 混合框架?架構框架
- 實戰指南 | Serverless 架構下的應用開發Server架構
- 百萬年薪架構師之路:談應用系統架構設計架構
- 資深架構師談Redis高可用架構的應用及改進架構Redis
- 應用架構指南全新發布應用架構
- .NET架構開發應知應會架構
- 談PaaS平臺建設:如何應對企業架構多元異構資源的挑戰架構
- 《精通Spring4.x企業應用開發實戰》第二章Spring
- BizWorks助力企業應用的高效開發與複用
- 第八天-《企業應用架構模式》-通盤考慮應用架構模式
- 軟考論文之論企業整合架構設計及其應用架構
- iOS應用千萬級架構開篇iOS架構
- 採用 TOGAF標準的企業架構和企業敏捷性架構敏捷
- ionic4 開發企業微信應用0
- .NET企業應用安全開發動向-概覽
- 打造企業級微服務平臺架構,分散式應用場景管理微服務架構分散式