背景是這樣的

在剛進入趣編程學習的時候,Tinker 姐姐先讓我看聊天記錄,了解這裡面的學習模式,恰好當時我剛在看一本 《Objective-C 編程》 第二版。而記錄中提到的關於看書的方式,它大概的意思就是說,“要快速過完一本語言書,然後就進入項目開發環節”。我當時就在思考,到了項目開發環節不就是實踐了嗎?這不是要依賴編程語言的基礎嗎?快速要有多快呢?得看個人的消化能力吧,而聊天記錄的一些對話就更出我意料之外了。這算是我對趣編程一開始的印象——無盡的可能性

我之前看書的方式

那時候 《Objective-C 編程》 第二版,其實已經差不多看到尾聲。花了差不多一個月吧,按章節順序看,後面做習題,確保習題都能做好做對,便於後面的學習,因為這本書我看了一半發現有連貫性在裡面,後面是便於增強鞏固知識點。關於 Objective-C 的語法,差不多也就這個樣子。

準備進入項目實踐

進入趣編程學習後,給我的第一個項目任務(是什麼不重要)就是寫 UI 界面。問題就來了,這什麼鬼,我還沒看 UI 界面的書,且語言我也看了個大概,這麼快就上手寫一個 UI 界面嗎?於是我帶著之前“要快速過完一本語言書,然後就進入項目開發環節”這個問題繼續研究探討。

說真的,很痛苦

接到這個任務的時候無從下手,導師給了提示:這個控制器可以用 UITableview 来做,後面自定義 HeaderView 和 FooterView, UI 控件基本都是繼承自 UIView,設置控件的 frame 或約束條件 ⋯⋯⋯⋯⋯⋯ “不懂的查資料,看代碼”
控制器是什麼,UITableView 是什麼,HeaderView、FooterView、frame、約束條件???但我知道,它們是 UI,更知道是我還沒學的。而且導師給的是提示,並沒有手把手演示,只是到每當最後的時候,重複的一句話就是說:“不懂的查資料,看代碼”
所以跟著查資料了,查的方式也有很多種,我之前對自己的搜索方式還是比較有信心的,然而只是之前而已,首先頁面的需要的東西,有些搜索在 baidu 這邊基本是沒有的,就往谷歌那邊查,其實沒什麼特殊關鍵詞我都是以中文來搜索,這次就涉及到了英文,好吧,我英文渣,用英文的方式查詢,得出來的自然而然是一堆英文的網站,英文講解,在你希望找到答案的同時,還要過一遍英文。真的你沒得選擇。看代碼也是如此,一個新的控件下來,可以用哪些方法,用哪些方式實現,代碼代表著什麼意思。真的你沒得選擇。——除非你放棄。
終於功夫不負有心人,查了一堆,東湊西湊,終於有點苗頭。而那時候已經近一個月了,好在項目任務沒有時間限制。但人覺疲勞,更多的是心累。

那近一個月的反覆推敲過程中,Objective-C 語法特性一直在輾轉重現,對象、繼承、self、內存申請、屬性等等,於是我發現,來來去去這語法的基礎基本就是那些,簡單的說,比我之前看書的方式要好很多,而這中間,也被快速的拉入了項目開發實踐,可以說在鞏固語法的同時,UI 的學習也悄然被打開。於是我知道 為什麼要快速過完一本語言書的原因了。但我也明白,這會比之前學習語法時候的路會更長,水更深。

但堅持也是增加運氣的一種方式

我有幸被挑進參與了有償項目的開發中,對比那個項目,一個最大的區別是這次任務有時間限制,超時任務執行人會被替換,特殊的為人操蛋的拉黑清出項目組。所謂壓力就是動力,畢竟總會進步的,吸取了上次項目任務的的經驗,到這裡,我只有多查資料,多學習前人的代碼。先知道了它是怎麼做,有哪些寫法,後面就需要理解這可以用在哪些地方上
但與此同時,增加了新的學習課題:團隊項目開發流程。開發人員之間的默契,環境適應,無窮無盡的學習。。。

而且

現在是2016年11月19日,項目任務已經進行到了尾聲,文章的內容我也反覆在看,我覺得,做項目就是最好的鍛煉提升方式,在這個做項目的過程中吸取你認為有用的東西,這也不局限於技術上的。一個很簡單的例子,雖然是學習,是在做項目,但這時間不是天天有時時有,怎麼合理安排好時間,做到開發效率最大化,自己也不累,他們也開心,增加他們對你印象值。

這取決於你花的時間

老實說,我自己覺得,真正進步的是在這個有償項目的中期開始,當我知道了查資料,多看代碼是最主要的知識來源之後,我做項目速度提升了很多。只要有一個 Demo ,它不需要解釋或者註釋,我可以完全複製出來,並加以優化修改,變成我自己的東西,實現我想要的功能,如果沒有 Demo 呢,也沒關係,查資料。這些都只是時間而已。

說了那麼多

我該找個時間把第一個項目任務寫提交上去了。
感謝 Tinker 提供平台,楊玉鋼老大,周鵬飛導師一路的耐心指導哈哈哈

发表评论

电子邮件地址不会被公开。 必填项已用*标注