[問題] 請教適合C++應用程式開發的書

看板C_and_CPP作者 (stu)時間13年前 (2011/05/04 13:54), 編輯推噓5(5026)
留言31則, 8人參與, 最新討論串1/3 (看更多)
本人是個還在讀書的研究生 因為領域的關係常常接觸OpenGL 也會需要用C++寫出一些小型的應用程式 我的想法 是介面要先做好 但是空下一些可以設定的地方 然後讓核心程式去填這些空 介面設計就和核心程式獨立了 介面的更動要避免牽動到核心程式 但是我注意到 常常與老師討論之後就需要更動功能 而GUI的介面與核心程式往往沒有辦法真正的完全獨立 常常為了增加幾個簡單的功能在介面上 結果核心又要修改出新的函數或是介面 所以我在想,應該是我缺乏了某些知識 因為我還沒有看過真正的應用程式到底是怎麼開發的 而這個問題我想應該很多人遇到過 想請教一下版上先進 有沒有推薦的書籍或是網頁 可以學習這方面的知識? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.210.62

05/04 14:07, , 1F
可以舉例嗎?在介面增加了什麼簡單功能,導致核心要加函數
05/04 14:07, 1F

05/04 14:09, , 2F
可以去OOAD版看看, 這已經不是程式語言的問題了
05/04 14:09, 2F

05/04 14:10, , 3F
如果需求常變動的話當然很難保證整個系統的架構是常態
05/04 14:10, 3F

05/04 14:14, , 4F
因為要獨立的話要花非常多的工, 你可能很多東西沒想到
05/04 14:14, 4F

05/04 14:15, , 5F
看一下各大 UI Framework 的內容大概會有點了解吧
05/04 14:15, 5F

05/04 14:58, , 6F
Embrace Change! 怎麼是先寫介面介面才寫核心部份..
05/04 14:58, 6F

05/04 14:58, , 7F
你是 VB 寫太多嗎? 先練習寫 console 應用程式吧, 不
05/04 14:58, 7F

05/04 14:59, , 8F
然你連商業邏輯要擺哪, 責任歸屬都還沒分配好, 就在傷
05/04 14:59, 8F

05/04 15:00, , 9F
腦筋畫面要怎呈現了, 完全本末倒置
05/04 15:00, 9F

05/04 15:18, , 10F
我想原po應也是核心寫好再寫介面,但核心會一直加,所以
05/04 15:18, 10F

05/04 15:19, , 11F
想找簡單的方式綁起來,核心增加時介面小幅度修改.
05/04 15:19, 11F

05/04 16:04, , 12F
有一招很 dirty, use all in one interface XDXD
05/04 16:04, 12F

05/04 16:51, , 13F
實際上我大多數的程式都是console的
05/04 16:51, 13F

05/04 16:52, , 14F
先設計核心在弄UI感覺的確是比較正確的作法
05/04 16:52, 14F

05/04 16:55, , 15F
我在想 如果讓核心可以指揮UI要放上什麼介面
05/04 16:55, 15F

05/04 16:55, , 16F
那麼應該就只要改核心,UI就放給他自己生成就好
05/04 16:55, 16F

05/04 16:56, , 17F
不確定這是不是Builder Pattern
05/04 16:56, 17F

05/04 16:57, , 18F
你先學習 MVC 架構, 再學怎麼測試吧
05/04 16:57, 18F

05/04 16:58, , 19F
謝謝囉,我又得到一個關鍵字了
05/04 16:58, 19F

05/04 17:28, , 20F
其實我也很想知道UI跟邏輯要怎麼漂亮的切開...
05/04 17:28, 20F

05/04 17:28, , 21F
剛開始學都會把程式塞在 event function 裡面,超醜
05/04 17:28, 21F

05/04 18:05, , 22F
callback 裡只作轉呼叫其他函式的動作, 之後再把這些
05/04 18:05, 22F

05/04 18:06, , 23F
真正做事情的函式整理起來抽象化成類別, 而真正被處理
05/04 18:06, 23F

05/04 18:07, , 24F
的資料也整理成類別, 當然不免會有存取的問題, 讓你恨
05/04 18:07, 24F

05/04 18:08, , 25F
不得把所有資料成員設為公用, 這招只是補救的方法
05/04 18:08, 25F

05/04 18:08, , 26F
治本的方法就是從核心先下手, 邏輯+資料的部份先抽象
05/04 18:08, 26F

05/04 18:09, , 27F
化, 想辦法提升復用性跟便利性, 這邊應該要跟GUI無關
05/04 18:09, 27F

05/04 18:10, , 28F
然後當你加入不同的View時, 只是透過組合之前設計的諸
05/04 18:10, 28F

05/04 18:11, , 29F
多methods來完成呈現的目的而已, 所以我才說請你先練
05/04 18:11, 29F

05/04 18:12, , 30F
習主控台應用程式, 因為良好設計的 Model/Controller
05/04 18:12, 30F

05/04 18:13, , 31F
應該要很容易的獨立(於GUI)出來作測試
05/04 18:13, 31F
文章代碼(AID): #1DmEe53K (C_and_CPP)
文章代碼(AID): #1DmEe53K (C_and_CPP)