Just My Life & My Work

Archive for the ‘技術’ Category

[圖解] 技術債 (Technical Debt)

最近陸續有新人來公司報到,我跟一位很年輕成功轉型工程師的同事(原本是教小學生課輔,網路看影片自學寫程式)聊週末去哪玩,他提到自己想要還技術債 (Technical Debt),我以為他要改前人留下來的專案,他說因為很多技術還沒有熟悉,所以想要更用功在鑽研技術上。

突然我想到小英總統2018年底變成辣台妹,因為人家說她「撿到槍」。原本的意思是貶義,拿到不屬於自己的東西(也就是贓物),就說那是撿來的。對於小英勇敢回應強勢的對岸,就變成褒義,表示拿到神級武器,可以從挨打的份逆轉成反擊!不過扯遠啦XD~

後來他表明不曉得技術債真實意義,我便簡單解釋,因為急著要完工,難免會以不周全的寫法完成程式功能,之後若要增修專案,就會面臨之前的「遺毒」。下圖可以明白技術債的陰影面積XD~

製圖的作者很神奇,使用我非常喜歡的動畫獵人拿酷戮的念能力可以來做解釋,胖娃隨著時間債會越滾越大,最後破產就會讓敵人無法使用念能力。若拿來比喻軟體工程,技術債若隨著時間累積,到一定的程度使人難以再做增修,此時專案就要宣告「打掉重練」!

要快又要好,實在不是很容易!除非專案只是一次性,若要長期維護的話,還是要有品質地實作呀~

想起先前分享的文章:設計師的心聲專案的三個要素

註:拿酷戮的念能力「天上不知唯我獨損」(推測是放出系的念獸)另外十分擅長於逃跑。「天上不知唯我獨損」是將念借給對方並以複利計算的高利貸,由胖娃娃「波克里林」計算,在借貸內攻防皆不會受到傷害,借貸額數超過對方念的最大值就會破產,「討債魔」出現強制對方進入絕的狀態30天。

參考:Scrum Estimation-Scrum Estimation Model獵人WiKi – 拿酷戮•拜因有效面對技術債專案中的隱形殺手:技術債

廣告

FOTA (Firmware Over-the-Air)

最近持續在跟韌體「戰鬥」,其中一個功能就是要透過App來讓藍芽硬體中的韌體更新,那麼要怎麼做呢?

FOTA (Firmware Over-the-Air).png

目前有兩種做法:

  1. 藍芽裝置連結電腦來更新韌體
  2. 透過網路將韌體傳輸至藍芽裝置

第一種做法對使用者來說很煩瑣,所以在此不討論!

第二種就對使用者非常友善,因為使用者只要從網路下載更新程式,再透過藍芽傳輸到硬體,就能完成更新韌體的目標!

(繼續閱讀…)

Swift 第4版本

Swift已經升級到第4版本,我還是沒認真在寫Swift 4,主要是因為它還不太穩定,這幾年必須多花時間去改寫語法到最新版本,於是在有限的開發時間下,我依然對相對穩定的Objective C情有獨鍾XD~

舉一個例子,當我要使用Open Source ChartsXcode會偵測是否相容,否則就無法編譯成功,如圖:

Swift 第4版本.png

好在只要選擇到Swift 4,就能成功編譯!也感謝超好用的圖表開源Charts作者,願意每次Swift升級就改寫語法,造福我們成千上萬的iOS開發者

怎麼在Objective C中使用Swift Open Source?可參考文章:在Objective C專案使用Swift第三方套件

HTTP與HTTPS

開發Mobile App有時也要跟Web互動溝通,此時就會接觸到HTTP與HTTPS,一直沒有深入瞭解其中的關係,只知道是有沒有加密的差別,但其實裡頭學問可多的呢!iOS 10即將到來,Apple又針對ATS (App Transport Security)有更嚴謹的規定,我想就趁這個時候來徹底了解一下吧!

HTTP+加密+認證+完整性保護=HTTPS.png

 

(繼續閱讀…)

[圖解] APP訊息推播流程

開發iOS App超過三年,但其實還有很多技術不大瞭解,然只要清楚自己的目標,精通某一技術領域還是能大放異彩獨樹一格!在此我還是要強調,在有限的時間裡去做你最喜歡且最擅長的工作,同時有市場可以養活自己,之後機會自己會來報到,多到你只好拒絕,因為你沒有太多時間XD~

話說回來,推播服務在外行人如使用者看似簡單,而真正去瞭解技術的人會覺得還真有「眉角」,想要實作現在每個App必備的推播功能,並不是很容易的事呢!不過現在已經有各大廠商提供推播服務,只要一篇教學文章,肯定也能讓不太懂技術的人實現訊息推播功能!

這一張圖解APP訊息推送流程,道出iOS與Android的差別,想必技術有很多種方式能夠實現,實作方式不同便有著不太一樣的優缺點,而開發者如我只要懂得怎麼去應用,必能在生活中增添趣味呢!

APP訊息推送流程

儘管臉書要收起Parse(2017/02關門大吉),還是有其它選擇啦~就像它所說的競爭者很多,我們就從這些競爭者選擇來實現吧!

[APP] 快樂行李

快樂行李APP是我自己製作的,因為下個案子即將使用到的技術,恰好我要放自己長假去泰國旅行,心想可以順便拿iBeacon來做測試,看它的能力效果如何。放在行李箱中的點子之前也有想過,查詢網路後發現我要搭的威航有這個服務,但應該是要額外收費。

APP 快樂行李 iBeacon00008

(繼續閱讀…)

UTF-8 (8-bit Unicode Transformation Format)

每次開發iOS App,傳送資料到server時很常要編碼,會使用到UTF-8 (8-bit Unicode Transformation Format),可是我一直不曉得它的全名XD~這玩意兒好像只要會用就行!?

直到看見這張圖表,才知道UTF-8後來居上!看來它真的有過人之處,尤其在這行動裝置盛行年代~

UTF-8.png (繼續閱讀…)

標籤雲

%d 位部落客按了讚: