1轻专,幾點(diǎn)總結(jié)
1,命名的規(guī)范性
2察蹲,加強(qiáng)對(duì)安全代碼的校驗(yàn) ? 比如是int.parse
3请垛,業(yè)務(wù)邏輯與界面邏輯的分離,降低耦合度
4洽议,現(xiàn)有的代碼的改動(dòng)是在不影響之前的代碼的基礎(chǔ)之上的宗收,也就是遵循 開(kāi)放-封閉原則
2,UML圖的理解
1亚兄,類的表示 ? ?privacy - ? ?public + ? protected ?#
2混稽,接口的頂端有<<interface>>的標(biāo)識(shí)
3,繼承關(guān)系用空心三角形+實(shí)線表示
4审胚,實(shí)現(xiàn)接口用空心三角形+虛線表示
5匈勋,聚合表示一種弱的擁有關(guān)系,用空心的菱形+實(shí)線箭頭表示
合成表示一種強(qiáng)的擁有關(guān)系膳叨,用實(shí)心的菱形+實(shí)線箭頭表示
6洽洁,依賴關(guān)系(動(dòng)物依賴于水)用虛線箭頭表示
編程是一門技術(shù),更是一門藝術(shù)菲嘴,加油饿自!
3,簡(jiǎn)單工廠模式的到代碼結(jié)構(gòu)圖
代碼實(shí)現(xiàn)
```
usingSystem;
usingSystem.Collections;
usingSystem.Collections.Generic;
usingUnityEngine;
usingFactoryMode;
publicclassTempMode:MonoBehaviour
{
privatevoidStart()
{
UseFactory();
}
publicvoidUseFactory()
{
LoadAssetloadAsset =LoadFactory.CreateLoadAsset(LoadType.Resource);
loadAsset.Load("name",(www) => {});
}
}
namespaceFactoryMode
{
publicenumLoadType
{
Resource,
Local,
Remote
}
publicabstractclassLoadAsset
{
publicabstractvoidLoad(stringname,Action finished);
}
publicclassResourceLoad:LoadAsset
{
publicoverridevoidLoad(stringname,Action finished)
{
Debug.Log("ResourceLoad");
}
}
publicclassLocalLoad:LoadAsset
{
publicoverridevoidLoad(stringname,Action finished)
{
Debug.Log("LocalLoad");
}
}
publicclassRemoteLoad:LoadAsset
{
publicoverridevoidLoad(stringname,Action finished)
{
Debug.Log("RemoteLoad");
}
}
publicstaticclassLoadFactory
{
publicstaticLoadAssetCreateLoadAsset(LoadTypeloadType)
{
LoadAssetloadAsset =null;
switch(loadType)
{
caseLoadType.Resource:
loadAsset =newResourceLoad();
break;
caseLoadType.Local:
loadAsset =newLocalLoad();
break;
caseLoadType.Remote:
loadAsset =newRemoteLoad();
break;
default:
break;
}
returnloadAsset;
}
}
}
```