Blog

Sharing thoughts on web development, technology, and the journey of continuous learning.

·
React Native

React-Native之旅Day4 Text Input

今天就來看看 Reac-Native 如何利用核心元件來處理文字輸入 TextInput 帶有一個 onChangeText 的 prop 這個 prop 接受一個 Funciton 可在文字變化時被呼叫 以及在文字送出時呼叫的 onSubmitEditing

Read more
·
React Native

React-Native之旅Day3-React Fundamentals

接下來繼續跟著文件來認識 React Fundamentals React-Native 是基於 React 發展的技術 因此深入瞭解 React 如何運作也是學習 React-Native 的好方法

Read more
·
React Native

從文件開始React-Native之旅Day1

因為工作需要,開始要跟 React-Native 打交道拉 那要學習一項技術,官方文件總是要面對的 但總覺得年紀大了過目就忘 自己有時做筆記還是太精簡了 那不如就寫成 Blog 順便拯救我那可悲的更新頻率🤪

Read more
·
terminal

修改Mac預設截圖儲存位置

近期在用 vim 撰寫 markdown 文檔時感受到其他筆記軟體最大的落差 大概就是無法簡單截圖畫面後拖進文檔裡了吧 但轉念一想,既然都要用 vim 了 還要用滑鼠去拖圖片好像也蠻浪費時間的 那我能不能截圖完就知道圖檔位置直接用 markdown 語法寫入文檔中呢?

Read more
·
Vim

Swift 與 Vim

在 Apple 官方推出 sourcekit-lsp 之後 我就一直在尋找一個使用 Vim 來完成一些日常 Swift 使用的流程 雖然說在使用 UIKit 的自動補完上目前還是悲劇 但拿來取代個 Playground 應該是綽綽有餘 目前配置上是使用 nvim + nvim-lspconfig 配合 sourcekit-lsp 加上 lspsaga.nvim 的漂浮視窗來做輸出驗證

Read more
·
上架圖

關於App Store上架圖,你可能想知道的那些事

在公司,要上架的時候通常都有 Design Team 提供設計好的上架圖。 但當你作為一名獨立開發者,這些事就都得自己處理拉。 抑或是你家設計初來乍到對 App Store 上架圖的規則不太了解,你得跟他解釋一下需求。 這邊就來統整一下過去我碰過的問題,以及一些好用的工具。

Read more
·
BASHnvimlspsaga

nvim + shell script 漂浮視窗快速筆記

雖然 mac 本身的 notes 就相當不錯 甚至在更新到 Monterey 之後也新增了隨處可用 的功能 第三方也有很多好用的軟體 Notion, hackmd 等等 但身為一名懶惰到不想把手移動到觸控板上的人來說 每次有些想法想快速紀錄一點想法 按下 Option + Space 叫出 Alfred 快速搜尋叫出 notes 或其他軟體之後的操作總覺得就是差了一點點 因此就決定自己來調整看看

Read more
·
tmux

Tmux入坑心得

自從拿到新的 M1 Mac,免不了是要設定一下環境啦 在過去的機器上我的終端是使用 iterm2 換機器順便摸摸新東西 主要是覺得切換作業區跟分類的方式是我比較喜歡的 這篇主要就是紀錄一下我個人常用的功能 安裝和介紹 google 非常多,這裡就不多重複了

Read more
·
OTABASHDropbox

利用 Bash script 簡化 iOS ipa OTA 發佈流程 (使用 Dropbox)

去年 Fabric 確定合併回 Firebase 後就決定要另外找地方放出測試版給 QA 在內網架了一個簡單的網站 讓 QA 可以用手機打開網頁直接下載測試版 app 但因為 OTA 機制需要 Https 存放 manifest.plist 跟 ipa 的地方就選擇了 Dropbox 選擇的原因讓我後面再詳述 然後因為手動上傳檔案跟 manifest 的修改過程太繁雜了,實在不是給人用的 簡單敘述就是 包好 ipa 上傳 ipa 到 Dropbox 分享 ipa 的鏈結 將分享鏈結填入 manifest.plist 將 manifest.plist 上傳至 Dropbox 分享 manifest.plist 的鏈結 將 manifest.plist 的鏈結的內容從 dropbox.com 修改成下載用鏈結 dl.dropboxusercontent.com 依照 itms-service 協議的格式將修改好的 manifest.plist 的下載鏈結放入網站 光寫完這一串就累了 @@ 所以就決定寫點 Script 幫忙處理上面那一大串雜事吧 因為太多了這篇就只處理從 ipa 上傳到 dropbox 到可以下載的部分

