溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

互聯(lián)網(wǎng)中什么是快速開發(fā)框架

發(fā)布時(shí)間:2021-11-25 09:08:46 來源:億速云 閱讀:134 作者:小新 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)互聯(lián)網(wǎng)中什么是快速開發(fā)框架,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

什么是快速開發(fā)框架

前言

做為一個(gè)程序員,在開發(fā)的過程中會(huì)發(fā)現(xiàn),有框架同無框架,做起事來是完全不同的概念,關(guān)系到開發(fā)的效率、程序的健壯、性能、團(tuán)隊(duì)協(xié)作、后續(xù)功能維護(hù)、擴(kuò)展......等方方面面的事情。很多朋友在學(xué)習(xí)搭建自己的框架,很多公司也在創(chuàng)建或使用自己的框架,網(wǎng)上開源的框架多如牛毛,每年新上線的各種框架也不知多少。而不停的重復(fù)造輪子,也讓更多的朋友鳥槍換炮,越跑越快,工作效率越來越高。那么什么是快速開發(fā)框架呢?

什么是快速開發(fā)框架

   快速開發(fā)框架是整個(gè)或部分系統(tǒng)的可重用設(shè)計(jì),表現(xiàn)為一組抽象構(gòu)件及構(gòu)件實(shí)例間交互的方法; 另一種定義認(rèn)為,框架是可被應(yīng)用開發(fā)者定制的應(yīng)用。前者是從應(yīng)用方面而后者是從目的方面給出的定義。

   可以說,一個(gè)快速開發(fā)框架是一個(gè)可復(fù)用的設(shè)計(jì)構(gòu)件,它規(guī)定了應(yīng)用的體系結(jié)構(gòu),闡明了整個(gè)設(shè)計(jì)、協(xié)作構(gòu)件之間的依賴關(guān)系、責(zé)任分配和控制流程,表現(xiàn)為一組抽象類以及其實(shí)例之間協(xié)作的方法,它為構(gòu)件復(fù)用提供了上下文(Context)關(guān)系。因此構(gòu)件庫(kù)的大規(guī)模重用也需要快速開發(fā)框架。

   應(yīng)用快速開發(fā)框架指的是實(shí)現(xiàn)了某應(yīng)用領(lǐng)域通用完備功能(除去特殊應(yīng)用的部分)的底層服務(wù)。使用這種框架的編程人員可以在一個(gè)通用功能已經(jīng)實(shí)現(xiàn)的基礎(chǔ)上開始具體的系統(tǒng)開發(fā)??蚣芴峁┝怂袘?yīng)用期望的默認(rèn)行為的類集合。具體的應(yīng)用通過重寫子類(該子類屬于框架的默認(rèn)行為)或組裝對(duì)象來支持應(yīng)用專用的行為。

  快速開發(fā)框架,即。其實(shí)就是某種應(yīng)用的半成品,就是一組組件,供你選用完成你自己的系統(tǒng)。簡(jiǎn)單說就是使用別人搭好的舞臺(tái),你來做表演。而且,快速開發(fā)框架一般是成熟的,不斷升級(jí)更新的軟件

    簡(jiǎn)單來講,軟件開發(fā)框架可以理解為我們起樓房時(shí),用梁+柱子+承重墻做起來的鋼筋混凝土結(jié)構(gòu)框架。而實(shí)現(xiàn)的軟件功能,也就像在這個(gè)快速開發(fā)框架結(jié)構(gòu)中所要實(shí)現(xiàn)的不同類型、功能的房子,比如停車場(chǎng)、商場(chǎng)、酒店、飯店、商住房......

  功能強(qiáng)大,結(jié)構(gòu)扎實(shí)的框架,可承載的類型就更多,適用性就更強(qiáng)。

