ATM+購物車 項目分析練習

一 項目介紹:

ATM+購物商城程序實際上是經過模擬銀行ATM機功能以及電商平臺<購物商城程序>功能的實現,將前面大部分所學的知識點串聯起來,讓大家更好的去鞏固python基礎。這也是在學習python這門語言的第一個程序。 前端

 項目需求以下:

- 額度 15000或自定義python

- 實現購物商城,買東西加入購物車,調用信用卡接口結帳linux

- 能夠提現,手續費5%後端

- 支持多帳戶登陸 - 支持帳戶間轉帳服務器

- 記錄每個月平常消費流水 - 提供還款接口架構

- ATM記錄操做日誌app

- 提供管理接口,包括添加帳戶、用戶額度,凍結帳戶等...運維

- 用戶認證功能ide

二 一個項目是如何從無到有的?

在互聯網企業裏,全部項目一開始都是沒有的,那項目是怎麼來的呢?實際上是經過客戶的需求,從而誕生出一些列的軟件。那也就是說咱們不管開發什麼項目,都是爲了服務於人類,其實這也是計算機的使命,咱們須要讓機器替代人力去幹活!因此企業中一個項目究竟是如何從無到有的:函數

一、需求分析:

  開發項目前,都必須找到相應的客戶,讓客戶給企業提出項目的需求,以及須要實現的功能有哪 些,拿到需求後再提取出一些列功能。 

二、設計程序以及程序的架構

  在全部一線開發的企業裏,在一個項目開發前,都應該設計程序,那樣會讓程序解開耦合,從而提升項目的管理以及開發的效率。 

三、分任務開發

  在公司裏面,開發項目須要這幾種崗位人才:

  UI設計: 軟件的外觀設計者,經過一些炫酷的設計,提升用戶的對軟件的體驗感。

  前端開發: UI設計僅僅只是把一些外觀圖設計出來,那前端開發須要把UI的設計圖拿到以後,對軟件界面的進行排版。

  後端開發(python): 項目裏業務以及功能的邏輯處理!

四、項目測試

  測試工程師: 對後端以及前端開發好的項目進行功能和性能測試,測試的過程當中出現bug就會當即讓開發人員去修整,待整個項目幾乎沒有bug,以及性能達到項目實際的預期,就會準備上線運行。

  測試分爲兩種:

    1.黑盒測試: 經過對軟件界面的功能進行測試,測試一些能讓用戶看到的bug。(例如穿越火線的卡箱子等等...)

    2.白盒測試: 對軟件進行性能測試,例如每秒鐘能承受多少用戶量的訪問等...

五、上線運行

  運維工程師(linux): 拿到前面整個項目編寫完的代碼,部署到服務器,上線運行!

 

三 需求分析

需求分析就是把客戶的一些項目需求,提取出一個個相應的功能。

提取功能

- 額度 15000或自定義 -----> 註冊功能

- 實現購物商城,買東西加入購物車,調用信用卡接口結帳-----> 購物、支付

- 能夠提現,手續費5% -----> 提現

- 支持多帳戶登陸 -----> 登錄

- 支持帳戶間轉帳 -----> 轉帳

- 記錄每個月平常消費流水 -----> 記錄流水

- 提供還款接口 -----> 還款

- ATM記錄操做日誌 -----> 記錄日誌

- 提供管理接口,包括添加帳戶、用戶額度,凍結帳戶等... -----> 管理員功能:添加用戶,凍結帳戶

- 用戶認證功能 -----> 用戶認證裝飾器

提取完後能後咱們應該再分析出展現給用戶的功能:

1 登入

2 註冊

3 查看餘額

4 轉帳

5 還款

6 取款

7 查看流水

8 購物

9 查看商品

10 管理用戶

四 設計程序以及程序架構

在寫程序以前不是一拿到項目需求想到哪就寫到哪。假設你的程序有成千上萬個功能,你都把他們寫在一個文件裏面。還有用戶輸入、邏輯處理、數據存儲都寫在一個函數裏,會致使你的代碼結構及其不清晰。而是應該對程序進行設計,設計出一種優的程序架構! 這樣作會有什麼好處:

1.思路清晰

2.不會出現寫到一半的時候推翻重寫

3.方便本身或之後同事的維護 那麼接下來咱們開始設計咱們的程序架構,把一個程序架構分爲三層:

 

 

 

 

三層架構優勢:

   1把每一個功能都分紅三個部分,邏輯清楚

  2若是要改用戶的數據展現,或者換存儲機制,只需動單獨一個模塊就能夠了,擴展性強

  3爲何把日誌模塊放在接口層,由於全部的交互都會通過接口層,方便記錄

 

接下來咱們寫的功能都在按照這個文件目錄來寫,請認真閱讀這個目錄所對應的功能

 

六 項目代碼

 

- ATM

   - conf 配置文件文件夾

     - setting.py

   - lib 公共方法文件夾

    - common.py 公共方法文件

   - interface 接口層文件夾

    - user.py 用戶接口文件

     - shop.py 購物接口文件

    - bank.py 銀行接口文件

  - core 用戶功能文件夾

    - src.py 視圖文件

  - db 數據處理層文件夾

    - db_handler.py 數據處理功能文件

   - log 日誌存放目錄

 

  - start.py 程序的入口文件,啓動文件

  

import os
import sys

BASE_PATH = os.path.dirname(__file__)
sys.path.append(BASE_PATH)

if __name__ == '__main__':
    from core import src
    src.run()
View Code

 

   - readme 程序的說明文件 

 

 

未完待續..........

相關文章
相關標籤/搜索