線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1084
推到 Plurk!
推到 Facebook!

疑惑--請教程式設計的概念

答題得分者是:conundrum
juneo
高階會員


發表:103
回覆:190
積分:118
註冊:2004-05-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-02-16 10:17:01 IP:211.75.xxx.xxx 未訂閱
因為我進入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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-02-16 23:25:41 IP:218.175.xxx.xxx 未訂閱
Q1:這樣的架構需要用到多層架構嗎?還是MDI就可以? //建議先看李維大師的書 應該買不到了 去圖書館找找 (delphi 分散xxxxx) Q2:如何動態建立TIdTCPClient元件可以輪詢cilent與接收各別的資料?或者有其他的方法? //建議先看李維大師的書 再看看你的論點就知錯在那 3:如果要在網際網路上連接cilent在設計上還要考量哪些? //效能 安全 方便 成本 是矛與盾 黑與白 缺一不可 卻又不可擇一過及 哈哈 你的想法仍有吸收的空間 先吸收正確觀念 再寫 才不會浪費 時間 體力 server=開店等客人 client=我上門觀顧 C/S : B/S 先了解 開店 客戶 開小店 : 開大店 各有好處與缺點
juneo
高階會員


發表:103
回覆:190
積分:118
註冊:2004-05-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-02-18 09:10:52 IP:211.75.xxx.xxx 未訂閱
conundrum: 感謝你的建議,你提供的這本書正是我在學習的其中ㄧ本書,除了吸收書本上的知識與作法外,我想大家的經驗也是很重要的,畢竟實做的方式是日日進步,當然不可否認基礎概念是非常重要的,看了書,說真的不一定能完全領悟,有時候看書與寫程式還真需要ㄧ點天份,不巧,我就不是那種人^^"",所以才想聽聽大家的經驗,我也知道很多經驗是你們用心血換來的,所以我不是要瓢竊你們的經驗,既然這裡是大家討論的地方,願不願意將個人經驗分享出來是很自主性的^^,我非常贊成"先吸收正確觀念 再寫 才不會浪費 時間 體力",正因為看了太多相關資料,有時候要釐清順序是很重要的,所以才希望和大家討論聽聽各位的建議。 符合自然的程式就是最好的程式? 分享比獲得更快樂--Juneo
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-02-18 13:06:14 IP:61.221.xxx.xxx 未訂閱
引言: 有時候看書與寫程式還真需要ㄧ點天份
依我看不管是程式或做人的道理 都是一樣的 很多東西 寫的是專用名詞 用的卻是生活理念的一環 把複雜的東西用生活話說出=專業解說於一般人 把簡單的東西用數據分析=專業教育一般人
juneo
高階會員


發表:103
回覆:190
積分:118
註冊:2004-05-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-02-21 15:46:20 IP:211.75.xxx.xxx 未訂閱
conundrum大大給的建議很好,但由於沒有確切的回答,因此不能給分 抱歉..... 自然就是寫程式最好的方式, 分享比獲得更快樂--Juneo
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-02-21 21:51:29 IP:218.175.xxx.xxx 未訂閱
由於我必須使用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

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-03-01 14:53:43 IP:211.20.xxx.xxx 未訂閱
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

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-03-01 21:40:31 IP:218.175.xxx.xxx 未訂閱
機器在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
系統時間:2024-05-18 5:07:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!