999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進的YAF框架的Web系統開發架構淺析

2017-05-06 21:11:59江川
科技資訊 2017年7期
關鍵詞:模塊化

江川

摘 要:在如今需求快速迭代,代碼規模不斷膨脹的趨勢下,傳統的Web應用開發模式已經無法滿足快速開發的要求,為了解決代碼規模的危機,先進的開發理論應運而生。該文基于YAF這一PHP開發中流行的MVC框架進行改進,對YAF的Model模塊進行內部分層,并對基于YAF的系統開發進行研究。實際表明,將系統進行分層,每層對應不同職責,系統開發模塊化,易于維護擴展。

關鍵詞:YAF框架 分層 模塊化

中圖分類號:TP302 文獻標識碼:A 文章編號:1672-3791(2017)03(a)-0029-02

傳統Web系統開發后端服務業務邏輯簡單,代碼沒有明顯模塊化,業務邏輯與數據訪問雜糅在一起,隨著需求逐漸復雜化,逐漸無法應對代碼規模的擴張,需要良好設計的開發框架進行規范化,使系統易于維護擴展,節省人力與經濟成本。MVC與N層架構等理論的發展,使得現代軟件的開發更加規范化與工程化,作為解決軟件危機的有效方法,將界面表示、業務邏輯以及數據的處理進行模塊劃分,使各模塊各司其職,模塊之間職責劃分清晰,架構易于理解與維護。YAF框架是基于MVC架構的開發框架,它專注于在“最小性能損耗”與“良好的模塊封裝”中尋求平衡點,改進的YAF框架則將分層架構應用到YAF的Model中,使得YAF框架可以適應越來越龐大的系統架構。

1 YAF框架核心架構

與傳統MVC框架相同,View負責用戶界面展示;Controller負責處理與用戶進行交互的部分,得到Model的數據后可將數據返回給View;Model表示數據和業務相關處理,并且可將數據返回給controller,一個典型的YAF框架的代碼編寫如下所示。

(1) 控制器application/controllers/Index.php

class IndexController extends Yaf_Controller_Abstract {

public function indexAction() {//默認Action

$model = new ContentModel();

$this->getView()->assign("content", $model->getContent());

}

}

(2) 視圖application/views/index/index.phtml

<?php echo $content;?>

(3) 視圖application/model/Content.php

class ContentModel {

public function getContent() {

return “Hello World”;

}

}

2 改進YAF

可以看到YAF作為一種MVC框架,把系統拆分為“視圖、控制器”與“數據模型”三個模塊,已經對數據的表示進行了解耦,但Model層中依然可以既包含對業務邏輯的處理,也包含針對數據源(可以為數據庫或文本文件等)的訪問處理,使得對業務邏輯與數據的處理仍然混雜,難以維護,此時我們將Model進一步分層。針對Model的數據處理,我們可以繼續分為“頁面邏輯層、數據服務層”以及“數據訪問對象”,如圖1所示。

2.1 數據訪問對象(DAO)

一個DAO對應一張表上具體的、無邏輯的CRUD操作,通常會有多個方法,每個方法對應這張表上的一個操作,負責向數據服務層提供對數據進行訪問的接口。

2.2 數據服務層(Data Service)

數據服務層在DAO這一層的基礎上提供一個原子功能的接口封裝,按主題提供數據操作服務給頁面服務層調用,該層中主要負責對數據進行加工,例如時間字段的格式化、通過調用不同DAO進行數據組合后處理以及對數據進行緩存等操作。

2.3 頁面服務層(Page Service)

頁面服務層主要是在數據服務層提供的數據提供接口上,進行與具體頁面的業務邏輯相關的操作,同時可以進行對數據的合法性與安全性校驗。

3 改進后YAF的應用

改進后的YAF目錄針對架構進行了細化,一個典型的改進后YAF框架的代碼編寫如下所示。

(1)控制器application/controllers/Index.php。

<?php

class ControllerIndex extends Yaf_Controller_Abstract {

public function IndexAction() {

$object = new Service_Page_Index();

return $object->execute();

}

}

(2)頁面服務層 application/model/service/page/Index.php。

class Service_Page_Index {

public function execute() {

$object = new Service_Data_Index();

return $object->getHelloData();

}

}

(3)數據服務層 application/model/service/data/Index.php。

class Service_Data_Index {

public function getHelloData() {

$object = new Dao_Index();

return $object->getData();

}

}

(4) 數據訪問對象 application/model/dao/Index.php。

class Dao_Index extends Lib_Dao{

public function getData() {

$this->useTable(‘Table)

return $object->getData();

}

}

4 結語

該文對YAF框架的架構進行了針對Model層的改進,使其層次更加清晰,更適合應用到大規模系統開發中。對Model進行分層使得模塊松耦合,不僅系統架構更加清晰,易于理解,而且開發人員在維護系統時只需要針對某一層進行修改,只要接口規范不改變,那么修改其中一層不會影響其他層,節省了維護成本。

參考文獻

[1] (美)斯賓奈利斯,著.架構之美[M].王海鵬,等,譯.北京:機械工業出版社,2010.

[2] (美)埃斯波西托,薩爾塔列洛,著.Microsoft .NET企業級應用架構設計[M].陳黎夫,譯.北京:人民郵電出版社,2010.

猜你喜歡
模塊化
模塊化自主水下機器人開發與應用
基于模塊化控制系統在一體化教學中的應用
模塊化住宅
現代裝飾(2020年5期)2020-05-30 13:01:56
馬勒推出新型模塊化混動系統
考慮模塊化和退貨率的供應鏈大規模定制模型
ACP100模塊化小型堆研發進展
中國核電(2017年2期)2017-08-11 08:00:56
從模塊化中得到的二氧化碳
流程工業(2017年4期)2017-06-21 06:29:52
模塊化VS大型工廠
流程工業(2017年4期)2017-06-21 06:29:50
非模塊化設計四合一爐對流室的模塊化吊裝
機械制造技術模塊化教學改革研究
主站蜘蛛池模板: 免费无码又爽又黄又刺激网站 | 69国产精品视频免费| 不卡色老大久久综合网| 国产91在线免费视频| 996免费视频国产在线播放| 亚洲精品成人片在线播放| P尤物久久99国产综合精品| 91丝袜乱伦| 91精品国产福利| 鲁鲁鲁爽爽爽在线视频观看| 亚洲欧洲天堂色AV| 久久综合伊人77777| 亚洲精品桃花岛av在线| 老司国产精品视频| 亚洲国产午夜精华无码福利| 国产精品无码制服丝袜| 久久综合伊人77777| 国产精品天干天干在线观看 | 国产偷倩视频| 女同久久精品国产99国| 日韩毛片在线播放| 国产视频自拍一区| 一级毛片在线播放| 欧美日韩专区| 无码专区在线观看| 性激烈欧美三级在线播放| 亚洲成a∧人片在线观看无码| 另类专区亚洲| 四虎精品国产AV二区| 婷婷丁香在线观看| 亚洲天堂精品在线观看| 中文字幕久久精品波多野结| 黄色污网站在线观看| jizz亚洲高清在线观看| 免费无码AV片在线观看中文| 免费一级无码在线网站| www.av男人.com| 欧美一区二区精品久久久| 青青久视频| 国产91蝌蚪窝| 99久久这里只精品麻豆| 亚洲人成色在线观看| 久久免费视频播放| 99免费在线观看视频| 99精品福利视频| 日本精品一在线观看视频| 日韩二区三区无| 日本在线视频免费| 国语少妇高潮| 亚洲黄色高清| 久久久久久久97| 五月激情综合网| 成人午夜精品一级毛片| 日韩东京热无码人妻| 亚洲一级色| 国产白浆在线| 国产黑人在线| 国产午夜一级毛片| 91精品国产一区| 国产簧片免费在线播放| 日本人妻丰满熟妇区| 2020国产免费久久精品99| 国产精品第页| 亚洲色图欧美视频| 亚洲欧美日本国产综合在线| 人妻丰满熟妇av五码区| 欧美97欧美综合色伦图 | 宅男噜噜噜66国产在线观看| 精品国产Av电影无码久久久| 黄色网在线免费观看| 国产特级毛片| 丁香综合在线| 精品视频在线一区| 蝌蚪国产精品视频第一页| 国产视频自拍一区| 国产精品网拍在线| 97人人做人人爽香蕉精品| 91激情视频| 久青草免费在线视频| 亚洲热线99精品视频| 精品一区二区无码av| 在线观看无码a∨|