Just My Life & My Work

Archive for the ‘教學’ Category

[C/C++] 回調函式 (Callback Function)

最近有個任務是寫回調函式 (Callback Function)。在寫 App 已經用過類似的機制,被包裝得相當容易使用。這次就來實現比較底層的作法。

日常生活中,回調函式就像一個「代理人」。當你需要某人幫忙做一件事情,但你自己又不能做的時候,你就可以請一個「代理人」來幫你。

例如,你想去一個地方,但你不知道路。你可以請一個朋友來幫你帶路。在這個例子中,你的朋友就是你的「代理人」。

程式設計中,回調函式也是一樣。當你需要某個函式在完成某些工作後通知你,但你自己又不能做的時候,你可以使用回調函式。

例如,你想下載一個文件。你可以使用一個函式來下載文件,並在下載完成後通知你。在這個例子中,下載文件的函式就是你的「代理人」。

以下是一些日常生活中的回調函式的例子:

  • 你在餐廳點餐,服務生會在餐點做好後通知你。
  • 你在網上購物,商家會在商品發貨後通知你。
  • 你在銀行存款,銀行會在存款成功後通知你。

在這些例子中,服務生、商家和銀行都扮演著「代理人」的角色。他們在完成某些工作後通知你。

(繼續閱讀…)

[圖解] git merge 和 git rebase 差異

Git 版本控制是軟體開發非常重要的工具,而 git 指令有非常多妙用,可根據自身需求來使用。其中 git merge 和 git rebase 差異會是我想要了解的地方。因為有同事和老闆(會寫程式)比較偏好 git rebase 來合併分支,讓我覺得有必要了解其原因。🤔

(繼續閱讀…)

[圖解] Git 指令

我個人喜好將複雜的技術簡單化,所以若能有圖解的方式來呈現,肯定會讓我學習的更輕鬆愉快。

每隔一段時間,我會想回顧我正在使用的技能,是否能有優化的空間。Git 指令是我平常開發時,一定會用到的版本控制工具。

(繼續閱讀…)

[Flutter] 本機 WebView 載入網頁檔案並與 App 互動

網頁已有的功能,想要完整移植到 App,可以怎麼做呢?刻一個原生的,會是個較佳的選項,因為使用者體驗可以很棒!然而就是得花時間去實現。🤪

我們想到可以在 App 載入網頁檔案,省去從頭刻畫面的時間,再來實現 WebView 與 App 互動的部分。

(繼續閱讀…)

[Flutter] 問號纇運算符

善用運算符號,可以減少寫些程式碼。在使用之前,必須了解它是怎麼運作,之後就能得心應手囉~

我目前只會 IF ELSE 來使用問號運算符,趁這時候多學點語法糖,讓我可少寫幾行程式碼,也可達到些成就感。🙃

Flutter 是以 Dart 程式語言來運行,線上可以直接測試程式碼:https://dartpad.dartlang.org/

(繼續閱讀…)

[圖解] 學習 Flutter 路線圖 (Learn Flutter Roadmap)

最近公司採用 Flutter 框架來開發 iOS Android App,所以有必要做全面性的學習。

看到這一張學習 Flutter 路線圖 (Flutter Roadmap),讓我十萬分興奮,因為我想要全部都學習!🤪

不過時間有限,想必得有策略式地逐步學習,進而掌握最關鍵且最實用的開發技術。

(繼續閱讀…)

[Flutter] RefreshIndicator class

使用 App 瀏覽資訊,很常會遇到可以往下捲的畫面,此時若一直往下拉到頂,上頭通常會出現重整動畫,經過一小段時間,畫面就會更新。😀

在 Flutter 中有已被定義好的 Widget,我們能夠輕易實現此友善的體驗,看起來效果挺棒的。

(繼續閱讀…)

[iOS] WKWebView 與 Native 互通資料

現在製作 App,很多時候需要嵌入 WebView,如此能快速開發與更新。既然 App 與 Web 互動頻繁,那麼就需要來了解如何讓 WKWebView 與 Native 互通資料

多年前我也有寫過 Objective C與Javascript的溝通,然而那時還能使用 UIWebView,現在已經被棄用,所以我們就直接使用 WKWebView 吧!

(繼續閱讀…)

[iOS] Jenkins 建置 CI/CD 流程

夥伴們正如火如荼趕上線,我也趕緊利用開發閒置的時間,進行 Jenkins 建置 CI/CD 流程

此流程對於大型團隊相當有助益,不過就算是一人團隊,若產品專案需要每隔一段時間釋出給他人測試,有持續部署機制就會節省許多時間!

早在 2018 年,我香港團隊就實施 Jenkins CI/CD 流程,我們 iOS 和 Android 團隊各有四個工程師,有此持續整合迭代流程,就可以很順暢地進行開發~😀

(繼續閱讀…)

[iOS] 服務器的證書無效問題

理論上憑證和網域必須一致,可是有時候想在不一致時來連線,遇到被阻擋問題該如何解決呢?

(繼續閱讀…)

標籤雲