※ 引述《neo5277 (I am an agent of chaos)》之銘言:
: 小弟只有寫過
: 20年前的HTML(真的小三有網頁比賽)
: 其他都很薄弱。
: 最近看了教學影片
: 寫了第一個HELLO WORLD~~還有讓主機發出聲音唱歌的 BEEP
: 用的是 2010 EXPRESS .
: 用的是PC W7
: 我算是微軟愛好者,手機也是 WIN PHONE 近期也打算買 SURFACE PRO2
: 我看了進版頁的介紹 所以決定學C#
: 如果我將來想往手機跟平板或是穿戴這種領域,C#應該是沒有問題的吧?
: 另外外行的我想請問一下程式設計流程
: 假設我今天有一個需求
: 是天氣顯示
: 那我的流程是否應該是如下
: 分成
: 圖樣外表(繪圖軟體)
: 資料(接氣象局或是公開的資料庫?)
: C#上的專案應用(找自己想要的功能需要的關鍵字? )
: 請問這樣算是正確的分工根流程嗎? 還是我有遺漏什麼?
: 感激不盡
您好,
我寫過類似的東西,以下是我的經驗。
首先是要看你個人寫的還是公司要的?
換句話說,就是你是小專案還是大專案?
如果你是小專案的話,
基本上你流程或者分工隨便寫都沒差,
一開始寫個爛一點的也沒關係,
因為是小專案,可以隨時砍掉重寫練等級。
大型專案的話,建議你學習一下DesignePattern,
架構可以考慮用MVP或MVC。
要考慮的點有幾個,
1. 是否有多個來源?
2. 是否要自定義統一格式?
3. 是否有和儲存媒體進行溝通?(如資料庫)
4. 是否需要對資料進行處理動作?(如排序、平均等)
5. 處理動作是在程式內還是其他地方?(Server或資料庫)
其實還有很多,不過一下子想不起來。
有個大概的原則,照這個原則走差不多。
分成「來源層、邏輯層、處理層、資料層(非必要)、顯示層」
換個分類的話
Input 來源層A、來源層B…
Output(顯示) 顯示層
Output(處理) 如存儲到資料庫、http.get、http.post
來源層:
看你的資料來源,多個資料來源要各個分開。
邏輯層:
簡單來講就是 老闆、經理等 的管理階層
一個專門命令某個員工(函式)做什麼事的老闆(函式)
處理層:
簡單來講就是員工,
有專門打掃的員工,專門做文書的員工,專門寫程式的員工,
這一個層級有許多函式,每個函式的職責要清楚。
專門跟資料庫溝通的函式,專門處理顯示層事件的函式等。
資料層:
看資料放在儲存媒體或者是放在記憶體,
白話點就是,
你是放在資料庫還是程式內的某個參數,或者兩個都有。
顯示層:
專門是給user看的介面或視窗,
因為顯示方式可能不同,但是只要保持資料層不變就好,動顯示層就好。
要是沒有資料層,通常就是來源層來頂資料層,
白話點就是,來源有什麼你就顯示什麼。