不論是什么開發(fā)框架,都是為現(xiàn)實(shí)不同的業(yè)務(wù)功能而創(chuàng)建的。好的快速開發(fā)框架能提高企業(yè)的競(jìng)爭(zhēng)能力,包括降低開發(fā)成本、提高產(chǎn)品質(zhì)量、改善客戶滿意程度、控制開發(fā)進(jìn)度等。同時(shí),快速開發(fā)框架也是某一領(lǐng)域?yàn)閷?shí)現(xiàn)某種業(yè)務(wù)的知識(shí)積累,它是一種持續(xù)性的活動(dòng),隨著特定業(yè)務(wù)功能實(shí)現(xiàn)而創(chuàng)建,且跳出軟件開發(fā)周期而存活。一個(gè)成熟的快速開發(fā)框架,不單單只是代碼而已,它除了將某一領(lǐng)域業(yè)務(wù)的基礎(chǔ)功能以代碼的方式實(shí)現(xiàn)外,還必須編寫對(duì)應(yīng)的文檔、模型、流程圖、數(shù)據(jù)字典、開發(fā)使用說明.....等一系列的文檔來支撐,這樣的快速開發(fā)框架才更加成熟和健壯。

為什么要使用快速開發(fā)框架

  軟件系統(tǒng)隨著業(yè)務(wù)的發(fā)展,變得越來越復(fù)雜,不同領(lǐng)域的業(yè)務(wù)所涉及到的知識(shí)、內(nèi)容、問題非常非常多。如果每次都從頭開發(fā),那都是一個(gè)很漫長(zhǎng)的事情,且并不一定能將它做好。團(tuán)隊(duì)協(xié)作開發(fā)時(shí),沒有了統(tǒng)一標(biāo)準(zhǔn),大家各寫各的,同樣的重復(fù)的功能到處都是。由于沒有統(tǒng)一調(diào)用規(guī)范,很難看懂別人寫的代碼,出現(xiàn)Bug或二次開發(fā)維護(hù)時(shí),根本無從下手。(無框架不堪回首的黑暗日子請(qǐng)看前面章節(jié)的講述)

而一個(gè)成熟的快速開發(fā)框架,它是模板化的代碼,它會(huì)幫我們實(shí)現(xiàn)很多基礎(chǔ)性的功能,我們只需要專心的實(shí)現(xiàn)所需要的業(yè)務(wù)邏輯就可以了。而很多底層功能操作,就可以完完全全不用做太多的考慮,快速開發(fā)框架已幫我們實(shí)現(xiàn)了。這樣的話,整個(gè)團(tuán)隊(duì)的開發(fā)效率可想而知。另外對(duì)于團(tuán)隊(duì)成員的變動(dòng),也不用太過擔(dān)心,快速開發(fā)框架的代碼規(guī)范讓我們能輕松的看懂其他開發(fā)人員所寫的代碼。

