當我使用兩種編程語言C和Java時,實現觀察者模式的最佳方式是什麼?它不一定使用觀察者模式我只需要知道如何實現像notifyall()方法或函數來通知一個客戶端的操作後連接到會話的客戶端。它足以讓他們發送字符串消息。
我在C服務器應用程序和Java swing中的客戶端。
服務器上有n個遊戲,每個遊戲可以連接兩個客戶端。
服務器和客戶端使用帶Inet地址的套接字,服務器和客戶端有2個metods - 發送,接收。
我已經意識到: 服務器 - C:
- 發送 - 發送消息給客戶端(客戶端通過套接字文件描述符指定)
- 收到 - 收到消息從客戶機(客戶機通過套接字文件描述符指定)
客戶 - 在Java中
- 發送 - 發送郵件服務器(服務器由套接字文件描述符指定)
- 收到 - 收到消息從服務器(服務器由套接字文件descripor指定)
服務器本地主機上運行127.0.0.1和端口例如10000
客戶端。我連接的客戶端服務器ADRESS 127.0.0.1,端口10000
觀察者模式C和Java
消息是簡單的字符串,如「世界,你好\ N」 1.運行服務器,服務器等待消息
2,運行客戶端 - 客戶端發送消息給服務器
3.服務器 - 收到消息和發送消息發送回客戶端
服務器proccess的
4.client端發送後使用發送叉
服務器和客戶端的寫和收到的消息中的新過程中的每個客戶端消息
這是什麼工作。
我在的Java Swing類,它代表客戶端GUI,有N按鈕(JButton的),例如16,他們每個人都有形象的圖標,每個按鈕添加的ActionListener 如果我在按鈕上的東西點擊應該發生 - 改變或不改變ImageIcon。
我試圖實現的方法有點像觀察者
我需要以某種方式對服務器類似的會議:(代表遊戲)
的Game1:客戶端1,客戶機程序
GAME2:client3,client4
game3:客戶機程序,client6
等。在客戶端1
1.I按鍵數15,客戶端向服務器發送信息,如「客戶端1按下按鈕,15號。」
2.服務器收到消息,就像發送消息「客戶端1按下按鈕15「給遊戲1(client1,client2)中的所有客戶。在服務器消息中也將是必要的東西如「改變按鈕15的ImageIcon」。
點號2應該是函數notifyAll
什麼是實現它的好方法和簡單方法?
感謝您的建議。
不是一個壞的問題,爲什麼downvotes? – asgs