【一】專案結構樹
|- ATM(專案根目錄)
|-- README.md # 專案說明書
|-- start.py # 專案啟動檔案的建立方式二,直接暴露在最外層
|-- bin(啟動檔案目錄) # 存放啟動檔案的方式一,單獨建立目錄
|- main.py # 存放使用者核心程式碼
|-- core(使用者檢視層) # 存放使用者檢視層程式碼檔案
|--- user_src.py # 使用者功能程式碼
|--- admin_src.py # 管理員功能程式碼
|--- shop_src.py # 購物功能程式碼
|-- interface(邏輯介面層) # 存放核心業務邏輯程式碼
|--- user_interface.py # 使用者功能相關介面
|--- bank_interface.py # 銀行功能相關介面
|--- shop_interface.py # 購物功能相關介面
|-- db(資料處理層) # 存放資料與資料處理層程式碼
|--- db_handler.py # 資料處理層程式碼
|--- user_data # 使用者資料儲存資料夾目錄
|---- user_data.json # 使用者資料儲存json檔案
|-- conf # 配置檔案資料夾目錄
|--- settings.py # 配置引數程式碼
|-- lib # 公共方法資料夾目錄
|--- common.py # 公共方法程式碼
|-- log(日誌檔案層) # 存放日誌資料夾目錄
|--- User # 使用者日誌資料夾目錄
|---- username.log # 某個使用者的日誌檔案
|--- Admin # 管理員日誌資料夾目錄
|---- username.log # 某個使用者的日誌檔案
|--- Shop # 購物日誌資料夾目錄
|---- username.log # 某個使用者的日誌檔案
【二】專案結構樹說明
【1】README.md
- 存放專案的說明,包括但不限於,程式執行展示
- 存放一些對程式的解釋型介紹
【2】start.py(啟動檔案)
- ATM和購物車專案的啟動入口
【3】bin(啟動檔案目錄)
- 總專案的總功能整合
(1)__init__.py
(包出口)
- 作為 bin 包的出口檔案
(2)main.py(統合主邏輯)
- 作為使用者檢視層的整合程式碼入口
【4】core(使用者檢視層)
- 存放使用者檢視層程式碼檔案
- 主要負責引數的讀入
- 輸入層反饋的狀態的資訊的展示
(0)__init__.py
(包出口)
- 作為 core 包的出口檔案
(1)user_src.py(使用者功能檢視程式碼)
- 使用者功能的檢視程式碼
- 負責使用者資料的輸入
- 將使用者資料傳給介面層
- 介面層反饋結果,將介面層返回的結果進行展示
- 例如註冊功能
- 輸入使用者名稱和密碼
- 將使用者名稱和密碼傳遞給介面層
- 介面層處理完成後反饋結果
- 註冊成功 返回 True
- 列印登陸成功
- 註冊失敗 返回 False
- 列印登陸失敗
- 註冊成功 返回 True
(2)admin_src.py(管理員功能檢視程式碼)
- 管理員功能的檢視程式碼
- 負責管理員資料的輸入
- 將管理員資料傳給介面層
- 介面層反饋結果,將介面層返回的結果進行展示
(3)shop_src.py(購物功能檢視程式碼)
- 購物功能的檢視程式碼
- 負責購物資料的輸入
- 將購物資料傳給介面層
- 介面層反饋結果,將介面層返回的結果進行展示
【5】interface(邏輯介面層)
- 存放核心業務邏輯程式碼
(0)__init__.py
(包出口)
- 作為interface 包的出口檔案
(1)user_interface.py(使用者核心邏輯介面)
- 使用者功能的邏輯程式碼
- 負責對檢視層傳入的資料進行處理、清洗或加密
- 負責呼叫資料處理層進行資料的儲存和讀取
- 將使用者檢視傳入的引數進行清洗處理後向檢視層反饋結果
- 例如註冊功能
- 接收到檢視層傳入的使用者名稱和密碼
- 對原始密碼進行加密
- 構建好儲存到資料庫的資料格式
- 呼叫資料處理層的函式進行資料的寫入
- 獲取到資料處理層反饋的結果
- 寫入成功
- 返回 True 返回 寫入成功
- 寫入失敗
- 返回 False 返回 寫入失敗
- 寫入成功
- 將資料處理層的結果處理後反饋給檢視層二次處理
(2)admin_interface.py(管理員核心邏輯介面)
-
管理員功能的邏輯程式碼
-
負責對檢視層傳入的資料進行處理、清洗或加密
-
負責呼叫資料處理層進行資料的儲存和讀取
-
將使用者檢視傳入的引數進行清洗處理後向檢視層反饋結果
-
(3)bank_interface.py(銀行核心邏輯介面)
-
銀行業務相關功能的邏輯程式碼
-
負責對檢視層傳入的資料進行處理、清洗或加密
-
負責呼叫資料處理層進行資料的儲存和讀取
-
將檢視傳入的引數進行清洗處理後向檢視層反饋結果
-
(4)shop_interface.py(購物核心邏輯介面)
-
購物業務相關功能的邏輯程式碼
-
負責對檢視層傳入的資料進行處理、清洗或加密
-
負責呼叫資料處理層進行資料的儲存和讀取
-
將檢視傳入的引數進行清洗處理後向檢視層反饋結果
-
【6】db(資料處理層)
- 存放資料與資料處理層程式碼
(0)__init__.py
(包出口)
- 作為 db 包的出口檔案
(1)db_hander.py(資料處理層程式碼)
- 用來處理有關資料的儲存
- 處理有關資料的讀取和清理
(2)User(使用者資料資料夾)
- user_data.json : 儲存所有使用者的資料的json檔案
(3)Product(商品資料資料夾)
- shop_data.json : 儲存所有商品資訊的資料的json檔案
【7】conf(配置資料夾)
- 存放配置檔案
(1)__init__.py
(包出口)
- 作為 conf 包的出口檔案
(2)settings.py(配置檔案)
- 存放設定相關的程式碼
- 比如根目錄引數
- 比如日誌配置字典引數
【8】lib(公共方法檔案)
(1)__init__.py
(包出口)
- 作為 lib 包的出口檔案
(2)common.py
- 存放所有函式或者部分函式公用的函式程式碼或邏輯
【9】log(存放日誌檔案)
- 用來存放生成的log日誌檔案
(1)User
- 存放普通使用者的日誌檔案
(2)Admin
- 存放管理員操作日誌
(3)Shop
- 存放購物相關日誌