伊莉討論區

標題: 如何使用C++撰寫具有物件導向概念的GUI,並和資料庫連結,具有新增、修改、刪除和 [打印本頁]

作者: ljp69383    時間: 2014-5-30 01:16 PM     標題: 如何使用C++撰寫具有物件導向概念的GUI,並和資料庫連結,具有新增、修改、刪除和

本帖最後由 snowflying 於 2014-5-30 06:15 PM 編輯

如題,本人具有VB和資料庫概念,但對於C++和具有物件導向概念的GUI完全沒概念不知從那著手,市面上的書也很少,就算有GUI也是以拖曳方式處理而非使用物件導向概念,各位前輩只要給我簡單範例(比如只有性別和姓名)即可,感謝各位。
作者: chevylin0802    時間: 2014-5-30 01:51 PM

本帖最後由 chevylin0802 於 2014-5-30 01:52 PM 編輯

VB跑資料庫的performance不比C++差啊
如果你只是為了程式需要
是沒有必要改換跑道學C++的
如果你只是想要專門使用windows平台寫程式
最多最多也只需要學C#就夠了
如果真的是為了物件導向的觀念
那你還不如改學JAVA
JAVA的物件導向觀念才是最成熟最完整的

作者: ljp69383    時間: 2014-5-30 02:08 PM

本帖最後由 ljp69383 於 2014-5-30 02:15 PM 編輯
chevylin0802 發表於 2014-5-30 01:51 PM
VB跑資料庫的performance不比C++差啊
如果你只是為了程式需要
是沒有必要改換跑道學C++的


是工作上的需要,限Linux環境下使用C++,只要有簡單的完整範例即可;VB+資料庫那部份本身沒什麼問題
作者: chevylin0802    時間: 2014-5-30 02:15 PM

本帖最後由 chevylin0802 於 2014-5-30 02:30 PM 編輯
ljp69383 發表於 2014-5-30 02:08 PM
是工作上的需要,限用C++,VB+資料庫那部份本身沒什麼問題


那就真的有點腫了

一般來講VB要轉換跑道到C++
只會建議學Visual C++

只是這通常都需要自己去買書來學
由於視窗元件配置的關係
所以都是用拖曳的方式來做UI
元件本身都是物件
因為你拖曳完了以後
你還是必需要自己去填寫物件裏的動作內容
只是並沒有辦法學習到完整的物件觀念就是了

但這也是沒有辦法的事情
因為元件基本上已經是經過繼承好幾層之後而產生的子類別
這些子類別"通常"不會成為其他物件的父類別

真的想學具有物件導向的東西
反而一直都不是視窗程式

有點像是給視窗程式繼承的動態連結程式庫
這些種DLL檔一般來講可以提供給C++程式用
當然也一樣可以提供給VB用

只是這些東西通常都是跟演算法有關
跟視窗元件比較沒有任何關連

如果你想要不靠拖曳的方式來寫C++的UI
那真的很難找到這種範例

更何況這類的程式現在多半都用JAVA或Python取代了
---------------------------------------------------------------------------------

噗~~~~~~~~我還以為是Windows
Linux上面就只剩下Gnome跟KDE兩種而已啊

這簡單
先學會使用gnu gcc/c++等編譯器
然後學會使用Gnome,或KDE
可是你自己要先問清楚你們的GUI要使用哪一種
是Gnome套件還是使用KDE套件
因為這兩種完全不一樣啊

更何況這是什麼樣的公司@@~~~~~~百資嗎??????
難道大家都不知道現在Linux 視窗系統的UI很多都為了排除Gnome跟KDE的環境issue
全部都已經改用Python或JAVA開發了嗎?



作者: kilean    時間: 2014-5-30 02:23 PM

ljp69383 發表於 2014-5-30 02:08 PM
是工作上的需要,限用C++,只要有簡單的完整範例即可;VB+資料庫那部份本身沒什麼問題 ...

先確認公司是用什麼工具,是用什麼資料庫,公司測試你有限定要用什麼配什麼嗎?
有幾樣功課要先學習,
1.C++基礎
2.SQL基礎
3.開發工具的安裝與應用
4.資料庫的安裝與應用
5.物件導向基礎
作者: ljp69383    時間: 2014-5-30 02:32 PM

本帖最後由 ljp69383 於 2014-5-30 02:39 PM 編輯
kilean 發表於 2014-5-30 02:23 PM
先確認公司是用什麼工具,是用什麼資料庫,公司測試你有限定要用什麼配什麼嗎?
有幾樣功課要先學習,
1. ...


公司用Qt5.2,資料庫MySQL,程式限C++
作者: ljp69383    時間: 2014-5-30 02:34 PM

