疑惑--請教程式設計的概念 |
答題得分者是:conundrum
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
因為我進入DELPHI不久,目前又要實作多層架構程式+資料庫,有點不知道如何開始,想請有經驗的人給些建議。
想實作ㄧ個網路系統,
傳輸資料架構是TCP/IP封包方式
編程環境Win2000+Delphi7+Mysql4.0.2
在Delphi我用ADO方式連接資料庫
我的構想是使用ㄧ台server安裝service程式也安裝資料庫系統,因為沒經費拆成兩部電腦暫時使用相同電腦,程式分成server/client,client端走的是DOS系統,但是有用C++撰寫能夠傳輸TCP/IP封包,不過是採用輪詢的方式,所以必須由server端每隔一段時間發送封包跟cilent端詢問資料,問題來了,由於我必須使用1台server去輪詢10台的cilent,server程式使用MDI分為from1與from2,form1主要作系統的設定與控制,from2的工作是去輪詢cilent端的資料並且接收封包,然後把資料顯示在from2上,所以from1上會開10各from2的視窗,但是我不希望程式執行就建立好所有的from2,而是讓使用者選擇後才建立from2,我看過相關網站使用動態建立,問題是from2所顯示的資料都相同,因為我不希望放10各TIdTCPClient元件,希望能由1各TIdTCPClient運作,卻讓from2能夠在創建視窗以後能夠有傳輸各自的資料,當然最後這些資料還是要由server程式放到資料庫中,請給點建議還是我的想法中有哪裡需要改進的請告訴我謝謝。 Q1:這樣的架構需要用到多層架構嗎?還是MDI就可以?
Q2:如何動態建立TIdTCPClient元件可以輪詢cilent與接收各別的資料?或者有其他的方法?
Q3:如果要在網際網路上連接cilent在設計上還要考量哪些? 感謝你耐心的看完我的問題,謝謝!
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
Q1:這樣的架構需要用到多層架構嗎?還是MDI就可以?
//建議先看李維大師的書 應該買不到了 去圖書館找找 (delphi 分散xxxxx)
Q2:如何動態建立TIdTCPClient元件可以輪詢cilent與接收各別的資料?或者有其他的方法?
//建議先看李維大師的書 再看看你的論點就知錯在那
3:如果要在網際網路上連接cilent在設計上還要考量哪些?
//效能 安全 方便 成本 是矛與盾 黑與白 缺一不可 卻又不可擇一過及 哈哈 你的想法仍有吸收的空間 先吸收正確觀念 再寫 才不會浪費 時間 體力
server=開店等客人
client=我上門觀顧
C/S : B/S 先了解 開店 客戶
開小店 : 開大店 各有好處與缺點
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
conundrum:
感謝你的建議,你提供的這本書正是我在學習的其中ㄧ本書,除了吸收書本上的知識與作法外,我想大家的經驗也是很重要的,畢竟實做的方式是日日進步,當然不可否認基礎概念是非常重要的,看了書,說真的不一定能完全領悟,有時候看書與寫程式還真需要ㄧ點天份,不巧,我就不是那種人^^"",所以才想聽聽大家的經驗,我也知道很多經驗是你們用心血換來的,所以我不是要瓢竊你們的經驗,既然這裡是大家討論的地方,願不願意將個人經驗分享出來是很自主性的^^,我非常贊成"先吸收正確觀念 再寫 才不會浪費 時間 體力",正因為看了太多相關資料,有時候要釐清順序是很重要的,所以才希望和大家討論聽聽各位的建議。 符合自然的程式就是最好的程式? 分享比獲得更快樂--Juneo
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
由於我必須使用1台server去輪詢10台的cilent,server程式使用MDI分為from1與from2,form1主要作系統的設定與控制
,from2的工作是去輪詢cilent端的資料並且接收封包,然後把資料顯示在from2上,所以from1上會開10各from2的視窗,
但是我不希望程式執行就建立好所有的from2,而是讓使用者選擇後才建立from2,我看過相關網站使用動態建立,
問題是from2所顯示的資料都相同,因為我不希望放10各TIdTCPClient元件,希望能由1各TIdTCPClient運作,
卻讓from2能夠在創建視窗以後能夠有傳輸各自的資料,當然最後這些資料還是要由server程式放到資料庫中,
請給點建議還是我的想法中有哪裡需要改進的請告訴我謝謝。 使用1台server去輪詢10台的cilent,server
//錯誤 是cilent去光顧唯一商店server 使用MDI分為from1與from2,form1主要作系統的設定與控制
//系統架構下如有權限劃分 就可利用dll來下載因等級不同的客戶來進入使用不同的套餐選單 因為我不希望放10各TIdTCPClient元件
//又錯 因為元件只需一個=溝通的通道 = 店面的櫃台中心
(如果你要開10門也可以問題是櫃檯也開10櫃檯分別處理嗎 也可能是分別消化的方法之一 超超超大型的電子商務全球性的) 當然最後這些資料還是要由server程式放到資料庫中
//錯的無俚頭 如果不最後資料使用不使用資料庫 是要分析架構的需求
基本上不使用資料庫 在開發的時間與效益是很難接受的 不然不會有資料庫這東西
要不大家都使用TXT來記錄 這樣可以嗎 當然也可 只是最終的方式其實是一樣但效率與時間 能否能接受 使用stored procedure協助處理把
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=55021 建議多看看這2位版主的技術討論
jieshu 版主
http://delphi.ktop.com.tw/pop_profile.asp?mode=display&id=785
Mickey 版主
http://delphi.ktop.com.tw/pop_profile.asp?mode=display&id=6078
Chance36 版主
http://delphi.ktop.com.tw/pop_profile.asp?mode=display&id=362
change.jian 版主
http://delphi.ktop.com.tw/pop_profile.asp?mode=display&id=11526
T.J.B 版主
http://delphi.ktop.com.tw/pop_profile.asp?mode=display&id=3315 基本上 這5位版主的資料庫問達資料 決對受用
不過就看是否理解問達之中的參透 由其那位 程式獵人版主 令庵老回憶 孟波看美女的色色笑容 哈哈
美女在那 哈哈 因此不能給分
如果庵要分數的話 早不該來KTOP轉貼怪文談聊齋了
哈哈 哈哈哈 發表人 - conundrum 於 2005/02/21 22:34:26
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
conundrum:
感謝conundrum大大明確指出觀念上的錯誤,最近也是在海K相關文章,深怕還有不當言論的發表,
最近完成的部份,MDI介面當TIdTCPClient元件在MDIChild運作,每當建立新的MDIChild將會產生出對應的通道,所以並不會互相影響到。 conundrum大大在跟你請教,cilent/server架構如同大大提的商店模式相同,但由於我的架構有些不同所以產生模糊的問題,
在此將架構提出,希望大大再給予指教, 機器在DOS底下的TCP/IP介面(Server),
PC端去向Server詢問資料(Cilent),
由於會產生一台機台給很多PC詢問資料,
一台PC詢問很多台機台,
這樣就產生出N對N的狀況,目前我是想用MDI來對DOS的機器詢問資料,以前也考慮過使用三層架構來處理,
如果使用三層架構會產生 N 機台 >> 1AP << N PC ,讓一台AP去尋問N機器,再由PC端來跟AP讀取資料,
無奈本身對於三層架構不是很清楚,所以採用MDI架構,如果有不當之處請大大指教。 看到這篇http://delphi.ktop.com.tw/topic.php?TOPIC_ID=55021
讓我想到用PHP寫的分散式資料庫系統,對我來說PHP比較好寫,
可能是因為用PHP時間比較長吧,Delphi還有待學習^^ 自然就是寫程式最好的方式,
分享比獲得更快樂--Juneo
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
機器在DOS底下的TCP/IP介面(Server),
PC端去向Server詢問資料(Cilent),
由於會產生一台機台給很多PC詢問資料,
一台PC詢問很多台機台,
這樣就產生出N對N的狀況,目前我是想用MDI來對DOS的機器詢問資料,以前也考慮過使用三層架構來處理,
如果使用三層架構會產生 N 機台 >> 1AP << N PC ,讓一台AP去尋問N機器,再由PC端來跟AP讀取資料,
無奈本身對於三層架構不是很清楚,所以採用MDI架構,如果有不當之處請大大指教。 無奈本身對於三層架構不是很清楚 一般使用AP server大都因為移植性考量 如使用甲骨文資料庫或賽貝斯mssql2000 那客戶端是否要裝這類協助軟體 答案是no
因為客戶端只連接AP 由網路協定參數取得資料 甚至搭配純硬體為客戶端跟本沒客戶軟體 舉例
我們使用的信用卡
A 信用卡持卡人
B 商店已有聯合信用卡受權查詢
C 發卡銀行
D 聯合信用卡中心
自己畫一下這樣的角色 刷卡時間資料流 應該
誰是大AP SERVER
誰最小user
誰是經銷
誰是查詢者
誰是詢問者
誰是誰的客戶
誰是給資料
誰日後付錢
誰該確認此卡
誰該確認金錢
誰要得知卡ID
簡單的一件事 拆解之後 那可不一定因為程式化 這樣的系統應該是很好口語理解的 這樣就產生出N對N的狀況
//把你的多對多 想辦法理解為1對多 才是王道 無奈本身對於三層架構不是很清楚 很簡單 就可了解與實驗免錢 但是要4台PC以上
去甲骨文官方下載試用光碟
1 一台裝起ap server
2 一台裝資料庫
3 一台開發環境
4 一台客戶端
光甲骨文的說明檔就應該知道 所的三層架構再由這理解如何轉換人性生活的三層應用
PS 甲骨文 又臭又肥 但是真出名 沒辦法 哈哈 先說甲骨文要資料庫與ap server裝一起 只有一句話
等當如ㄘ飯決對不要測試自己的耐性刺激自己的眼睛 B/S理論與實作問題 另po於上述版主的負責區 比較ez
change.jian 版主的答題區
http://delphi.ktop.com.tw/winnertopics.asp?M_ID=11526&M_NAME=change.jian
基本上差不多你的問題他那都有說了 發表人 - conundrum 於 2005/03/01 23:08:14
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |