ATM-Shop專案結構樹

zenopan發表於2024-04-22

【一】專案結構樹

|- 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
        • 列印登陸失敗

(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

  • 存放購物相關日誌

相關文章