Read more
·
IPAD

ipad pro 配置之路 - 序-硬體設備

今年中一個手滑手邊就多了一台 11 吋 ipad pro 都課下去了勢必要讓這臺 ipad 能一定程度上成為我生產力工具的一部分 看看這過去一年死寂一片的部落格 這次購買純粹只是為了技術研究以及養成寫作習慣為目才買的拉 就跟小時候買電腦絕對不是為了打電動,是想好好讀書查資料的邏輯 87 趴像呢

Read more
·
SwiftSPMPush Notification+1 more

用 Swift 做個推播發送器並在 Homebrew 上 Release

上個月的 iPlayground 真的收穫良多 今天就來記錄一下如何將寫好的 swift 程式變成可執行檔並上傳至 homebrew 供人下載 隔了一個月!!?? 謎之音:沒關係拉,Blog 都能從一月拖到十一月一篇都生不出來了 GitHub 位置

Read more
·
Jenkins

iOS Jenkins之旅Part2

到底富奸了多久呢,這系列… 剛好最近想對現在正在用的Jenkins功能部署到其他機器 順便新增一些之前沒用到的功能,趕緊回來填坑@@

Read more
·
vim

無聊實驗室:vim + Codi

接下來將來繼續介紹目前我在使用vim的插件 第一篇中我們用xcrun跟guard幫我們即時編譯出.swift的執行結果 而本篇的要介紹的插件Codi則可以幫我們運行多種不同語言的執行結果

Read more
·
vim

無聊實驗室:vim基本操作

這篇主要來記錄一下自己目前設定好的vim環境 以及一些基礎控制的快捷鍵,以免忘記太多次狗都快被我喂成豬了

Read more
·
Fabric

測試好幫手-Fabric

在開發軟體的過程中,測試絕對是相當重要的一環 iOS開發者絕對聽過的TestFlight就是apple提供不錯的工具 當然也有不少其他工具可以滿足各式各樣測試的需求 本篇就來介紹最近開始使用並覺得相當不錯的Fabric

Read more
·
Jenkins

iOS Jenkins之旅Part1

雖然老早就想開始寫測試,學習持續整合(Continuous Integration)的東西 但無奈人懶沒藥醫 拖了超久才總算踏出這第一步 雖然做這個好像也只是為了讓自己能少更多事XDD

Read more
·
Swift

紀錄APP功能回顧

因為中間偷懶沒寫文章,有不少是加上去但前面沒提到的 所以稍微來回顧一下目前這個棒球紀錄APP時做了哪些功能

Read more
·
Swift

CoreData、UserDefault

作為一款記錄用的APP,比賽期間使用者不太可能只開著這款APP 更別提意外跳出或是記憶體不足造成閃退的狀況了 這時候就應該要把比賽中所記錄到的資訊儲存起來 在APP打開的情況下去判斷之前是否有未完成的比賽 有的話就拿回該有的資訊讓使用者繼續記錄 至於要用什麼方式來儲存使用者紀錄的資料呢?

Read more
·
Swift

圖片cache機制

今天來幫之前寫的ImageView extension加上cache機制 不然每次滑動畫面圖片就不斷閃動 看起來超不舒服而且一直從Firebase下載圖片超浪費效能

Read more
·
BackEnd

後台使用者註冊&登錄系統Demo

這段時間除了持續在swift的練習之外 也終於開始下手往後台的功能開始摸索 雖然有看了一些vapor的資料跟練習了一下 但想想剛開始還是用已經比較多人用過的方式來寫 先把基礎打好之後要換應該也不難吧XD 問題是所以我說那個基礎勒QQ

Read more
·
Swift

Swift隨手紀錄Day30-UIPickerView

今天有一整天可以用,花了一個早上Debug… 下午一咪眼就好幾小時噴了… 不過好歹也是把之前留著的自製popView裡面裝著UIPickerView的功能往前推進了一點 也學到了不少新東西 然後TabBar也先把基本的部分做好,順便重也寫了不少部分 但這片還是先看之前困擾我有點久的讓畫面跳出UIPickerView

