这一系列文章旨在让具备 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》一书。