提升自己的程式設計能力 — 穩定性/安全性/整合性三個願望一次滿足

Photo by Victor Lozano on Unsplash

初學者在掌握了基本的程式設計能力之後,往往都希望進一步提升自己的能力。我們主要專注在三大區塊:穩定性,安全性,與整合性。

1. 穩定性

穩定性代表的是程式系統的架構,我們用大樓來比喻成系統:一個大樓遇到地震是否會崩塌取決於地基是否打得穩以及防震是否有做好。同理,一個程式系統是否會輕易崩潰也是取決於基礎的架構是否有做好。

當你開始接觸專案開發時,應該很常遇到同一組程式碼被修改了好幾次,舊的版本都被覆蓋了,我們永遠只看到最新版的程式碼;偶爾我們會想要找回舊的版本卻已經石沉大海,這是因為沒有做好版本控制所造成的。 Github將會是能夠幫助Programmer管理好Code的好工具。第一天的課程我們將讓大家了解如何使用Github,介紹一些Git的基本指令以及如何做好版本控制。

“寫系統一定要用Framework“ 相信很多初學者一定有聽過老前輩這樣說。沒錯,使用Framework就像幫我們的系統打了很穩的地基一樣,可以增強系統的穩定性,使用Framework好處多多,可以參考這篇文章,這裡就不多作贅述。在程式設計領域裡,大部分的Framework都是以MVC的概念來開發的,因此非常著重在物件導向的程式設計。為了讓大家可以了解MVC的精神,第一天我們會先介紹OOP(Object Oriented Programming,簡稱OOP)的基礎概念,進入第二天的設計模式MVC後,再帶入Framework的使用。在這門課程裡,我們使用的是又輕便又強大的CodeIgniter PHP Framework,不管是開發小型中型大型系統都可以迎刃而解。

2. 安全性

安全性代表的是程式系統的防守能力,在現今資訊如此重要的年代,如果你的系統能夠輕易就被入侵代表你的資料很容易就落入他人手裡,面對的損失是很慘重的,因此做好基本防守能夠避免掉一些不必要的損失。

網路安全是Programmer必須重視的項目之一,當我們辛辛苦苦寫了一些Authentication系統,以為萬無一失時卻萬萬沒想到自己的程式充滿了漏洞,讓駭客有機可乘時,那種破壞力對programmer來說其實不只是物質上的損失,也可能造成精神上的傷害。當然我們都了解沒有任何系統是無敵的,但為了讓你的客戶跟你自己放心,我們就盡可能將安全防護做好吧。

第三天的課程將介紹幾種常見的網路安全問題,如:SQL INJECTION,XSS,BRUTE FORCE等,了解駭客是如何攻擊你的網站以及如何做好應對措施。

3. 整合性

整合性代表的是你的系統跟其他人的系統是否能夠整合起來,輪子不必自己發明,直接用別人已經寫好的功能,或是自己開發接口讓其他系統能夠合法取得你的資訊,完成多功能的整合。

最常見的整合例子就是使用Facebook Login與Google Login;透過Facebook 跟Google提供的API,我們可以在使用者授權下得到他們在社群平台上的個人資料,節省使用者填寫表格的時間,讓註冊流程更快速。

第四天的課程我們除了讓學生實作Facebook與Google Login外,也會讓學生了解如何自己寫API,讓其他系統可以跟自己的系統串接。 JSON結構是目前API串接最受歡迎的格式,也會在本次課堂重點講解如何建構與解讀。

4. 其他

除了穩定性,安全性與整合性外,我們也會花一些時間在效能提升方面。達成同一個目的有不同的演算法,到底哪一種演算法的效能比較好以及如何評估,也會在第三天的Performance Tuning,與Useful Algorithm in Live Projects裡提到。下次如果寫出來的程式慢吞吞,總該知道要從哪裡去改善了。

第五天的課程是很多學生都很感興趣的題目-如何用Linux架設Web Server,Database Server。安裝好的Web Server該如何透過 Lets Encrypt產生SSL進行HTTPS的連線。這個世代的Web application已經離不開https的連線方式了,因為在安全的連線環境下,客戶才能用的放心,避免資料外洩。自己架Server的好處是可以不必用Shared Hosting,讓系統獨立,可以深入底層安裝更多的工具來提升系統的效能。

報名JBPC的進階班課程能夠提升你的程式設計能力
如果你覺得以上提到的幾項技能都對你很重要,又想要獲得提升,歡迎報名我們課程!我們致力於提升學生的Programming能力,入門班讓學生從0到1,進階班讓學生從1到10,現在就報名我們的進階班,提升自己的程式設計能力吧。

報名網址:https://jb-programming-class.i-tea.com.my/cn/web-programming-class-advanced

▍艾堤數位

文章來源:https://i-tea.com.my/en/blog/improve-your-programming-skill

Vito Hsu
Vito Hsu

人生的自我修行,是一條透過覺察成為更好的自己的旅程。當我們學會照顧好自己的內在,才有餘裕追求更深層的靈性探索,人際關係自然會變得順暢,家庭關係會變得更好。學會在生活中實踐覺察與成長,透過內在修煉,在生活中不斷提升自己,找到內在和諧的方式。
想要教練對話:可以FB私訊我

電子報更新

請在下方輸入你的電子郵件地址並訂閱我們的電子報

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *