成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在 30 天內,從零開始學習 Swift

移動開發 iOS
確切地說,我是在 30 天前開始學習 Swift 語言的。三天前,我的第一個對外公測版的應用被 Apple 審核通過了。這個對外公測的版本和最終產品比較起來,算不上什么,但是對我而言,這是一次極大的成就。

[[149602]]

確切地說,我是在 30 天前開始學習 Swift 語言的。三天前,我的第一個對外公測版的應用被 Apple 審核通過了。這個對外公測的版本和最終產品比較起來,算不上什么,但是對我而言,這是一次極大的成就。

我沒有計算機科學的學位,也沒有做為開發人員所需要的專業經驗,但是最近 5 年,我在軟件開發組里的角色是產品經理,本著玩的心態,曾經做了一些 Ruby on Rails 方面的應用。我一直想和我忙碌的工作取得更加直接的聯系,因此我決定開始寫代碼。
為什么選擇 iOS 和 Swift?

龐大的移動;私人化的移動。我想做一款人們真正在用的軟件,人們和他們的手機有著親密感,我愛這種感覺。我們的手機太懂我們了——我們什么時候起床、睡覺,我們在哪里以及怎樣去那里,我們的日程表,和朋友、家人的交談等。這是我感興趣的地方,我很早就是一名 Apple 用戶了,當然從 iOS 開始比較好了。我短暫地體驗了一把 Objective-C,它比較恐怖,而 Swift 一直都受人喜歡。
約束的好處。Apple 平臺,可裝入口袋的屏幕,在這種范圍內去開發應用,就需要良好的約束。這些約束讓我專注于要學習的東西(與之相對的是,web 開發中深不見底的兔子洞【注4】),并促使我圍繞用戶體驗進行創新。
Swift 是一門快速發展的語言。我喜歡在剛開始時參與,觀察該語言的發展及演化,并成為小社區的一分子——這就是我為什么喜歡在創業公司工作的原因。創業公司允許用一種相對不太成熟的語言來攻關某個問題,加入更小的群組,盡量讓人和事銜接起來。對于向語言和社區貢獻一己之力的可能性,我感到興奮。

初學者資源

7 月 1 號,我開始了這段旅程,當時的想法是做一個真正簡單的應用。始終把這一點擺在最高位置,有助于激勵我、并應用我學到的東西。

為了找到 Swift 相關的最好資源、教程和課程,我投入了很長時間在互聯網上搜羅。有很多面向初學者的優秀資料,但是大部分都假設你從來沒有寫過一行代碼,起點非常低。比如,這是一個變量,看下變量跳轉。另一些資料是技術文章和參考材料(包括 Apple 的文檔),貌似有個前提:你有豐富經驗、或從 Objective-C 轉到了 Swift。

下面是一些不錯的資源,對于我這種水平的初學者,我覺得非常有用:

Paul Hegarty 的斯坦福大學課程《Developing iOS8 Apps with Swift》,可免費在 iTunes U 【注1】里獲取。我從這里開始,在一個多星期里,聽了前五節課,又做了一份家庭作業。這份教程很快就變得有挑戰了,因此在我入門之后,為了找到下面更實用的教程,我暫停了這個進度。不過,這是一份非常棒的課程,Paul Hegarty 教授熟悉他的資料,因此我打算回頭繼續學。如果你在練習上遇到了困難(你在 iTunes U 里找不到解決方案),那么這個網站解釋了每個問題的設置和方法。
Apple 推出的 Swift 編程語言教程。如果你之前有過一些編程經驗,這本 Swift 語言的書,和 Apple 的 iOS SDK 文檔相比,將非常易于閱讀。它清晰、扼要、可快速瀏覽,當你碰到問題時,你能明白在哪里能夠找到某些概念。Big Nerd Ranch 針對其訓練營打造了一份《Swift Pre-reading Assignment》,包含了類似概念,但為初學者準備了更多實用的例子,供你練習。
www.raywenderlich.com。這像是某個家伙的個人網站,但是不要被它的外表欺騙了。這個網站是我曾經遇到過的、最好的資源站。如果你從未創建過 iOS 應用,那就注冊 newsletter,訪問「史詩般的教程」吧——有那么一刻,感覺其極具史詩風格,但是,如果你愿意,用一天時間就能搞定。這個教程讓我初次深入 iOS 開發的古怪世界,為我們揭開了很多容易讓初學者望而生畏的秘密。我自己在開發自己的應用時,會參考這份教程,以喚醒我對 Xcode 里的某些特性或功能的記憶。在你學完這一份教程之后,該網站還有大量另外的免費教程,我精心挑選著學了一些概念,它們對于我做應用的想法有幫助。有如此多的優秀內容,以致于我早點兒想回去看看。

(大概的)時間線

第一周:沉浸其中。我沉浸在斯坦福課程里的演講和練習里,通讀了大量 Swift 語言書籍,完成了來自于 www.raywenderlich.com 的「史詩般教程」。之后,我就準備開始著手我的應用了。
第二、第三周:打磨。在我開始寫代碼的那一天,我碰巧啟動了為期 12 天的、在緬因州的帆船上的生活。咖啡、平靜的水面,我每天早上在這個地方待上好幾個小時。這里不能上網,我可以高度集中在 Xcode 里,而不用在 40 個瀏覽器標簽里來回穿梭。這迫使我停下來,認真思考了我正在嘗試做的事情及其原因。在這些天里,我發現自己在思考代碼時,會想出新方法,第二天早上就迫不及待地嘗試。
第四周:我目前正在做的事情。有一根陡峭的學習曲線,但是和前幾周相比,我在一天里有著更高的效率,感覺太神奇了。在最后一天,我清理了代碼,弄通了奇怪的邊界情形【注2】,令人驚奇、著實滿意。做為產品經理,我對這些場景感到厭煩,把多個小任務分配給工程師。我自己就有能力去除這些工作,感覺不錯。最后,我用 Sketch 創建了一個基本的應用圖標,按照步驟上傳到了 iTunes Connect,并做為公測應用提交給了 Apple。這個版本用了不到 24 小時。

