查看完整版本: 在同一個class裡執行所有功能會有什麼後果!?
頁: [1]

jackyo03 發表於 2017-7-11 09:53 AM

在同一個class裡執行所有功能會有什麼後果!?

      小弟目前作業都是利用同一個java class來完成所有需求,因為針對新增一個java class後的溝通有很大的問題,所以常常都是一個layout裡面會塞滿很多東西,server端跟client都會寫在一起。
      譬如說,我第一頁想要兩個button,完成動作後就將兩個button隱藏起來,然後讓第二頁所需的元件顯示出來,想叫出第三頁的功能,一樣是將第二頁的元件隱藏,然後第三頁的元件顯示出來.....以此類推。
      往往一個class裡面就會有一大串,大概幾千甚至幾萬行的功能,光找程式就花了我不少時間,還必須想出好幾個ID;想問說有沒有相關的書籍或網頁,可以比較清楚的來學習..{:36:}

...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div>

johnwanz 發表於 2017-7-12 10:54 AM

首先你缺的是, 結構化程序的概念. 但是, 結構化程序帶來的就是溝通的必要性. 所以, 你必須先接受溝通複雜度的提升, 才能有機會享受到, 簡化系統複雜度的好處.

實際上你所呼叫與使用的各種API介面, 基礎型別, 多數也都是以結構化的概念(物件)供你使用的, 並不會非常困難與複雜.

溝通上的問題, 也有一部分是平台所引起的, 為了簡化開發一整個系統的複雜度, 在現有平台上使用現成的功能是, 比較恰當的. 但是, 需要依照平台規則來使用平台, 也就是系統的設計, 必須符合平台的要求與規範. 所以, 開發一個功能系統, 同時也要去理解平台的設計概念, 平台如何去運行一個功能系統, 從而知曉, 如何在平台條件下, 設計你的系統.

關於ID名稱, 依據功能來分類, 名稱理論上沒有大問題, 但應克制全域變量的使用;
若是相同元件很多, 用上container也能解決數量上的問題....<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>

theloserbm 發表於 2017-7-14 07:57 PM

別太過擔心, 開始是這樣的, 時候到了你就會學習到class的強大之處
利用 extends 和 implements 可以讓你重複使用很多的代碼, 也使到管理上比較方便

話說server跟client端能寫一起的嗎? 是2架機上跑同一個程式的意思?

GDNPC 發表於 2017-7-17 09:27 PM

建議看看面向對象和設計模式方面的書

kwj 發表於 2017-7-20 11:22 AM

樓主顯然已經察覺到沒有結構化的程式碼,會造成什麼痛苦了~
這時候開始嘗試物件導向的程式結構,不就正好是時候了嗎~{:32:}<br><br><br><br><br><div></div>

lwk 發表於 2017-8-4 12:11 AM

推薦看網路上良葛格的文章  蠻多觀念可以參考的

dryadd70822 發表於 2017-8-12 10:32 PM

會有一個很不好的後果
就是你的後人會很難維護

lwk 發表於 2017-9-1 08:37 PM

定義接口就像在拚積木一樣,可以思考練習把常用到的工具function抽到一隻class,慢慢地你會開始很有感覺~{:32:}

z1090128 發表於 2017-9-5 08:08 PM

有結構化的話程式會比較好維護,因為你會知道哪個功能寫錯指改class的程式碼,全寫在一起會讓你很難修改

zaq12345 發表於 2020-4-4 11:43 PM

推薦看網路上良葛格的文章 +1<br><br><br><br><br><div></div>

CrazyDavis 發表於 2020-7-26 12:23 AM

這是新手一開始寫常會遇到的問題了
等到熟了點懂得設計模式的相關概念之後
這個問題自然會迎刃而解

hand79 發表於 2022-7-9 10:21 AM

你想以後工作DEBUG都在同一支class追問題,會不想揍人你就會知道為什麼了。
頁: [1]