文章

用試算表(Google sheets、Excel)製作個人記帳本

市面上有許多記帳軟體,但總會有無法滿需求的地方,因此我開始習慣用試算表(google sheets)來紀錄各銀行的收支跟餘額。 一方面是可以按照自己需求來設計功能或介面,另一個優點是 google sheets 在手機或電腦上修改或觀看都很方便,用來隨時隨地更新資料很適合。

以下我用自己的記帳本來示範,大家可以依照喜好來取捨,產出自己的記帳試算表。

Posted on  Jun 30, 2020  in  Google 試算表  by  Zizi Chou  ‐ 3 min read

徹底移除 Android Studio

工欲善其事,必先利其器。 常常一個強迫症,就會想把很多用不到的東西給砍了,好挪出更多空間給需要的東西。

最近 android studio 不斷出問題,除了基本會卡住,更慘的是執行出來的程式時常鬼打牆。 我嘗試了 clean project 、rebuild project、restart IDE 但始終無解,沒耐心的我決定重裝。

第一步,就是要把舊有 as 斬草除根。

Posted on  Jun 28, 2020  in  Android  by  Zizi Chou  ‐ 1 min read

Google Play 安裝出現 -505 錯誤

當我將專案從 Eclipse 遷移至 Android Studio 並將 application 上線後,發現有小部分的使用者無法安裝。 使用者表示在 Google Play 安裝時會跳出錯誤訊息: 代碼 -505

遇到問題可以先思考兩件事:

  1. 該版更新有更改了什麼?其中又有哪部分可能影響到安裝?
  2. 這些使用者有什麼共通點

才發現是 AndroidManifests.xml 中的 applicationId 出了差錯,導致安裝失敗。 接下來將使用「寄包裹」來進行舉例說明:

Posted on  Jun 28, 2020  in  Android  by  Zizi Chou  ‐ 3 min read

Android ImageView 圖片縮放(ScaleType 屬性)

在 Android 中想要呈現一張圖片可以使用 ImageView,但我們無法預設每張圖片長寬都一樣。 除了預先調整圖片長寬外,ImageView 也提供 ScaleType 屬性,讓 application 自動調整。

以下我將列出關於 ScaleType 的各屬性結果,方便各位找出適合需求的參數來使用。

Posted on  Jun 28, 2020  in  Android  by  Zizi Chou  ‐ 2 min read

Docker 環境變數使用筆記

環境變數(Environment variable)是開發時常見用來控制程式行為的方法之一。

近年隨著 Docker 被普遍運用在開發環境之中,如何方便地在 Docker 中使用環境變數就變成必學的課題之一。

本篇介紹幾種 Docker 與 Docker compose 中設定環境變數的方法。

Posted on  Jun 19, 2020  in  Docker  by  Amo Chen  ‐ 2 min read

從零開始的 React 教學 Part 3 - Class Components

從零開始的 React 教學 Part 2 中,我們學會利用 Webpack 編譯含有 JSX 的 React 專案,讓我們能夠利用 JSX 語法提高開發 React 的效率。

本篇會將 從零開始的 React 教學 Part 1 中的範例改成 JSX 語法呈現,並且模組化部分組件(components) ,從而達到較高的可維護性。

最後再加上新的外掛 babel/plugin-proposal-class-properties ,讓我們能夠使用 Arrow function 更加簡化 React 程式碼。

Last updated on  Oct 2, 2022  in  ReactJS 前端框架  by  Amo Chen  ‐ 3 min read

使用 Python typing 模組對你的同事好一點

由於 Python 動態型別(執行階段可以任意改變變數的型別)的特性,所以很多時候開發者們都會透過變數的命名讓他人知道該變數的型別,例如:

dicts = [{"key": "value"}, {"key": "values"}]

複數型的 dicts 命名讓其他人在閱讀時能夠大致猜到它可能是個字典(dict)的列表(list)。

但是現代專案不可能經常是如此簡單的結構,有時光從命名仍難以了解是什麼型別的變數,例如:

def get_value(json):
     return parse(json)

當我們看到上述函式中的 json 時,就會疑惑它是什麼? str? dict? 而回傳的值到底長怎樣,有什麼 key 可以使用?也由於這種不確定性,所以在除錯甚至協同開發時都需要實際執行才能夠知道該變數到底是什麼型態,在複雜的大型專案中甚至會成為一種痛苦。

p.s. Javascript 也有相同的痛點,所以才有 TypeScript 問世

這種情況,我們除了用心命名之外,還可以搭配使用 typing 模組來改善!

Last updated on  Sep 24, 2023  in  Python 程式設計 - 中階  by  Amo Chen  ‐ 6 min read