自己想做一個sns網站,選擇php架構中。每次在網上都能看到很多爭論,鄙視,說哪個架構好或者不好。我想知道的是,架構真的重要嗎?
回複內容:
自己想做一個sns網站,選擇php架構中。每次在網上都能看到很多爭論,鄙視,說哪個架構好或者不好。我想知道的是,架構真的重要嗎?
不重要。其實不管你做什麼項目選錯了架構最大的影響也就是開發速度,不影響代碼品質、後期維護、商務邏輯這些最核心的東西。比如你需要RESTful,但是選了一個不支援RESTful的架構,那就要自己處理路由問題了,其它沒影響。
無規矩不成方圓,架構本質上就是規矩的集合。架構重要,但是不是說哪一個架構重要。
找到一個適合你口味的、或者你自己寫一個你認為最好的, 都可以。 相信你會因此受益!
架構是別人經驗的積累。
“別人”,也就是這個經驗是別人的,未必全部適合你;“經驗的積累”是指裡面都很多優秀的東西,可以直接拿來用。
所以,無論是是否願意使用架構,你都應該好好研究研究,比較比較,最後挑選一個最適合自己的,哪怕你最後哪個都不用,也可以學習不少東西。
其實,寫過幾年程式的通常都有對於某些問題(比如輸入過濾、圖片上傳、驗證碼等)的常規解決方案,這就是你自己的“架構”。
等你用了幾個再說吧,其實如果沒寫多少代碼就考慮這種問題就是浪費時間,就像我當初考慮該學哪個語言一樣。
人而異 對於不用架構能出活的人來說不重要,對於離了架構乾瞪眼的來說很重要 ,對於不會3,4個架構之外拿不出東西給跟人裝逼的來說尤其重要
其實並沒有重不重要這一說的。主要是看你是想要開發效率還是運行效率。
架構會犧牲你的運行效率,但是會大大提升開發效率。舉個例子。
我現在要寫個一路由 www.xxx.com/api
以laravel為例
Route::get('api',function(){ echo 'hello';})
這樣我們就完成了一個訪問www.xxx.com/api,輸出hello字元的頁面了。
那麼沒有架構尼?額,我覺得這個頁面應該裝不下代碼了。
這裡我並沒有說架構有多好,如今的銀彈法則依然存在,我們無法讓開發效率和運行效率同時提升。
所以必須在開發效率和運行效率選擇。架構因此而生。
至於架構的好與壞完全取決於個人的喜好,比如有些人喜歡thinkphp的自動控制器路由,有人喜歡laravel的手動可控路由,於是就有人開始了……
架構的好和壞畢竟不是那麼容易評定的,畢竟那麼多使用者尼。
所以選擇架構完全看需求,你老闆說讓你1小時不用架構做一個blog,如果不是大觸,我覺得真的會崩潰掉。
如果選擇架構,那估計也是10分鐘的事情。
架構的主要作用是幫你省去大部分無聊的代碼。