kilean 發表於 2014-5-30 02:23 PM
先確認公司是用什麼工具,是用什麼資料庫,公司測試你有限定要用什麼配什麼嗎?
有幾樣功課要先學習,
1. ...

2,3,4都沒問題,1和5我可自行解決,只要有簡單又完整範例就可以了
作者: ljp69383    時間: 2014-5-30 02:38 PM

本帖最後由 ljp69383 於 2014-5-30 03:19 PM 編輯
chevylin0802 發表於 2014-5-30 02:15 PM

那就真的有點腫了


本人有使用MS-SQL.Oracle.MySQL經驗,也涉獵過VB.PHP和ASP...等等,這次狀況有點棘手,但只要有簡單又完整的範例可供參考應該就沒什麼問題了
作者: chevylin0802    時間: 2014-5-30 02:51 PM

本帖最後由 chevylin0802 於 2014-5-30 02:53 PM 編輯
ljp69383 發表於 2014-5-30 02:38 PM
本人有使用MySQL.Oracle.MySQL經驗,也涉獵過VB.PHP和ASP...等等,這次狀況有點棘手,但只要有簡單又完整的 ...

那就使用QT Eclipse 整合環境

MySQL是還好
只需要灌好mysql開發程式庫跟header檔就可以了

這些我相信你自己知道該怎麼做

http://sourceforge.net/projects/mysql-qt/

這邊有mysql qt環境的範例給你參考

不過如何建構QApplication的makefile 你自己要自己去看文件


作者: ljp69383    時間: 2014-5-30 02:55 PM

chevylin0802 發表於 2014-5-30 02:51 PM
那就使用QT Eclipse 整合環境

MySQL是還好

謝謝您的提供,環境都已弄好了(客戶要求的,Qt5.2+Linux+MySQL+C++),目前唯一迫切需要是簡單又完整的範例,不然要花很長時間測試
作者: ljp69383    時間: 2014-5-30 03:12 PM

ljp69383 發表於 2014-5-30 02:55 PM
謝謝您的提供,環境都已弄好了(客戶要求的,Qt5.2+Linux+MySQL+C++),目前唯一迫切需要是簡單又完整的範例, ...

因為要和機器結合並存取與分析資料
作者: chevylin0802    時間: 2014-5-30 03:41 PM

本帖最後由 chevylin0802 於 2014-5-30 04:03 PM 編輯
ljp69383 發表於 2014-5-30 03:12 PM
因為要和機器結合並存取與分析資料

喔喔
還要分析資料啊
呵呵
這有得你搞了

Linux的思考模式跟Windows不同

Linux是可以直接把Linux當成是一個容許多個用戶同時工作的機器
分析資料可以用一隻獨立的程式
收集資料也一樣可以用一隻獨立的程式
而設定的部份可以用另一隻獨立的程式, 通常這個部份已經改成使用網頁
分析出來的資料通常也會寫進資料庫裏
使得整個工作變得很單純
就像是一個流水線的工廠一樣
各別的獨立程式做各別的工作
資料庫成了這所有的工作的資料管理中心
但是如果只寫成一隻
那未來維護起來的負擔會變得很吃重
而且本來是每一隻程式可以個別維護的
現在卻要變成一起維護
會增加開發人員的負擔

而且像是分析資料來講
一般如果不選擇Orcale這種需要龐大花費的資料庫引擎時
通常我首要的選擇會考慮使用PostgreSQL
因為這是物件化資料庫引擎系統
且可以寫Stored Procedure

像這種系統
postgresql+php+apache我曾經寫過
做為VOIP的計費系統以及前後台管理系統

照樣可以很容易的把每一個月的各種分析報表處理出來
也照樣可以畫商業圖表

當時我用那種方式設計的理由就是為了易於維護還有易於擴充功能
用了100多個stored procedure在SQL裏
前後花了快一年搞定

QT的話
我就不知道你得花多少時間了

因為我都會把數據處理的程式跟GUI程式完全分開變成兩個獨立的程式

以前做工控程式也是啊
工控的資料收集用了一個程式寫成背景程式
一開機就可以立刻執行
資料分析的程式也是做成另一隻背景程式
當資料收集程式啟動之後就會開始執行
也一樣是做成分開的兩隻
最後才是做UI程式
不過當初我是非常偷雞啦
直接硬幹做成網頁flash版......利用AS1.0來接收跟顯示資料

Linux的概念就是這樣子
每一隻程式小而美
容易維護
程式間的通訊可以建立出各種不同的IPC機制
全部都擠在同一支程式的困擾是不好維護且易當機
光光memory leak就有得你去查了






歡迎光臨 伊莉討論區 (http://s03.p02.eyny.com/) Powered by Discuz!