使用工具自動化配置讀取

2022-01-26 03:15:53 字數 1907 閱讀 4905

當你知道使用配置代替hardcode說明你從新手變成了一名初級程式,當有一天你意識到你的配置是需要使用工具去驅動的,這時候你已經走在了高階為行家的路上了。我之前看有些朋友寫的配置讀取工具類是針對乙個乙個model去寫,每個model都翻一種花樣去寫,我想說這**看起來就像是喝醉酒之後寫的。好了,現在該醒醒酒了,下文講乙個胡亂編造的故事權當娛樂

小明在開發一款遊戲,由於遊戲中需要調整的引數太多,於是小明把各個人物的屬性都序列化在unity的inspect中顯示。開發了幾天之後小明發現自己需要配置的引數太多了,於是決定用乙個配置來集中存放這些遊戲中資料。然後小明用json儲存了遊戲的資料,並且將配置移交給策劃配去了,這份配置看起來就像是這樣:

,

2: ,

3: ,

4: ,

5: ,

6: ,

7: ,

...}

然後寫了如下的model**

internal

class

hero

[jsonproperty(

"name")]

public

string name

[jsonproperty(

"power")]

public

int power

[jsonproperty(

"rangetype")]

public

int rangetype

[jsonproperty(

"shotrange")]

public

float shotrange

}

現在這樣做貌似還能解決配置的需求,策劃同學天天瞅著json檔案乙個乙個字段修改,時不時改錯幾個數值,小明回過頭來還要幫策劃君改json配置的格式。

又過了一陣子,小明不斷的開發出遊戲中新的功能同時伴隨著新的json配置出來,小明要花時間與策劃協商不同的model然後根據策劃的需求不斷的改動model,慢慢的策劃君不樂意了,改的檔案太多了,經常由於格式問題導致雙方都耗時間在上面。

於是就有了這個

策劃君很開心從此以後就歡樂的使用工具生成了json配置與小明使用的**。倆人過上了幸福的生活…

接下來如何讀取?

如何寫配置自動化讀取,假設你已經自動生成了配置檔案,現在你已經完成一大半。

在unity下將配置置於resource內,使用如下**讀取

public

class

configreader

}private

configreader()

//////

非untiy環境可以使用如下**

/// public dictionary loadconfig() where t : class

config.json

", typeof

(t).name));

string str =file.readalltext(path);

return jsonconvert.deserializeobjectint, t>>(str);

}//unity資料讀取使用此**

//public dictionaryloadconfig() where t : class

//config", typeof(t).name)).tostring());

//}

本專案為開源專案,**正在重構中 如有興趣可以加到群裡一起聊聊

Python自動化 配置檔案讀取

二 配置檔案處理 yaml檔案 建立乙個.ini的配置檔案。section option value option value section option value option value1 引入configparser類 1.2 例項化configparser類,呼叫read方法,讀取ini...

自動化部署工具

1.puppet puppet是開源的基於ruby的系統配置管理工具,基於c s的部署架構。是乙個為實現資料中心自動化管理而設計的配置管理軟體,它使用跨平台語言規範,管理配置檔案 使用者 軟體包 系統服務等。客戶端預設每隔半小時會和伺服器通訊一次,確認是否有更新。當然也可以配置主動觸發來強制客戶端更...

自動化互動工具 expect

lenovo v110 15ikb notebook scp 192.168.70.187 123 192.168.70.187 s password sudo apt install expect 安裝會在 usr bin 下生成expect工具。spawn 啟動新的程序 send 用於向程序傳送...