通訊總結 走了三天,又回到了原點

2021-09-01 19:05:13 字數 1083 閱讀 5227

這是三天來一直困擾我的問題,在做程式時,我應該是一步一步走,怎樣能做出效果就怎樣寫**,還是思考再三,設計出一種好的程式結構,試程式具有更好的擴充套件性,而且不需要傳遞很多引數。

其實,這兩種思路都有利有弊。第一種思路的好處是你很快就能達到目的,看到成果,然後可以發揮自己的想象力去做各種好看好玩的東西;缺點是這樣寫出來的程式往往邏輯混亂,結構糟糕,一旦你要改動某一處,就會有很多地方都需要改動,到時候容易把程式搞成一團漿糊。

第二種思路的好處可能是你做的程式會很簡潔明瞭,也很容易擴充套件和修改,你對程式的理解也會更透徹;但缺點是你前期會花比較多的時間且進展緩慢,最糟的是你想了半天也想不出好的設計思路,或者你以為很不錯的思路,一去執行(寫**)就發現根本不是這麼回事。在你花了好幾個小時甚至幾天還沒有多少進展,看著別人乙個個華麗的功能實現啦,你卻只有乾瞪眼的分,那時真是想死的心都有啦,心浮氣躁,沒有信心做下去啦(我現在就是這樣)。

我覺得,對於我們初學者來說,一開始還是盡量把功能實現的好,初步對所做的程式有個概念,有了一些第一手資料,再去設計會有底一點;另一方面,做出一些看得見的東西會有成就感,讓自己更有信心。如果要去設計的話,還是找人或者和團隊一起商量著幹,乙個人的思維畢竟有侷限,尤其是自己乙個人苦思未果的時候,最好不要埋著頭硬幹,這樣收效甚微。(血的代價啊)

這是我的伺服器流程圖:

想了好久,想了好多辦法,也實實在在地試過幾種,都不行,最後靈光一現,想到一種不錯的辦法。由於要傳的引數很多,我就把它們「整合」起來,把幾個關聯的引數作為乙個類的屬性,然後再在這個類裡寫獲取這些屬性的方法。比如把所有通訊工具(文字聊天,聯機畫板……)放到乙個「工具箱」裡,到時只要在工具箱物件裡新建各種通訊工具的物件,然後再把工具箱物件傳到讀取資訊執行緒裡面就行了。

通訊工具與讀取執行緒流程圖

通訊,讀寫資訊,處理資訊的流程圖

通訊總結之三 XMPP

之前的伺服器與客戶端的通訊過程中,雙方都是直接傳送資訊內容,並預設以回車符結尾,這樣的通訊方式 也可以算作一種協議 所包含的資訊過於簡單與貧乏。沒有包含資訊的型別 登入 驗證 私聊等 的資訊,也不能包含發信人,收信人的資訊,這只能在簡單群聊伺服器中使用。如果在比如qq 等這些較為複雜的聊天環境下就顯...

近三天jpa的總結

最近由於專案的需要,學習了下jap,以下就簡單記錄下最近這兩天的學習總結 1.jpa是一種規範而不是具體的orm產品架構,就像類中的介面一樣,他只是規定了你能幹什麼,而具體的怎麼乾是需要根據不同的orm框架自來來確定的,但是沒有仔細讀過jpa的文件,不知道jpa中對主鍵查詢的快取功能是不是jap規範...

工作第三天總結

1 align與text align的區別 align是規定div元素中的內容的水平對齊方式 p中也可以使用 text align是規定元素中的文字的水平對齊方式,它是css屬性,若要在div中使用,則需要用到style text align center 來撰寫css屬性 2 清除瀏覽器自帶的邊框...