為什麼寫系統要使用框架 Framework?

Photo by Dayne Topkin

當你學會了基礎的程式設計之後,你會發現,一個系統若經過長時間的擴充會變得越來越難維護,甚至到最後有可能自己都忘了當初是怎麼寫的。如果把寫程式比喻成是蓋一棟大樓,在蓋大樓之前如果沒有想清楚未來的擴充性,勢必會越蓋越歪,最後就變成歪樓了(誤)~ 那究竟有沒有一套現成的做法可以讓我們不必重新思考蓋大樓的整套方法呢?答案就是使用框架(Framework)。使用Framework就等於是用一套既定的骨架去發展你的系統,好處有很多,我們整理如下。

當你學會了基礎的程式設計之後,你會發現,一個系統若經過長時間的擴充會變得越來越難維護,甚至到最後有可能自己都忘了當初是怎麼寫的。如果把寫程式比喻成是蓋一棟大樓,在蓋大樓之前如果沒有想清楚未來的擴充性,勢必會越蓋越歪,最後就變成歪樓了(誤)~

那究竟有沒有一套現成的做法可以讓我們不必重新思考蓋大樓的整套方法呢?答案就是使用框架(Framework)。使用Framework就等於是用一套既定的骨架去發展你的系統,好處有很多,我們整理如下:

  1. 高效率

框架本身已經內涵了各種管道,廠房,有水電,有安全設備。有了框架,我們可以專注在系統的核心邏輯,讓所有的模組能夠整齊的整合在一起。

2. 高安全性

市場上受歡迎的Framework已經經過了多年的測試與考驗,保證了各種情況的穩定性與安全性。如果自己架設框架往往很容易東漏西漏,造成未來有太多的問題要面對。

3. 高穩定性

框架能夠把負責不同工作的模組切開,又能夠再適時的時候整合在一起使用。不容易造成“牽一發動全身”的情況。想像一棟大樓的地基如果不穩,往往抽離一兩根骨架就會全盤崩塌,這種情況在系統開發是很常見的。

4. 高協同性

一家公司如果有多位工程師同時開發相同的系統。在框架的前提下,大家分工合作知道怎麼把不同的模組整合在一起,團隊間的協調性簡單許多。而且主流的Framework在招募人才方面比較容易,上班之後馬上上手不需要再花太多時間進行培訓。

以PHP為例,目前市場上已經有好幾家Framework可以使用,各有所長:

1. CodeIgniter — Codeigniter

2. Laravel — Laravel

3. Symphony — Symfony framework

4. CakePHP — CakePHP

5. Yii — Yii framework

學習使用框架開發系統
在JBPC的進階班中,我們將教導大家如何使用Codeigniter作為系統框架來開發PHP的應用程式。使用Codeigniter開發的系統將會符合如上所說的四大特性:高效率,高安全性,高穩定性以及高協同性。歡迎大家來報名學習,往更強的系統開發之路前進吧!報名網址:https://jb-programming-class.i-tea.com.my/cn/web-programming-class-advanced

文章來源:https://i-tea.com.my/en/blog/why-use-framework-to-develop-web-applications

▍艾堤數位

本文作者
田士鋒 Jason Tian
資訊工程碩士
14歲開始接觸網頁設計,15歲參加高中網頁設計比賽佳作,18歲參加flash動畫設計個人比賽冠軍,校內網頁設計比賽冠軍。擅長跨領域結合,高中時以為自己喜歡生物科技而在大學選擇生物科技係為第一志願,直到大三才認清自己對程式語言的熱愛而決定轉換領域,因此研究所便結合了資訊與生物領域的知識,發表了幾篇論文。在大學求學過程中也與志同道合的朋友成立公司專接網路應用程式的開發專案,累積了不少開發經驗。不管是購物網站,企業內部管理系統ERP,報名系統,拍賣系統,庫存管理系統,手機App,各種電子商務系統都曾經參與開發。也曾經在fb當紅時寫了一個社群行銷平台「抽獎王」,並在三天內利用病毒行銷的概念吸引了四萬個會員。 2013年因緣際會下參加Amazon AWS的舉辦的CloudKata程式設計比賽,在一小時內拿到最高分數擊敗所有對手奪得冠軍。目前是台灣920 App(飲料訂購平台)的共同創辦人,已累積300家飲料店。也是馬來西亞Consignment Project(寄賣模式)的共同創辦人,已累積1300個店家。
簡歷:
2003 寬中網頁設計與flash動畫比賽冠軍
2008 艾堤數位科技股份有限公司創辦人
2009 台大生化科技系畢
2010 在異奇網股份有限公司擔任技術長
2011 台大資訊工程研究所畢
2013 AWS cloudkata 台灣區程式設計比賽冠軍
2014 Startup weekend #10 第三名
2015 Consignment, 920 App 共同創辦人
0

No Comments

No comments yet

Leave a Reply

Your email address will not be published. Required fields are marked *