在 7 月份(根據 RescueTime 統計),我在 Xcode 花了 25 小時,在 iOS 模擬器上花了 2 小時 52 分鐘,在預覽【注5】上花了 4 小時 23 分鐘(閱讀教程),在 Stack Overflow 上花了 51 分鐘。我還在手機上閱讀了很多資料。
Swift 社區

我還做了一些其它事情,讓自己融入 Swift 社區:

訂閱 We ❤ Swift 的 newsletter
訂閱 Dave Verwer 的 iOS Dev weekly
關注 Medium 上的 TAG:「Swift」
觀看 www.raywenderlich.com 上的播客
找到當地的 meetup(我參與了 Brooklyn Swift Developers* 和 iOSoho)
加入一個 Slack 小組:(1)helpMeCodeSwift 是我偶然進去的一個小團體。現在只有少部分活躍的人,但是他們超級友好,從來不會對各種小白問題感到厭煩。(2)swift-lang slack 是大團體,有問必答,不過貌似沒有太多初學者,對于進入這種交談的情況,我稍稍感到不安。可能我應該只是為初學者建立一種渠道。

說了這么多,都是我覺得有幫助的。如果你有其它的優秀資源想推薦,請在評論里,把你喜歡的東東、以及它為什么好的理由都寫上。

我第一次參加的 meetup 是由 Dave Grandinetti 發表的「Learning Swift the Euler Way」演講。Dave 開發了一個工具 EulerKit,我很激動地簽出了,它包含了一些 helper 方法,能為解決 Project Euler 問題助一臂之力。我參加了前兩次,此后就有些吃力。
最后,我的第一個應用——RoundTrip

我的應用,名字是 RoundTrip,面向那些乘坐大都會運輸署(MTA)【注3】的公交、且喜歡優化他們地鐵費用的紐約人。這是一款非常簡單的工具應用。
RoundTrip — MTA AppRoundTrip — MTA 的應用,敬請期待!

算出向你的 MetroCard 充入多少錢,以致于不會剩下用不到的錢。如果你充值超過 5.5 美元,MTA 將給你 11% 的獎金,且充值的最小幅度只能是 5 美分。這兩個條件交織在一起,讓匆忙行走的人們做心算,情何以堪呀。
評估你每月的乘坐次數,和買一張 30 天的、無限制的 MetroCard 做對比,看能否省錢。你還能記錄你的行程,查看你乘坐頻率的統計。

如果你想成為公測人員、或想知道什么時候可以獲取這個應用,請在這里注冊、或關注 @helloroundtrip。

感謝了解我的旅程,感謝 @cm 和 @amrithap,幫我評審本文的初稿。

我正在尋找一份工作、或以實習生身份做 iOS 開發人員!如果你有機會,請聯系 katie@katiesmillie.com 。

我的 twitter 是 @katiesmillie,網站是 katiesmillie.com

責任編輯:chenqingxiang 來源: 臘八粥
相關推薦

2011-04-06 15:55:50

開發webOS程序webOS

2011-09-05 14:17:54

Sencha ToucMVC

2014-07-22 13:09:21

android

2023-03-21 07:35:43

2018-08-20 08:15:50

編程語言Go語言切片

2011-05-24 13:37:16

jQueryAjax

2015-11-17 16:11:07

Code Review

2019-01-18 12:39:45

云計算PaaS公有云

2018-04-18 07:01:59

Docker容器虛擬機

2024-12-06 17:02:26

2020-07-02 15:32:23

Kubernetes容器架構

2015-05-06 09:36:05

Java語言從零開始學習

2018-04-16 16:31:56

前端開發從零開始

2018-05-09 20:08:09

人工智能深度學習Python

2024-12-09 09:44:34

機器學習模型分類器

2010-05-26 17:35:08

配置Xcode SVN

2018-09-14 17:16:22

云計算軟件計算機網絡

2024-05-15 14:29:45

2011-05-05 11:03:34

jQueryjavascript

2015-08-24 14:59:06

Java線程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品国产精品国产偷麻豆 | 日日操夜夜操天天操 | 亚洲综合色视频在线观看 | 久久性av | 精品视频一区二区三区在线观看 | 天天碰日日操 | 美女亚洲一区 | 夜夜精品浪潮av一区二区三区 | 国产人久久人人人人爽 | 91在线视频观看免费 | 精品国产乱码久久久久久丨区2区 | 黄色一级视频免费 | 色婷婷久久综合 | 一区二区三区亚洲视频 | 一区二区三区免费 | 久久精品视频在线观看 | 久久机热 | 国产高清自拍视频在线观看 | 日本高清不卡视频 | 99免费视频 | 国产免费一区二区 | 1204国产成人精品视频 | 美女三区 | 国产精品二区三区在线观看 | 国产精品久久久久久久岛一牛影视 | 久草免费视| 在线视频第一页 | 操久久 | 国产精品久久久 | 99亚洲视频| av在线成人 | 午夜视频在线 | 亚洲一区精品在线 | 日韩在线不卡视频 | 国产成人精品一区二区三区在线 | 国产成人精品av | 国产做爰 | 亚洲精品国产电影 | 欧美视频福利 | 亚洲欧美日韩一区二区 | 成人精品一区二区 |