這一系列文章旨在讓具備 Web 前端背景的開發者快速上手原生語言。前端
從 WebView 到 Hybrid 再到 React Native,移動端主流技術方案中前端同窗的施展空間愈來愈大。但傳統 Web 前端背景的同窗所熟悉的編程語言主要是 JavaScript,在與 Native 協做的邊界上很容易遇到掌控範圍以外的坑,這也是 RN 等方案常常被詬病的理由之一。git
然而,某一門具體的編程語言並不該該成爲生涯的瓶頸或阻礙。已經熟悉某門主流語言的同窗,學習新語言的速度能夠是很是快的。在這方面,C++ 領域的《Essential C++》就是一個很好的例子:它假定讀者已經熟練掌握了一門編程語言,從而忽略了入門編程初期大量瑣碎的新手向知識點,直接向讀者展現 C++ 的核心特性,讓讀者可以很是迅速地上手 C++ 語言(注意這和精通是兩回事)。對於這份教程而言,讓已有 JavaScript 背景的同窗可以迅速舉一反三地瞭解原生語言特性及其後的原理,從而邁過跨端開發的一個坎,就是咱們的初心。程序員
目前這個項目還處於連載中的早期階段,歡迎任何形式的反饋與參與。github
這份教程對讀者的要求只有一點:熟悉 JavaScript。而在學習目標層面,請首先明確這份教程不能作到什麼:objective-c
與之相對地,這份教程的定位,是在這些場景下可以讓你更快地達成目標:編程
若是這些場景命中了你,那麼就別猶豫了,上車繼續吧😉編程語言
如何閱讀呢?從下面的連接開始就好了:ide
爲何從 C 開始呢?一方面,WASM 和 WebGL 中少不了 C 的影子,而更主要的是,C 的內容其實很是少,而且有一個很是好的思惟模型,可以幫助你理解編程語言的核心特性,從而更容易地經過類比來掌握其它語言。例如做爲 C 的超集,Objective-C 中就有許多 C 的影子。從 C 開始可以讓你更好地理解它的特性爲什麼這麼設計,從而更好地理解其它編譯型的原生語言。固然,若是你已經熟悉了 C,你也能夠直接跳過它,閱讀其它部分。函數
很是歡迎各類形式的參與,包括但不只限於問題討論、勘誤指正與新增內容🙏使用 GitHub 的 Issue 和 PR 來參與吧。學習
本系列文章的組織結構參考了《Objective-C Programming The Big Nerd Ranch Guide》一書。