Amo Chen

用 gpg 指令加密帳號密碼,安心共享機敏資訊

除了口耳相傳或利用像 1Password 等密碼管理器(password manager)共享帳號、密碼之外,不知道大家是怎麼分享帳號、密碼或是極機密資訊的呢?

本文分享如何透過 gpg (GNU Privacy Guard) 產生公私鑰(public & private key)並對帳號、密碼等機密資訊進行加密,加密後的密文也僅有當初加密時指定的使用者才能解開,藉此增加分享機密資訊時資訊安全程度。

Posted on  Oct 11, 2022  in  資訊安全  by  Amo Chen  ‐ 5 min read

從零開始的 React 教學 Part 5 - PureComponent

從零開始的 React 教學 Part 3 - Class Components 一文介紹 Class Components, React 讓開發者們透過繼承 React.Component 類別並且實作少數方法就能夠實作 React 元件(component)。

但除了 React.Component , React 還提供另外 1 個 React.PureComponent 類別,開發者們也可以選擇繼承該類別實作 React 元件。

React components can be defined by subclassing React.Component or React.PureComponent.

不過這 2 個類別行為存在若干差異,如果沒有透徹了解就很容易造成 bug 或者效能上的問題。

Posted on  Oct 5, 2022  in  ReactJS 前端框架  by  Amo Chen  ‐ 4 min read

Python 單雙星號(* & **)解說

Python 內將函數的參數分為 keyword argument 以及 positional argument, 這 2 者的差異在官方文件中有清楚說明,同時這 2 種分別支援單星號 * 與雙星號 ** 的用法,是 Python 開發者一定要熟知的用法。

本文將詳細介紹說明。

Posted on  Sep 19, 2022  in  Python 程式設計 - 初階  by  Amo Chen  ‐ 4 min read

後端工程師面試考什麼 - ACID 篇

隨著資訊技術的發展,工程師的面試越來越五花八門,面試過程問什麼都不足為奇,不過仍有些問題能夠事先準備,這些問題不僅常問也很實用,除了能夠應付面試之外,也能增加個人實力。

本文記錄後端工程師面試時經常會問到的資料庫 ACID 原則,並以實際範例作為說明,以讓人能夠對 ACID 有足夠的理解,避免死背。

Posted on  Sep 17, 2022  in  後端面試準備  by  Amo Chen  ‐ 3 min read

Docker Redis 架設教學

Redis 幾乎是現今大型網路應用(Application)都會使用的 in-memory 資料庫(database),可應用在實作快取(cache), message broker 等功能,目前絕大多數都使用 Redis 作為快取後端(backend), 該服務也經常會與 memcached 相提並論,不過 Redis 支援的功能更加多元,例如 Redis 提供多種不同的 data types (set, lists, hashes 等)、支援 transaction 等用法,如果運用得當,不僅可以簡化程式邏輯,也能帶來系統效率提升。

本文記錄如何在本機(localhost)環境以 Docker 架設 Redis 以供開發使用。

Posted on  Sep 14, 2022  in  用 Docker 架設服務  by  Amo Chen  ‐ 2 min read

jq - 用 startswith & endswith 過濾 JSON 資料

jq 是方便且成熟的 JSON 資料操作工具,可以幫助我們快速對 JSON 型態的資料進行擷取(extract)、過濾(filter)、運算(computing)甚至是重組(transform)等操作。

如果是常常需要與 JSON 格式資料打交道的開發者,可以投資一些時間好好熟悉 jq, 不過由於該工具提供各式各樣的功能,所以不免使用前要稍微查閱文件一番。

本文透過實際範例學習如何操作 jq 提供的 startswithendswith 函式進行資料篩選與過濾。

Posted on  Sep 12, 2022  in  Unix-like 命令列教學  by  Amo Chen  ‐ 2 min read