Step1:新增文件
☞ 如果需要函式庫格式,就選擇Cocoa touch Class
☞ 如果只是要建立型別,可以選擇空白的swift file

在這個Quiz實作中我們需要各一種
放心地加進來專案吧~

宣告問題集的型別內容

也別忘記把剛剛新加的viewController歸位

Step2:版面規劃
開始設計storyboard的版面嚕~
這邊似乎各有流派
有的傾向直接用程式碼寫
有的是喜歡用視覺開發
學到目前為止
我習慣用紙筆先畫個草稿
有個視覺大概框架看一下整體感覺有沒有和諧
按鈕觸發後在哪裡呈現會有比較連貫
才會進到Xcode裡面實作
(實際在Xcode操作時很可能已經先小改一次版型跟素材了)
Storyboard目前功能已經很完整了
相信未來只會是越來越完整、越來越多元
但有些細節部分還是會寫在程式碼去微調
畢竟身為一位工程師
這才是大家見真章的地方吧~
雖然我認識的純血工程師還不多
大家習慣是寫在程式碼部分去規劃畫面風格
而有設計背景的前端工程師則似乎傾向在Storyboard完成
各有戲法高妙不同就是。
也可能是因為我天生容易分心的個性
有的時候
版面焦點太多反而感受很破碎
所以向來不喜歡太多跳動刺激的版面
版面也就相對簡單雅潔的多。

Step3:基本畫面
首先拉選outlet & action
再來準備問題集內容

在viewDidLoad的地方增加畫面條件
有時候雖然一開始想寫但試過之後沒有增加畫面好感度
我就會暫時註解起來
像一個隱形斗篷,以後想用的時候把它取消註解就好
有時候也會寫多個功能來測試
也是會用一樣的註解方式留在程式碼裡
或許哪天就派上用場也不可知~(很大可能是囤積症患者)

Step4:來寫Action & 功能嚕~
拆解來看
其實功能很簡單
粗分為三大區塊:選項Segmented \ 答案 Answer Button \ 下一題問題Next Button

1.選項 Segmented

其實原本一開始的版本是沒有給選項的版本
就是單純一題一題秀問題⇒答案⇒問題⇒答案

我大概是做到5.0版才改為有選項
也為此才加入Segmented元件
面對需求萬變的職場生態跟老闆心情
相信辛苦工程師們改版次數應不下我數倍
不過聰明如你
一定猜到我想幹嘛了吧~
沒錯!
我想用Segmented的index特性來給我數字!
可別小看Apple原廠出品的基本元件
在我這種菜鳥眼中已是極品功能了
而且這數字可好用嚕~
因為我已鐵了心打算不久的未來
一定會貪心不足蛇吞象地加入計分功能
也可用這組數字來判斷答案的對錯。
2.答案 Answer Button

☞用基本的if else語法下去比對questions array的內容
☞第二步則加入比對正確則加分的語法
永遠都好好用的print功能隨時幫你把結果印出來

3.下一題問題 Next Button

☞一樣用if else語法
☞此處要特別注意題數問題
像我特定題數為8題,所以當第8題跑完
要記得設計不一樣的狀態讓user可以分別出來
同時我在此處寫入問答的計分結果
針對不同的分數級距,有不同的結果內容顯現
如果有機會拿來做簡單的機智問答互動或心測小遊戲
想必也是十分趣味性的

Step5:優化畫面跟音效
通常我都把動畫跟音效放在最後優化進app
畢竟跑不起來的東西
加動畫跟音效只是加心酸的
還是趕快找出紅字警示內容debug比較重要rrrrr
最後的最後
跑起來吧~~~

以前作業真的都是趕鴨子上架
雖然沒有硬性規定一定何時要交
隨著上課頻率,若自己能理解當週上課內容
都希望當週可以實作作品出來驗證理論
但如人品不好遇上卡關
可能就要拖到兩週才能產出作品
現在回頭去看看當時所謂千辛萬苦的實作
根本就是…….算了不忍說QQ
其實就是淺淺地感受一下介面基本功能
畫面跟程式碼之間的關聯性還有元件互動
而且有個大概的印象之後
就立刻又馬不停蹄地往下一章節奔去
畢竟要學的東西是這樣包山包海地多
還包括各式各樣沒見過的新出的視覺花招
甚至是Apple每隔幾個月就更新逼死人的新玩意兒跟語法
這行業根本就是整死自己的行業吧!
但當自己花時間沉浸在程式碼的純粹邏輯世界裡
一邊感受到純理性的推理演繹跟腦內角力
一邊又感受到程式碼的強大威力
霎時即心悅誠服在這些邏輯符號群裡
想來這些我們稱之為" 工程師 "的人們
是不是也是像我現在這樣地百感交集呢?
目前主要針對單一題型、一練再練地深入題型之後
才慢慢更深一層地了解語法的用法
未來的目標是希望能看到畫面就想到怎麼寫後面的程式碼
而且還要寫得簡單!寫得漂亮!
路還很長
就當馬拉松一樣來跑吧~
還是感謝有遇上好老師Peter!
在舉目無親、孤助無援又不知道怎麼開始這條學習長路的時候
有人能拉一把真的是無限感動的
更感謝他願意在我很菜的時候
能回答我種種怪問題
也願意看newbie錯誤百出、連字都拼錯的比火星文還可怕之程式碼
讓我能走過每隔三天就浮出放棄念頭的菜鳥養成期
也歡迎大家留言給我
跟我講哪裡還可以寫得更好
謝謝所有看過而且願意留言提供幫助的人
你們的溫暖也加強我前進的動力
希望有天能跟強者你們做同事~


