當在設計界面的時候, 用規劃好的界面結構並拆分常見的設計元素(按鈕, 表單欄位, 排版元件… 等)成可重覆利用的組件. 這樣當你下次需要再建立相同的界面時, 你可以編寫比較少的程式碼, 這意謂著將會得到更快的開發速度, 少一點的錯誤和打字.
React Day 4 - Multiple Components
我們已經學習如何編寫一個組件可以顯示資料並且能夠處理使用者的操作, 接下來, 讓我們展示 React 最棒的特色: 組合性.
React Day 3 - Interactivity and Dynamic UIs
React Day 2 - JSX in Depth
React 可以用 HTML tags(strings) 或是 React components(classes) 來產生出 HTML tag, 你只需在 JSX 中用小寫的 tag name 來定義 element:
1 | // HTML tags |
React 的 JSX 用大寫和小寫命名習慣來區分 componet classes 和 HTML tags
Note:
由於 JSX 其實還是 javascript 語言, 所以有些 HTML 的關鍵字像是
class
,for
… 等不能直接使用, 你可以用className
,htmlFor
… 來轉換
React Day 1 - Getting Started
Why React?
React 是一個 facebook 和 instagram 為了建構使用者界面的 javascript 函式庫. 大部分的人把它當作 MVC 架構中的 View 使用.
我們用 React 解決一個問題: 建構大型應用程式時隨時間改變的資料.
Simple
簡潔地表達你的程式在什麼時間點應該要長得怎麼樣, 當底層的資料改變時, React 會自動管理 UI 的更新.
Declarative
當資料改變, 在概念上, React 就像 refresh 按鈕且只會變動需要更新的部分.
Build Composable Components
React 專注於建立可重覆使用的組件, 事實上, 在 React 中你唯一能作的事也就是只有建立組件. 由於其封裝性, 組件讓你的程式碼可以重覆利用, 易於測試與容易切分組件之間的關係.
link-test
Hello
利用 Dokku 建構快速步署應用程式
Dokku
讓你建置類似像 Heroku 的服務,可至官方 Github了解更多資訊。
Installation
1 | # wget https://raw.github.com/progrium/dokku/v0.3.17/bootstrap.sh |
Dokku-alt
基於 Dokku 發展的套包,集合了一些常用的 Plugins,像是 MariaDB, Redis, ACL … 等。
Installation
1 | sudo bash -c "$(curl -fsSL https://raw.githubusercontent.com/dokku-alt/dokku-alt/master/bootstrap.sh)" |
指定 buildpack
1 | dokku config:set <app> BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-php |
BUILDPACK URL 參考:1
2
3
4
5
6
7
8
9
10Ruby https://github.com/heroku/heroku-buildpack-ruby
Node.js https://github.com/heroku/heroku-buildpack-nodejs
Clojure https://github.com/heroku/heroku-buildpack-clojure
Python https://github.com/heroku/heroku-buildpack-python
Java https://github.com/heroku/heroku-buildpack-java
Gradle https://github.com/heroku/heroku-buildpack-gradle
Grails https://github.com/heroku/heroku-buildpack-grails
Scala https://github.com/heroku/heroku-buildpack-scala
Play https://github.com/heroku/heroku-buildpack-play
PHP https://github.com/heroku/heroku-buildpack-php
Multi-Buildpack
建立 .buildpacks 檔案並指定不同的 buildpack
例如:1
2https://github.com/heroku/heroku-buildpack-nodejs
https://github.com/heroku/heroku-buildpack-php
SSH 進 docker container
1 | sudo docker exec -i -t <id> bash |
Clean up docker
Kill all running containers1
sudo docker kill $(sudo docker ps -q)
Delete all stopped containers (including data-only containers)1
sudo docker rm $(sudo docker ps -a -q)
Delete all ‘untagged/dangling’ (1
sudo docker rmi $(sudo docker images -q -f dangling=true)
Delete ALL images1
sudo docker rmi -f $(sudo docker images -q)
已知問題
若與 CSF firewall 搭配使用,重開機後會造成 deployment building 失敗,應該是因為阻擋了 forward 的通道…
所以改用 ufw 代替,需修改 /etc/default/ufw
檔案
將 DEFAULT_FORWARD_POLICY
設為 ACCEPT
參考資料
Gulp with webpack
Gulp with webpack
gulpfile.js
1 | var gulp = require('gulp'); |
webpack.config.js
1 | var webpack = require('webpack'); |
Atom Editor
Atom Package
- project-manager
- atom-terminal
- autocomplete-plus
- color-picker
- atom-ctags
- sympol-gen
- sympols-tree-view
- auto-indent
- Zen
Atom Keymaps
Jump to sympol define:
Alt
+ Cmd
+ up
/ down
How to speak so that people want to listen
講話應避免的七個過失:
- Gossip 說長道短
- Judging 評斷
- Nagativity 消極
- Excuses 找藉口
- Lying, Embroidery, Exaggeration 花言巧語, 過份誇大都是一種欺騙
- Dogmatism 過份武斷
H.A.I.L. - To greet or acclaim enthusiastically
Honesty, being true in what you say. being straight and clear.
講話內容要真實, 清晰無任何歪曲Authenticity, just being yourself
內心誠懇, 正心誠意, 對自己誠實Integrity, be your word
言行一致, 不能說一套作一套, 要讓人可信任Love, wish them well
希望幫助別人, 成就別人
片語
stand for
represent; mean;
to make change in the world
Fantastic, give yourselves a round of applause.