搭建快速開發(fā)框架時(shí),我們要如何定位

  是不是快速開發(fā)框架的擴(kuò)展性、可移值性、功能越強(qiáng)大就越好呢?

  好的快速開發(fā)框架是相對(duì)的,它都有自己特定的應(yīng)用領(lǐng)域,合適才是最好。

  個(gè)人覺得在實(shí)際開發(fā)中要根據(jù)具體情況來看的,因?yàn)楣δ茉饺嫠膹?fù)雜度就越大,所需要的開發(fā)人員能力和技能就會(huì)要求更高,付出的成本也就最大。比如做一個(gè)還未發(fā)展起來的電商網(wǎng)就想 將系統(tǒng)做成像京東那樣,直接用京東分模塊分布式的框架來開發(fā),那得怎么來組建這個(gè)團(tuán)隊(duì)?更不用說開發(fā)成本了。就算團(tuán)隊(duì)有能力做到,也沒有那個(gè)必要這么去做,因?yàn)閺某杀绢A(yù)算和開發(fā)周期等方面來看,得不嘗失,更多的可能項(xiàng)目還未完成公司就給拖垮了。

   一般來說,一個(gè)中小型項(xiàng)目,1到5人左右的開發(fā)團(tuán)隊(duì),使用一般的三層結(jié)構(gòu)就可以了,不用去細(xì)想框架要分三層還是五層,每個(gè)層之間要怎么實(shí)現(xiàn)解耦,要用什么設(shè)計(jì)模式.....因?yàn)楫?dāng)今飛速發(fā)展的互聯(lián)網(wǎng)時(shí)代,快才是王道,做一個(gè)中小型項(xiàng)目能用一周完成的,絕不能拖了一個(gè)月還未做完。人工與時(shí)間成本才是重點(diǎn)中 的重點(diǎn),唯有快才能更好的生存下來并壯大。至于擴(kuò)展功能、接口、分布式、并發(fā)、大數(shù)據(jù)......等等問題,實(shí)際上過早考慮太多并不是好事情,有經(jīng)驗(yàn)的程序員在寫這個(gè)快速開發(fā)框架時(shí)早已留下擴(kuò)展方案或思路,而沒到這一層次的開發(fā)人員你想再多也可能想不明白,還不如先做出來積累一定經(jīng)驗(yàn)后再慢慢學(xué)習(xí),慢慢升級(jí)框架。

  當(dāng)然也不是說設(shè)計(jì)框架時(shí)不用考慮高內(nèi)聚低耦合,而是要根據(jù)自己的能力與經(jīng)驗(yàn)來設(shè)計(jì)出自己能把控的框架出來。因?yàn)榭蚣懿皇情_發(fā)出來后就不再變動(dòng),它也需要不停的進(jìn)行升級(jí),將你所學(xué)到的新知識(shí)新技術(shù)融合到框架中,使它的功能更加強(qiáng)大,更加健壯。而對(duì)于自己不能把控的快速開發(fā)框架,在團(tuán)隊(duì)協(xié)作開發(fā)和上生產(chǎn)環(huán)境后,你就發(fā)現(xiàn)有一大堆的坑等著你去填埋,這種框架只能拿來先練練手,有空再慢慢完善。

  快速開發(fā)框架通過小步快跑,不斷的迭代升級(jí)來慢慢擴(kuò)展的,當(dāng)項(xiàng)目上生產(chǎn)環(huán)境后,根據(jù)新的需求和所碰到的問題,去不停的調(diào)整,最終越來越強(qiáng)大。所有框架都是從1.0版本到2.0、3.0......發(fā)展而來,而不是直接跳過最初版本到最終成熟版本。

   所以說我們?cè)趧?chuàng)建一個(gè)框架時(shí),必須根據(jù)我們當(dāng)前個(gè)人的技術(shù)能力、團(tuán)隊(duì)成功技術(shù)水平、時(shí)間、投入成本、項(xiàng)目現(xiàn)狀(規(guī)模與需求復(fù)雜程度)、以后的發(fā)展前景來決定所要開發(fā)的框架的最終設(shè)計(jì)方案。當(dāng)然也不是說不能一步到位,心有多大世界就有多大,只要個(gè)人能力和團(tuán)隊(duì)能力配得上,老板資金成本雄厚,時(shí)間充足,直接上大項(xiàng)目使用超級(jí)框架也完全沒有問題。