Read more
·
Swift

Swift隨手紀錄Day26

列些準備看的清單好了 有關 app icon size prototyping 這兩天一不小心處理了蠻多新功能的 需要消化整理一下再寫上來 順便再次整理一下需求以確定之後整個APP功能的開發順序 加上有開始上課,要每日更新開發進度可能會有難度啊QQ(這肝黑黑der…) 但是避免偷懶,每天還是要寫點東西. 然後…

Read more
·
Swift

Swift隨手紀錄Day24-Firebase-Authentication-Login & Logout

防止偷懶Day24 今天來完成整個註冊、登入、登出程序 首先先來釐清需求 使用者打開APP時應該會進入HomeController 這時我們應該先判斷這使用者是否有帳號登入過 如果有就在navigationItem上更新這名使用者的名稱 如果沒有就把畫面送到LoginController

Read more

Swift隨手紀錄Day22-LoginController UI修改

防止偷懶Day22 今天時間不太夠,就來修正一下UI好了 決定在LoginController實作一下用SegmentedControl的選擇來動態調整UI的功能 用來區分使用者是登入還是註冊 如果是註冊就多一個UITextField來讓使用者輸入名稱 之後讓主畫面可以顯示目前登入的使用者名稱 如果是登入就只需要email 先把要移動的部分處理一下

Read more
·
Swift

Swift隨手紀錄Day18-新增成員頁面-UIView-SegmentedControl

防止偷懶Day18 講了好久的新增成員終於要來做了@@ 預想中希望有一個UIImageView來選擇頭像 當然也要一個TextField來輸入名字,以及註冊用的button 然後有一個選擇守備位置的功能 想了一想,用之前玩過的SegmentedControl來試試效果好了 GO

Read more
·
Swift

Swift隨手紀錄Day17-新增成員頁面-UIView + UITableView

接續前兩天做的隊伍成員畫面SetNewTeamController 當時在實作時直接將整個畫面都用TableView製作 但是幾經思考,我覺得需要多一個按鈕在這個頁面上 使用者應該是經由這個按鈕來確認進入紀錄畫面 而非使用navigationItem的rightItem

Read more
·
Swift

Swift隨手紀錄Day14-新首頁Part3-TableView

防止偷懶Day14 昨天接上了首頁 接下來我希望首頁能用TableView顯示出已經登陸過的球隊 然後可以點擊球隊來進入之前寫的紀錄頁面 當然這樣也需要一個按鈕來新增球隊 以及一個讓球隊可以新增隊員資料的頁面

Read more
·
Swift

Swift隨手紀錄Day12-新首頁

紀錄的選項告一段落之後 接下來當然要讓使用者可以輸入(或從其他地方下載)被紀錄人員的相關資訊 因此應該需要一個讓使用者新增或修改球隊人員的頁面 甚至加上可以儲存成一支(或以上)隊伍的人員資料 為此就需要一個首頁 把首頁作為起點可以進行人員(球隊)的新增 跟接上之前所做好的紀錄畫面的地方

Read more
·
Swift

Swift隨手紀錄Day9-PickerView

防止偷懶日記Day9 接下來想要實做的就是把打席結果弄成選項給使用者做決定 目前想到的是使用UIPickerView, 或者是用ActionSheet 想了想用ActionSheet好像需要用很多層 所以今天先來試試UIPickerView

Read more
·
Swift

Swift隨手紀錄Day8-CollectionView Reload

防止偷懶日記Day8 繼續處理昨天沒辦法在新增資料之後更新collectionView的問題 在試了一些不同的方法之後 看了console的內容才終於發現了問題所在 發現當下只差沒撞豆腐自殺( ̄ c ̄)y▂ξ,真的是來亂的XD 因為其實我一直有在更新collectionView

Read more
·
Swift

Swift 語法日記 -  記憶體管理

Swift記憶體管理Swift當中,引用類型(class)儲存在(棧)stack上,而值類型(enum, struct)儲存在(堆)裡面,而這兩個的定義為 stack系統自動分配之記憶體,空間較小但運行較快,遵循LIFO原則,透過移動stack尾端的指針去實現pop與push操作 在執行一個方法需要在stack上為此方法開闢新的記憶體空間,stack的尾針指向stack底端移動 當執行完畢之後再將指針移回stack頂端釋放掉這些空間.

Read more