學過任何一種編程語言的小夥伴們都應該聽過前輩們常常說的一句話:學編程,要吃苦,不能偷懶;可是也常常聽過那句話:不要重複造輪子,要學會偷懶。數據庫
是否是矛盾了?到底該懶不懶?編程
此懶非彼懶!設計模式
在學習的道路上,不能懶。就是說要多動手,多思考,多寫代碼,多總結。這是學習態度上的範疇,這裏就不能懶!懶得人基本上是學不會編程的。編程語言
不要重複造輪子,要學會偷懶。這是學習方法上的範疇;函數
在實際開發項目的具體功能上,爲了讓你的開發高效起來,讓後續維護簡單起來,就要學會偷懶了。項目開發出來,只是個開始,如何高效而輕鬆的維護纔是最長的,直到你的項目運營終止,估計誰也不想開發個後續維護幾乎不可能的項目吧,那純粹浪費時間。因此雖然開發出項目很重要,可是更重要的是你的項目具備可維護性嗎?這就要綜合應用各類知識來簡化了,因此開發的時候就有開發水平之分。好比你若是不懂函數,你就得複製代碼來完成功能,同時之後若是要修改了就得多處地方都要修改,你會不會頭痛?當你感受到頭痛或者低效的搬磚行爲了,那這裏就須要優化代碼了,是使用新知識、更高級的知識來改善,而不是複製粘貼這種行爲。好比:此時,技術總監會叫你偷懶或者優化代碼去,這就是爲了讓你開發和後續維護(主要是後續維護)變得簡單和方便起來,此時你能夠封裝成函數,而後屢次來調用,之後維護起來就只要到函數裏面修改一次便可;也能夠寫成一個單獨文件,而後多處include,如:PHP的數據庫鏈接文件幾乎都是獨立文件,也是這個緣由。還能夠寫成類,多處實例化對象,就用更高級的面向對象編程思想來改進了。或者繼續使用單例化、工廠模式,這就上升到設計模式了,又繼續或者使用MVC,這就上升到開發模式了。這種懶惰可讓你後續維護變得很簡潔,可是這種懶惰,是須要學更多、更精湛的知識後盾,懂得越多,就越輕鬆,也就越會偷懶了。見過古代文采你們,寥寥幾筆,一首你看不懂卻不少人贊好的詩就完成了...他們作到了真偷懶的境界...學習
不斷領悟和總結知識,讓你的編程輕鬆起來。只有這種經過提高知識水平,讓你「懶惰」的開發項目,才能打造更精良的武器,開發更完美的項目!優化
也只有你的知識體系不斷的升級,你才能脫離浩瀚無際的編程苦海...由於根本就不是「誰編程的累,那纔是好事!」這種道理!設計
所以:學編程不是搬磚:要學會偷懶;對象