Re: [請益] 如何重構消失

看板PHP作者時間14年前 (2012/02/01 20:43), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《PsMonkey (痞子軍團團長)》之銘言: : ※ 引述《poopoo888888 (阿川)》之銘言: : : 大家好 : : 小弟目前跟三個朋友在用PHP寫一個網站 : : 我們都是大學生 沒有太多團隊開發網站的經驗 : : 小弟初學PHP 甚至對PHP的sense都不是很強 : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ : : 因為不想花時間摸framework的關係 所以沒有使用任何framework : : 將來也不想使用 : : 我們利用require()函式將網站重複出現的header.php、footer.php獨立了出來 : : 還用connect_mysql.php將連接資料庫的設定相關程式碼獨立了出來 : : 接著就想到什麼功能就寫什麼功能地東拼西湊寫網站到現在 : : 目前網站初版功能大致成形了 但整個網站的PHP架構也亂得很可怕 : : 我們覺得再這樣下去維護上會出現問題 打算花時間進行程式碼重構 : : 但我們沒有經驗 只能憑直覺做一些簡單地程式碼整理 : : 該怎麼辦呢? : : 請教各位前輩大大 替我們指點迷津 : : 謝謝! : 原文當中 b 兄的推文,我只贊成一半 : 以你的現況來說,你自己都說 PHP 不是很強 : 那講的難聽一點,你要 refactory 什麼? : (謎之聲:就是不知道所以上來問啊...) +1 贊成, 重構不是只有把程式碼重寫而已,它還有包含更深層的意義 已經懂的使用require將程式拆開,那就是代表著你的"經驗"正在一步步 的促使你進步,寫程式就跟練功一樣,"躁進"往往會使人只學到皮毛,甚至 走火入魔 : 反過來說,為甚麼會有「讓你不想學」的 framework? framework 以下簡稱 FW FW的使用與否"討論"到現在也沒有一個總結 有擁護者,也有反對者,各自持有看法,沒有絕對的錯也沒有絕對的對 還有一點,學FW與學用FW這完全是二碼子事 學FW是把FW解開去學它的HOW(它如何去解決什麼樣的問題), 去學它的WHY(它為什麼要用這樣的方式去解決這樣的問題) 而學用FW則是去學WHAT(我有什麼方法來解決什麼問題) 當然,對於初心者而言,"學用"是第一步... 但如果有心要當個"程式設計師",請不要害怕或吝嗇的跨出下一步 : 就是因為這些 framework 處理過你打算處理、或是你不知道該處理的問題 : 然後公式化 or 模組化之後結果 : 至少以我這種低落的技術程度來說 : 我常常是透過 IDE(Java)、framework(GWT、CI)來知道 : 「原來可以 or 需要這麼作」 : 如果挑 open source 的東西,那甚至可以知道「怎麼作」 : 這是一種交叉 feedback 的行為,應該學習過程有很大的好處 : 當然,以 Java developer 的角度來看,PHP... [默] 學用FW後,當然會在短時間內有顯著的"功力"提升, 但就長期來看這不是一件好事,明明前方就是有著無限的可能, 卻要拿一個籠子把自己套住... 身為開發者就是要去尋找無限的可能,而不是去了解籠子的每一吋構造 : 不過,以當初碰 Code Igniter(CI)的心得 : CI 並沒有很侵入式的要你全面重新改寫你的 code : (Java 裡頭什麼 Spring 之類的碗糕就... [淚目]) : 你可以把純 PHP 的 code : 一個部份、一個部份的導入 CI,沒改到的部份也基本上不影響 : 加上他是 open source,程式碼也沒有很龐大 : 可能很適合你現在的需求 : (註:這是三年前的印象 [毆飛]) : 如果你能順利撐過這個階段,熟悉某個 framework 的裡裡外外 : (這個前提一定要先成立,後頭才有意義) : 那其實趁著在學的時候自己有樣學要照抄也好、閉門造車硬幹惡搞也好 : 自己嘗試去弄個 framework、library 也是很好的事情 : 「重新再造輪」在工程 or 職場上能免則免 能免則免的下場就是永遠在原地踏步,重新造輪是有很多手段和方法的 但絕不是叫你"立刻"把輪子拆了送到回收場 : 但是在學生階段... 那就去浪費時間啊! [握拳] : 你不自己磨個輪子,你就很難知道磨輪子的樂趣與痛苦、還有要花的時間 : 至少,你會對那些做出輪子的前輩抱多一點的尊敬 當磨出輪子時,你也會變成"前輩" : 而不會有無憑無據「喵的,給我一個月我也能弄出一個 CI」的自以為 : 想當初,我只知道 servlet 的時候 : 還打算發展一套 library 來簡化網頁開發咧... : 結果人家都已經在上太空(JSTL、EL)我還在得意洋洋的殺豬公 : 在求學階段不作這些事情,難道出社會進職場才作嗎? : 又,你有那個膽子 & 心神作嗎? : anyway... 無論你選哪條路 : 動手作吧! 動手寫(含心得感想)吧! : 趁著青春,去試試看各種選擇,即使那可能是錯的(應該寫 Java 啊! [被毆飛]) : 青春不浪費在這裡,難道要浪費在打卡按讚嗎? : 去吧去吧! : ==== : 錢快燒完了,有感而發...... 想要進步就是要不斷的做,做,做 從累積的經驗中去粹取出"精華",哪怕一天只進步那麼一點, 最令人害怕的就是"原地踏步" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.148.137
文章代碼(AID): #1FAJDjmk (PHP)
文章代碼(AID): #1FAJDjmk (PHP)