2019年1月20日 星期日

Day 2 起手式

前言

在我們開始寫程式之前,需要有一些前置作業,安裝軟體和設定開發式的環境變數,讓我們開始吧!開發使用 Macbook 的環境,以下會以 Macbook 為主.

安裝 Git

https://ithelp.ithome.com.tw/upload/images/20181002/20072651eG0jSerqYs.png
https://ithelp.ithome.com.tw/upload/images/20181002/20072651bMmSiKKrfI.png
https://ithelp.ithome.com.tw/upload/images/20181002/20072651RsDFjwLWUB.png
https://ithelp.ithome.com.tw/upload/images/20181002/20072651EInBxSaIMQ.png
https://ithelp.ithome.com.tw/upload/images/20181002/20072651UFsvmwMKGU.png
https://ithelp.ithome.com.tw/upload/images/20181002/200726512EAoMG2i8m.png

安裝 pyenv

下載
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
設定環境變數
 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
 echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
 source ~/.bash_profile
安裝需要用到的 python 版本
 pyenv install 3.5.0
 pyenv global 3.5.0
 python --version

安裝 pyramid

安裝 pyramid 插件
pip install pyramid

創建一個 pyramid 專案

使用指令創建專案,使用 pyramid 的 pcreate 指令來快速產生一個專案,ithome_pellok_2018
預設會有三個 樣板
alchemy: Pyramid project using SQLAlchemy, SQLite, URL dispatch, and Jinja2
starter: Pyramid starter project using URL dispatch and Jinja2
zodb: Pyramid project using ZODB, traversal, and Chameleon
pcreate -s alchemy ithome_pellok_2018
為專案用插件設定一個環境,這邊使用 virtualenv,安裝virtualenv,創建還境變數
pip install virtualenv
cd ithome_pellok_2018
virtualenv env
https://ithelp.ithome.com.tw/upload/images/20181003/20072651YgE0tGlOX9.png
切換到環進設定裡面,並且安裝專案用的插件
source env/bin/activate
python setup.py develop
https://ithelp.ithome.com.tw/upload/images/20181003/200726517nz48QyXF6.png
看到 Finished processing dependencies for ithome-pellok-2018==0.0 代表專案環進設定好了
https://ithelp.ithome.com.tw/upload/images/20181003/20072651kmoScuzbBY.png
儲存插件的版本檔案
pip freeze requestment.txt
創建 DB
deactivate
source env/bin/activate
initialize_ithome_pellok_2018_db development.ini
啟動服務,看到 Serving on http://localhost:6543 代表服務正常啟動
pserve development.ini
https://ithelp.ithome.com.tw/upload/images/20181003/20072651O8RtxBpjy1.png
檢查網頁是否正確開啟,在瀏覽器輸入:http://localhost:6543,看到以下畫面就代表成功了!
https://ithelp.ithome.com.tw/upload/images/20181003/20072651f0QnwAj7aU.png

加入 Git 版控

初始化 git
git init
加入 .gitignore 檔案,讓環境變數和一些環境檔案不要污染git
vim .gitignore
env/*
*.pyc
*egg-info*
.coveragerc
*.sqlite
把程式碼加入版空
git status
git add .
git commit -m "first commit for ithome_pellok_2018"

結論

以上就是我們初始化一個 pyramid 專案,並且加入的 Git 版本控管,在這之中有幾個重點,這些重點都是經驗換來的設定:
  1. 第一個是環境變數pyenv:可以避免多個專案在開發的時候python版本混亂的問題.
  2. 第二個是插件版本問題:當開發程式的過程中,插件會持續在更新,有時候在部屬的時候會安裝到最新的插件,有很大的機率造成軟體開不起來,查到最後常常是因為插件版本有問題,習慣再開發的時候先儲存插件的版本號,也就是requestment.txt檔.
  3. 版本控管的gitignore:在多人開發的時候,避免個人電腦環境互相感染,這也是蠻常遇到的問題.

沒有留言:

張貼留言

台灣人工智慧學校第四屆開學典禮

台灣人工智慧學校  第四屆 開學典禮       今天 AI 學校開學,非常特別像參加研討會一樣,開場介紹孔祥重校長和陳昇瑋執行長為什麼會創建這間學校,主要是他們發現AI技術可以幫助產業界解決很多問題,但是人才問題嚴重,希望透過一年三期每期500左右的規模並在北中南都有分校,來...