商業,創業,美食,葡萄酒,閱讀,網路科技。
這是我的 FB粉專 以及 IG,我比較常使用 Threads,歡迎大家追蹤互動~
有位朋友介紹我去聽 PHPConf,我看了議程之後也覺得不錯,於是我票一開始賣就馬上買了第一天 (10/29) 的票。第一天上午的講者是 Josh Lockhart (Modern PHP 的作者) 和 Sebastian Bergmann (PHPUnit 的作者)。
Josh 的題目是 More Than Code, 他剛開始就說今天不講 PHP, 而是用更大的 picture 來說明何謂 「Senior 」developer. 下面是他的大綱 slide (因為每一點是 popup 出來的,沒拍到第五點,下面第五點是我 key 上去的)
就如 larry 之前提到的,不管你程式碼寫得多麼漂亮,design pattern 用得多好,軟體工程做得多深,不想清楚這些「out of box」的東西,你的狀態就不會改變,你的官位/收入就不會改變。換句話說,我們是為了「解決問題」或「創造價值」而寫程式,而不是為了軟體工程而寫程式。
第二位講者是 Sebastian Bergmann. 他主要是講 PHPUnit 和 PHP 近幾年版本變革。他有提到 PHP 5.6 active support 即將終止
https://secure.php.net/supported-versions.php
PHP 5.6 是 PHP5 的最後一個版本,也就是說,今年底之後 PHP5 就不會有 active support 了,這意味著各個公司、開發者,是該想想什麼時候要 migrate 到 PHP7 了。
另外 PHPUnit 我會找時間研究一下,主要是希望藉由寫測試的方式,看能否 figure out 一些比較先進的 cowork 方式。
下午的議程我聽了Miles的「使用 Slim 為 Legacy Code 重構」,閃亮亮的「Refactoring to Collections – 從陣列重構談物件導向程式設計」,大澤木小鐵的「用 Laravel + Vue.js 打造即時資訊看板」。本來是想報 workshop 的,Accupass 也有寄信通知 workshop 需要另外報名,但實在太忙了,想到要處理時已經沒有名額了。後來想想這樣也好,可以輕鬆一點。
Miles的「使用 Slim 為 Legacy Code 重構」
他講了一個自己歸納出的一個架構。在 browser 和 application 中間新增一個模塊,他稱之為 Proxy. 這個 Proxy 通常是小 framework, 例如 Slim。這個 Proxy 扮演 router 的角色,可以 config 成將 request 導向原本 application, 或是重構中的 application。同樣的,test server 發的 request 也可以導向原本 application, 或是重構中的 application。當重構中的 application 的某些模塊測試過了,可以 commit/push, 其他正在開發新 feature 的工程師可以立即 merge, 或是立即 rebase/merge.
他提到類似用 C++ define guard 的方式去切 Proxy 導向哪。不知道有 C++ 經驗的朋友有無聽/用過 define guard?用 define guard 去開關某些 code,例如正在開發的 code, 某個單一功能的 code。講到這個 larry 倒是滿懷念的,而且有一些 idea 浮出來,之後應該會應用到 PHP 上面。
閃亮亮的「Refactoring to Collections – 從陣列重構談物件導向程式設計」
利用 PHP 的 array_map, array_filter… 等,或是 Laravel 的 map, filter … 等去取代 for loop, 或是 nested for loop 處理 data array 的情況。
大澤木小鐵的「用 Laravel + Vue.js 打造即時資訊看板」
利用 laravel-echo-server (與 application server 並行) 搭配前端 Socket.io 達成 html5 web socket,主動推播。
結論
收穫滿滿吧。主要聽到新的觀念,或是已知的東西/問題看大神是用哪個角度去切入。PHPConf 一天的票價 1000 元,larry 是覺得太划算了。一整天,吹著冷氣,聽著大神們分享經驗和實際的乾貨,1000 塊實在太便宜了。
商業,創業,美食,葡萄酒,閱讀,網路科技。