淺談“框架與模式”
2006/2/16 12:35:00
現(xiàn)在軟件設(shè)計(jì)里到處都是模式,框架。有次朋友問(wèn)什么是模式?我也在學(xué)習(xí)中,就我的學(xué)習(xí)經(jīng)驗(yàn),給出以下小結(jié)。(注意:個(gè)人觀點(diǎn),僅供參考,歡迎指正。)
1.什么是模式?
模式,即pattern。其實(shí)就是解決某一類問(wèn)題的方法論。你把解決某類問(wèn)題的方法總結(jié)歸納到理論高度,那就是模式。
Alexander給出的經(jīng)典定義是:每個(gè)模式都描述了一個(gè)在我們的環(huán)境中不斷出現(xiàn)的問(wèn)題,然后描述了該問(wèn)題的解決方案的核心。通過(guò)這種方式,你可以無(wú)數(shù)次地使用那些已有的解決方案,無(wú)需在重復(fù)相同的工作。
模式有不同的領(lǐng)域,建筑領(lǐng)域有建筑模式,軟件設(shè)計(jì)領(lǐng)域也有設(shè)計(jì)模式。當(dāng)一個(gè)領(lǐng)域逐漸成熟的時(shí)候,自然會(huì)出現(xiàn)很多模式。
什么是框架?
框架,即framework。其實(shí)就是某種應(yīng)用的半成品,就是一組組件,供你選用完成你自己的系統(tǒng)。簡(jiǎn)單說(shuō)就是使用別人搭好的舞臺(tái),你來(lái)做表演。而且,框架一般是成熟的,不斷升級(jí)的軟件。
2.為什么要用模式?
因?yàn)槟J绞且环N指導(dǎo),在一個(gè)良好的指導(dǎo)下,有助于你完成任務(wù),有助于你作出一個(gè)優(yōu)良的設(shè)計(jì)方案,達(dá)到事半功倍的效果。而且會(huì)得到解決問(wèn)題的最佳辦法。
為什么要用框架?
因?yàn)檐浖到y(tǒng)發(fā)展到今天已經(jīng)很復(fù)雜了,特別是服務(wù)器端軟件,設(shè)計(jì)到的知識(shí),內(nèi)容,問(wèn)題太多。在某些方面使用別人成熟的框架,就相當(dāng)于讓別人幫你完成一些基礎(chǔ)工作,你只需要集中精力完成系統(tǒng)的業(yè)務(wù)邏輯設(shè)計(jì)。而且框架一般是成熟,穩(wěn)健的,他可以處理系統(tǒng)很多細(xì)節(jié)問(wèn)題,比如,事物處理,安全性,數(shù)據(jù)流控制等問(wèn)題。還有框架一般都經(jīng)過(guò)很多人使用,所以結(jié)構(gòu)很好,所以擴(kuò)展性也很好,而且它是不斷升級(jí)的,你可以直接享受別人升級(jí)代碼帶來(lái)的好處。
框架一般處在低層應(yīng)用平臺(tái)(如J2EE)和高層業(yè)務(wù)邏輯之間的中間層。
軟件為什么要分層?
為了實(shí)現(xiàn)“高內(nèi)聚、低耦合”。把問(wèn)題劃分開(kāi)來(lái)各個(gè)解決,易于控制,易于延展,易于分配資源…總之好處很多啦:)。
3.以下所述主要是JAVA,J2EE方面的模式和框架:
常見(jiàn)的設(shè)計(jì)模式有什么?
首先,你要了解的是GOF的《設(shè)計(jì)模式--可復(fù)用面向?qū)ο筌浖幕A(chǔ)》一書(shū)(這個(gè)可以說(shuō)是程序員必備的了),注意:GOF不是一個(gè)人,而是指四個(gè)人。它的原意是Gangs Of Four,就是“四人幫”,就是指此書(shū)的四個(gè)作者:Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides。這本書(shū)講了23種主要的模式,包括:抽象工廠、適配器、外觀模式等。
還有其他的很多模式,估計(jì)有100多種。
軟件設(shè)計(jì)模式太多,就我的理解簡(jiǎn)單說(shuō)一下最常見(jiàn)的MVC模式。
MVC模式是1996年由Buschmann提出的:
模型(Model):就是封裝數(shù)據(jù)和所有基于對(duì)這些數(shù)據(jù)的操作。
視圖(View):就是封裝的是對(duì)數(shù)據(jù)顯示,即用戶界面。
控制器(Control):就是封裝外界作用于模型的操作和對(duì)數(shù)據(jù)流向的控制等。
另外:
RUP(Rational Unified Process)軟件統(tǒng)一過(guò)程,XP(Extreme Programming)極端編程,這些通常被叫做“過(guò)程方法”,是一種軟件項(xiàng)目實(shí)施過(guò)程的方法論,它是針對(duì)軟件項(xiàng)目的實(shí)施過(guò)程提出的方法策略。也是另一個(gè)角度的模式。
4.常見(jiàn)的JAVA框架有什么?
WAF:
全稱:WEB APPLICATION FRAMEWORK
主要應(yīng)用方面:EJB層,(WEB層也有,但是比較弱)。
主要應(yīng)用技術(shù):EJB等
出處:http://java.sun.com/blueprints/code/index.html
簡(jiǎn)述:這是SUN在展示J2EE平臺(tái)時(shí)所
下一頁(yè)
返回列表
返回首頁(yè)
主站蜘蛛池模板:
成人欧美视频在线观看|
男女做爽爽视频免费观看|
国产精品欧美亚洲韩国日本久久|
免费无码一区二区三区蜜桃大|
91制片厂制作果冻传媒168|
最新国产在线观看福利|
亚洲精品国产综合久久一线
|
国产女同在线观看|
成人欧美一区二区三区在线
|
国产肝交视频在线观看|
久久婷婷国产综合精品|
欧美成人观看免费完全|
伊人久久大香线蕉avapp下载|
国产精品大bbwbbwbbw|
国产精品黄页免费高清在线观看
|
欧美最猛黑人xxxx黑人猛交|
小浪蹄子嗯嗯水挺多啊|
久久久久国产视频|
毛片基地看看成人免费|
兽皇videos极品另类|
色国产精品一区在线观看|
国产成人福利精品视频|
131美女爱做视频|
成人无码免费一区二区三区|
久久国产精品女|
机机对机机的30分钟免费软件|
午夜性福利视频|
jizz之18|
日本www视频|
亚洲精品无码国产|
精品久久久影院|
国产成人综合欧美精品久久|
2022久久国产精品免费热麻豆|
成年免费视频黄网站在线观看
|
国产精品成人va在线观看|
99re6在线精品视频免费播放|
日本久久久久久中文字幕|
亚洲精品成人片在线播放|
男爵夫人的调教|
公和我做好爽添厨房|
精品女同一区二区三区免费站|