[英]《Swift與Cocoa框架開發》作者Paris Buttfield-Addison:你的程式設計生涯可以從Swift開始!(圖靈訪談)
Paris Buttfield-Addison是Secret Lab的聯合創始人、移動應用工程師,以及遊戲設計師。Secret Lab是一家遊戲開發公司,他們致力於使技術變得簡單又有趣。Paris擁有計算學博士學位,同時也是一位歷史學士。他之前作為產品經理為矽谷的Meebo公司工作,這家公司在2012年被Google收購。他撰寫了一系列關於iOS和遊戲開發的技術書,其中包括《學習Objective-C與Cocoa框架》,《iOS遊戲開發攻略》,《Swift與Cocoa框架開發》,以及《Unity移動遊戲開發》。
iTuring: As a bachelor of history, how did you become an iOS master and a game development expert?
In addition to studying medieval history, I also have several degrees in Computing (Honours degree, and a PhD). I find that the background in studying History helps to give me a different perspective on technology to many people, and I find history a lot of fun.
iTuring: After Swift 2.0, does Swift Development with Cocoa still stay relevant? Should it be renovated at some place?
Swift 2.0 has a number of syntactic changes, but the philosophy of the language remains the same. The book is still relevant, if a little out of date –– we’ll be releasing a changelog for the book, that outlines the differences between the code printed in the book, and what you would do with Swift 2.0 on our blog (http://secretlab.com.au/blog/) in the near future. We’re also working on a new book, called “Learning Swift”, which is brand new and covers Swift 2.0: http://shop.oreilly.com/product/0636920045946.do?code=WKIOS9
iTuring: In your opinion, what will open source of Swift change about its ecosystem and dynamics between iOS and Android?
I don’t think it changes much. The previous Apple developer language, Objective-C, was pretty obscure before iOS came around, and Swift has already had a big uptake. I think, if anything, open source Swift will mean that people might write their server software in Swift as well, which would result in a bigger, better community. I don’t think it says much between iOS and Android; Java is a very old, almost legacy language at this point, and Swift is modern. It would be cool if Google maybe updated their Android environment to a modern language like Swift –– in fact, Google already has a modern language (“Go”), but they don’t use it for Android… yet..!
iTuring: What does Swift integrate from other languages? What are the favorite features you like about Swift?
Swift learnt a lot from languages like Rust and Python. My favourite feature of Swift is how it tries to be inherently safe; it’s very difficult to make mistakes in Swift, because it enforces so much “good style”.
iTuring: Why hasn't Swift been employed by many companies in their production environment?
Because it’s new and in a state of change. With the release of Swift 2 I suspect (but can’t be sure) that Apple will change less, which will mean Swift is picked up by more mobile developers for their production apps. Things like bit code, where the App Store itself will compile and link apps for users who download/purchase them, mean that Swift is truly essential for future apps.
iTuring: Is it possible that Swift will take place of Objective-C completely in the future?
Yes, it already has for us! And it should for serious developers any time now. It’s an important step to take.
iTuring: What do you recommend a beginner to learn first, Objective-C or Swift?
Swift! There’s no need to learn Objective-C these days!
iTuring: In the process of learning programming languages, when is the best time to engage with masses of libraries and APIs? Is it necessary for a programmer to know every API he/she might use?
No! I don’t remember most of the APIs we use, I just look them up as I go. Learn the language before you learn the frameworks and APIs.
iTuring: Is it inevitable to learn C before moving on to Objective-C and Swift?
No! Learn Swift to begin, it’s a great, fun, easy, and safe language. Learn C later when you want to understand how things are working underneath.
iTuring: For a master of iOS development, what does his/her knowledge framework look like?
I do a lot of design as well –– building good mobile apps (or apps of any kind, these days) requires a good design sense! Learn design, and people respond to well in design.
更多精彩,加入圖靈訪談微信!
相關文章
- Swift與Cocoa框架開發Swift框架
- Microlern for Swift mac/程式設計學習開發SwiftMac程式設計
- IOS開發Swift程式設計從入門到精通(視訊教程14G)iOSSwift程式設計
- Swift編寫的EOS開源框架SwiftyEOSSwift框架
- 極客程式設計日曆桌面版for mac開發筆記[swift]程式設計Mac筆記Swift
- 從零開始的Java程式設計之抽象與介面Java程式設計抽象
- 我的小專欄《 Swift 遊戲開發》開始創作啦~一起來用 Swift 寫遊戲吧!Swift遊戲開發
- Swift中的面向協議程式設計Swift協議程式設計
- 併發程式設計從零開始(十一)-Atomic類程式設計
- iOS 藍芽開發 - swift版iOS藍芽Swift
- 從Python開始——圖靈圖書學習路線Python圖靈
- Swift 面向協議程式設計的那些事Swift協議程式設計
- 併發程式設計從零開始(九)-ConcurrentSkipListMap&Set程式設計
- 併發程式設計從零開始(十四)-Executors工具類程式設計
- FPGA程式設計從零開始 使用VerilogFPGA程式設計
- 學習程式設計從遊戲開始程式設計遊戲
- Swift 中的訪問控制Swift
- 你的程式設計能力從什麼時候開始突飛猛進? 我的回答:2013年,我開始喜歡程式設計了。程式設計
- Swift 開源專案精選導圖Swift
- VSCode使用LSP進行Swift開發VSCodeSwift
- Swift Web 開發之 Vapor – 路由(二)SwiftWebVapor路由
- MG--Swift面向協議開發Swift協議
- 看圖學 - Swift 併發Swift
- Photon物聯網程式設計從零開始程式設計
- Swift開源庫MoyaSwift
- swift指令碼程式設計:一鍵生成AppIconSwift指令碼程式設計APP
- Swift API 設計思考題SwiftAPI
- 風變程式設計,幫助你從零開始學習程式設計程式設計
- 學習Python程式設計開發可以從事的崗位有哪些?Python程式設計
- Swift的訪問控制講解Swift
- 教你如何從零開始設計電商商品的主圖!
- Swift Web 開發之 Vapor – 模版 Leaf(三)SwiftWebVapor
- 【開發筆記】swift語法小記筆記Swift
- Swift 全棧開發之路 (一)protoc && SwiftPMSwift全棧FTP
- iOS 開發選擇OC還是Swift?iOSSwift
- Swift開發基礎06-閉包Swift
- DataGirls社群創始人 Aislinn:做勇敢的少數派(圖靈訪談)AI圖靈
- iOS開發中使用OC和swift的對比iOSSwift
- 從 React 架構開始講解 useState、useEffect 程式設計設計React架構程式設計