快速開發(fā)框架的主要特點(diǎn)和要求

  1、代碼模板化

  快速開發(fā)框架一般都有統(tǒng)一的代碼風(fēng)格,同一分層的不同類代碼,都是大同小異的模板化結(jié)構(gòu),方便使用模板工具統(tǒng)一生成,減少大量重復(fù)代碼的編寫。在學(xué)習(xí)時(shí)通常只要理解某一層有代表性的一個(gè)類,就等于了解了同一層的其他大部分類結(jié)構(gòu)和功能,容易上手。團(tuán)隊(duì)中不同的人員采用類同的調(diào)用風(fēng)格進(jìn)行編碼,很大程度提高了代碼的可讀性,方便維護(hù)與管理。

  2、重用

  快速開發(fā)框架一般層次清晰,不同開發(fā)人員開發(fā)時(shí)都會(huì)根據(jù)具體功能放到相同的位置,加上配合相應(yīng)的開發(fā)文檔,代碼重用會(huì)非常高,想要調(diào)用什么功能直接進(jìn)對(duì)應(yīng)的位置去查找相關(guān)函數(shù),而不是每個(gè)開發(fā)人員各自編寫一套相同的方法。

  3、高內(nèi)聚(封裝)

  快速開發(fā)框架中的功能會(huì)實(shí)現(xiàn)高內(nèi)聚,開發(fā)人員將各種需要的功能封裝在不同的層中,給大家調(diào)用,而大家在調(diào)用時(shí)不需要清楚這些方法里面是如果實(shí)現(xiàn)的,只需要關(guān)注輸出的結(jié)果是否是自己想要的就可以了。

  4、規(guī)范

  快速開發(fā)框架開發(fā)時(shí),必須根據(jù)嚴(yán)格執(zhí)行代碼開發(fā)規(guī)范要求,做好命名、注釋、架構(gòu)分層、編碼、文檔編寫等規(guī)范要求。因?yàn)槟汩_發(fā)出來的框架并不一定只有你自己在用,要讓別人更加容易理解與掌握,這些內(nèi)容是非常重要的。

  5、可擴(kuò)展

   快速開發(fā)框架時(shí)必須要考慮可擴(kuò)展性,當(dāng)業(yè)務(wù)邏輯更加復(fù)雜、數(shù)量記錄量爆增、并發(fā)量增大時(shí),能否通過一些小的調(diào)整就能適應(yīng)?還是需要將整個(gè)框架推倒重新開發(fā)?當(dāng)然對(duì)于中小型項(xiàng)目框架,也不必考慮太多這些內(nèi)容,當(dāng)個(gè)人能力和經(jīng)驗(yàn)足夠時(shí)水到渠成,自然就會(huì)注意到很多開發(fā)細(xì)節(jié)。

  6、可維護(hù)

  成熟的快速開發(fā)框架,對(duì)于二次開發(fā)或現(xiàn)有功能的維護(hù)來說,操作上應(yīng)該都是非常方便的。比如項(xiàng)目要添加、修改或刪除一個(gè)字段或相關(guān)功能,只需要簡(jiǎn)單的操作,十來分鐘或不用花太多的工夫就可以搞定。新增一個(gè)數(shù)據(jù)表和對(duì)應(yīng)的功能,也可以快速的完成。功能的變動(dòng)修改,不會(huì)對(duì)系統(tǒng)產(chǎn)生不利的影響。代碼不存在硬編碼等等,保證軟件開發(fā)的生產(chǎn)效率和質(zhì)量。

  7、協(xié)作開發(fā)

  有了快速開發(fā)框架,我們才能組織大大小小的團(tuán)隊(duì)更好的進(jìn)行協(xié)作開發(fā),成熟的框架將大大減輕項(xiàng)目開發(fā)的難度,加快開發(fā)速度,降低開發(fā)費(fèi)用,減輕維護(hù)難度。

  8、通用性

同一行業(yè)或領(lǐng)域的快速開發(fā)框架,功能都是大同小異的,不用做太大的改動(dòng)就可以應(yīng)用到類似的項(xiàng)目中。在快速開發(fā)框架中,我們一般都會(huì)實(shí)現(xiàn)一些同質(zhì)化的基礎(chǔ)功能,比如權(quán)限管理、角色管理、菜單管理、日志管理、異常處理......或該行業(yè)中所要使用到的通用功能,使框架能應(yīng)用到某一行業(yè)或領(lǐng)域中,而不是只針對(duì)某公司某業(yè)務(wù)而設(shè)定(當(dāng)然也肯定存在那些特定功能的應(yīng)用框架,這只是非常少的特殊情況,不在我們的考慮范圍)。

關(guān)于“互聯(lián)網(wǎng)中什么是快速開發(fā)框架”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI