溫馨提示×

溫馨提示×

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

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

設(shè)計模式在實際開發(fā)中的應(yīng)用

發(fā)布時間:2020-08-05 13:54:17 來源:網(wǎng)絡(luò) 閱讀:1217 作者:GuangYao_Li 欄目:編程語言


分析功能:

1.接到項目后要先分析好模塊,分析好模塊后再從模塊里分析功能,把一個大的項目分成N個模塊再把模塊分析成N個功能點,把每個功能點都進(jìn)行封裝,有一個管理類進(jìn)行管理。

代碼邏輯分工

  1. 代碼要做到層層管理,一個類管理著另外的一個些管理類,管理類里面又要管理封裝一些功能點。做這一部分的時候建議使用觀察者設(shè)計模式,定義 一個接口父類,讓后通過不同的功能子類來繼承接口父類,最后通過調(diào)用接口父類來管理子類。

    2.要做到功能和流程區(qū)分,字段和邏輯區(qū)別。 這里就是代碼實現(xiàn)是要注意點地方,代碼實現(xiàn)時要注意到功能邏輯不能和框架結(jié)構(gòu)相混淆,要做到代碼結(jié)構(gòu)和功能實現(xiàn)相分離,如果項目中if判斷用的話可以考慮使用枚舉。

代碼設(shè)計
1.搭建好框架結(jié)構(gòu),主題思想就是分而治之,高內(nèi)聚,低耦合。

2.. 分而治之: 就是把每個功能點封裝成一個類,一個類就只負(fù)責(zé)一個件事,多了不管?。?! 再者就是定義好抽象類和類,接口等一些規(guī)范,盡量就是把每個概念相同的類定義一個抽象類(概念相同就某個模塊里的一個功能點,想這些功能點都是在封裝干一件事件所以他們的概念是相同的,所以就把他們這些功能點都給封裝成一個抽象的父類,讓他們繼承),把功能相同的定義成接口(功能點相同的就是把一些功能定義成接口,比如,有的繼承了抽象父類并且沒有繼承MonoBehaviour的類需要有 MonoBehaviour的功能點,在這時就不能再讓繼承了抽象父類的,功能點類去繼承MonoBehaviour了,所以這時候可以定義一個接口,讓接口繼承MonoBehaviour,然后在讓封裝功能點的類去繼承接口這時封裝功能點的類就有MonoBehaviour的功能點了,以后的用法都是這樣類似用法,要靈活運用抽象類和接口的用法), 而這些封裝功能點的類要進(jìn)行繼承抽象類和接口進(jìn)行規(guī)范。
高內(nèi)聚 :就是把封裝好功能點的類進(jìn)行封裝把他們放在一個管理類里面進(jìn)行統(tǒng)一管理,初始化和更新。
低耦合: 就是把每個管理類在進(jìn)行封裝把每個不同的管理類都在封裝在一個類里面進(jìn)行管理(俗稱:外觀類)

.總的思想就是一個管理類封裝一個些功能 點 讓后在讓另一個管理類來管理這些管理類 做到游戲程序只有一個進(jìn)口,分層管理 ,層層管理。盡量少寫散彈式的腳本,要做到一個類管理所有類。做到層層管理。

.. 如果狀態(tài)超過兩種或者兩種一上了建議使用枚舉 ,讓后可以用很少的字段來控制狀態(tài)的切換。

總結(jié):

在項目開始之前首先要做的就是分析功能并按照客戶要要來選擇合適的技術(shù)框架,框架沒有最好的,只用最合適的,這樣做的有一個好處就是可以避免后期客戶需求改動幅度特別而需要重寫。
在一般的的項目中界面UI使用MVC框架還是蠻多的,MVC框架可以很好的把數(shù)據(jù)和功能實現(xiàn)相分離,這樣可以做到修改數(shù)據(jù)或者功能實現(xiàn)不會牽扯太多的代碼。我現(xiàn)在經(jīng)常用的框架就是MVC,輕量級分布式狀態(tài)機,還有就為外觀模式(觀察者模式),在這里我要說的是,觀察者模式和MVC配合使用會用意想不到的效果。雖然MVC可以把數(shù)據(jù)和實現(xiàn)相分離但是如果界面中沒有好的代碼結(jié)構(gòu)那么以后改起來一樣會很頭疼,所以這樣我比較喜歡使用MVC做總體框架,界面UI使用觀察者設(shè)計模式來實現(xiàn)。
最后我想說的是如果在項目經(jīng)驗不多的時候可以多看一些大神的代碼,和一些項目的源碼,這樣可以快速的提升自己的編碼水平和設(shè)計水平。

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

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

AI