iOS 模組化架構 (Modular Architecture in iOS) - 上
當面對需求相同或相似的大量 App,例如公司的 40 隻 App 都需要登入功能,此時使用模組化開發是最適合的,可以大量減少工時,這裡記錄當初在研究模組化的發展歷程,可以了解以前發生的問題。
這裡直接排除 複製程式碼的共用法,沒有用到實質上相同一份程式碼,就不太算是模組化。
[第一期]:Framework Project利用原生的方式建立 Framework,並且對它進行版控,他人可以使用或新增功能建立方式
建立一個 Framekwork 專案 ( 例如: TestFrameworkKit )
內部建立任意程式碼,並確認可以編譯成功即可,
(記得使用 Git 進行版控,以確保每個成員使用的版本)
使用方式
將 xcodeproj 拉進 App 專案
設定專案的 Framework, Libraries, and Embedded Content,加入剛剛的 Framekwork
最後 import Framekwork 就可以使用
開發方式
相關應用
IBDesignable 和 IBInspectable 的可視化 View
🤔【 問題 】模組 ...
Hexo-GA+SEO+Liker
分析網站+搜尋優化+提供讚賞的功能
設定GoogleAnalytics目的:可用於分析網站數據,例如網站造訪人數、哪篇文章最多人看等等
雖然可以單獨使用 Google Analytics,但為了以後可能用到更多功能,所以可以直接去 Firebase 建立專案使用,Firebase 是一個方便的後端功能集合體,讓沒有後端資源的工程師也可以開發各種後端功能,包含 DB、Analytic、Config 等等功能。
建立 Firebase 專案
在該專案建立 Web 應用程式
在 Google Analytics 功能分頁,點擊紅框處跳轉詳細頁面
在 Google Analytics 詳細頁面,找到評估 ID
編輯 themes/landscape/_config.yml
1google_analytics: `評估 ID`
重新發佈後等個幾天就有數據啦!
設定SEO目的:讓自己的網站更容易被搜尋到
有很多方式可以優化 SEO ( 搜尋引擎最佳化 ),這裡先做一個最簡單的,也就是 Google Search Console。
打開 Google Search ...
淺談Scrum
正好歷經公司手機部門的擴增,與核心團隊一同製作很多教學和各種制度,方便新人可以快速上手,當然其中也有包含如何開發產品,當初公司主推 Scrum,不能只是會寫程式而已,因此這裡記錄了一下帶領新人的跑專案的心得。
封面兩個圈圈是 scrum.org組織的標誌
在理解 Scrum 之前,先理解什麼是 Agile(敏捷軟體開發)?
Agile 述說的是一種精神或是哲學
重點是”快速疊代”、”快速回饋”,詳細可以看 敏捷軟體開發
沒有回饋就沒有敏捷 !!!
Waterfall vs Agile
聽過一種說法:
Waterfall = 按照完整計畫進行 => 給客戶合約上的東西
Agile = 小增量、反覆運算、回饋 => 給客戶有價值的東西
什麼是 Scrum ?其實 Scrum 是 Agile(敏捷軟體開發) 的其中之一種明確地實行方法,由於 Agile 是一種精神,它沒有一定的執行方式,所以很多人幫它想出了很多明確地實行方式,例如極限編程等等,而 Scrum 也是。
如何執行 Scrum ?Scrum 有三個主要元素
角色(roles)
Product Owner( ...
淺談計算機圖學
計算機圖學極為廣大,此內容可能還不到 1%,下面內容是由大學時期圖學課程零星印象整理的,可能有錯誤的敘述,歡迎指出(免責聲明QQQ 😂)
什麼是計算機圖學?計算機圖學(Computer Graphics)又稱電腦圖學,是指用電腦所創造的圖形。更具體的說,就是在電腦上用專門的軟體和硬體用來表現和控制圖像資料。計算機圖學是為了讓使用者能更容易與電腦互動,對多種媒體有深遠的影響,並徹底改變了動畫、電影和遊戲行業。
計算機圖學的主題包括用戶界面設計、精靈圖形、渲染、光線追踪、幾何處理、計算機動畫、矢量圖、3D建模、著色器、GPU設計、隱式曲面、可視化、科學計算、圖像處理、計算攝影、科學可視化、計算幾何和計算機視覺…還有更多。
計算機圖學、影像處理、電腦視覺、圖形辨識分不清?有時候會遇到分不清楚計算機圖學、影像處理、電腦視覺、圖形辨識可以從 input 和 output 的角度來看差異參考網站 逍遙文工作室-什麼是計算機圖學?
哪裡可以知道最新的圖學趨勢呢?美國計算機協會(ACM)專為圖學領域組了一個小組叫做 SIGGRAPH,每年都會舉辦會議,例如今年的虛擬會議連結 ( http ...
Reflective Shadow Maps
本篇是關於”Reflective Shadow Maps”這篇論文。
作者為 Carsten Dachsbacher, Marc Stamminger
發表於 2005 ACM SIGGRAPH Symposium
領域屬於 Interactive 3D Graphics and Games
論文連結
目前論文網站發布處為KIT(Karlsruhe Institute of Technology)的圖學研究可找到
論文概述
RSM(Reflective Shadow Maps)用來處理One-bounce(一次反射)的indirect light(間接照明)
適用於diffuse的場景
擁有Real-time(即時)運算的速度
為許多遊戲引擎的演算法(LPV等等)的基礎
論文的結果展示(從圖中可看出雕像上有綠牆反射的綠光)
技術研究
Flow:First pass, we render the scene from the view of the light source to generate a reflective shadow map.以光源為視角計算整個場景,生成R ...
Hexo-常見問題
這邊記錄了一些使用 Hexo 時遇到的一些問題
Git環境設置錯誤顯示問題:
1234567[info] Start deploying: git[info] Setting up Git deployment...[error] Error: spawn ENOENTError: spawn ENOENT at errnoException (child_process.js:1000:11) at Process.ChildProcess._handle.onexit (child_process.js:791:34)events.js:72
解決方法:把Git Bash的Path加到系統環境變數中。
沒有Repo1fatal: Not a git repository (or any of the parent directories): .git
解決方法:rm -rf .deployhexo setup_deploy
Hexo-文章功能
跟文章有關的功能,目前會記錄在此
發表帶有標籤、分類的文章
新增文章
1hexo new testpost
編輯 md 檔案,加上 tags 或是 category
123456title: Hexo-其他功能date: 2015-01-12 17:03:20tags: - Hexocategory:- Hexo
新增文章圖片官方文件 Include-Assets
預設方式-統一管理
圖片放進 source/images
編輯 md 使用 ![](/images/image.jpg)
進階方式-個別管理
編輯 _config.yml 開啟 post_asset_folder: true
圖片放進同名文章的資料夾內 _posts/testpost/image.jpg
編輯 md 使用 ![](image.jpg)
語法優化(使用以下語法才可以在首頁顯示)
{% asset_path filename %}{% asset_img [class names] slug [width] [height] [title text [al ...
Git-基本指令
簡單介紹 Git 的使用方式
簡單流程
把Github上的code
1git clone [repository]
進到該目錄中
12git branch [branch_name] //新branchgit checkout [branch_name] //切換branch
開始修改檔案(重複動作,直到 git status 顯示無修改)
123git status //看狀態git add [file_name] //加入檔案[git add . (加入全部)]git commit -m "message" //註解
準備上傳
1234git checkout master //切換到mastergit merge [branch_name] //和master merge起來git push //上傳/*git push origin master (第一次push到空repo需要加origin)*/
註:當然偷懶一下也是可以不要生成新branch,就不用marge,直接修改master的說。
其他實用指令123456git log //顯示提交的歷史 ...
Hexo-介紹與體驗
這是使用 Hexo 的初體驗系列
Hexo
Hexo是基於Node.js的網誌框架,也就是本網誌的系統!目前版本2.8.0這是一位台灣的大大所寫的
hexo官網連結
作者twitter
特點官網首頁寫的
A fast, simple & powerful blog framework, powered by Node.js.
Blazing Fast
Markdown Support
One-Command Deployment
Various Plugins
安裝
Node.js
Git
體驗
安裝hexo
1npm install -g hexo
在當前目錄建一個網誌資料夾
1hexo init blog && cd blog
移動到資料夾裡
1cd blog
安裝
1npm install
生成檔案在public資料夾
1hexo generate
在本機架伺服器(可預覽網站,網址是 http://localhost:4000)
12hexo serverhexo server -p 5000 <!-- 切換特定 port --& ...