Эта серия статей предназначена для того, чтобы разработчики, имеющие опыт работы с веб-интерфейсом, быстро освоили родные языки.
Предыстория и мотивация
От WebView до Hybrid и React Native — все больше и больше возможностей для передовых студентов в основных мобильных технологических решениях. Тем не менее, язык программирования, знакомый студентам с традиционным веб-интерфейсом, — это в основном JavaScript, и на границе сотрудничества с Native легко встретить ямы за пределами диапазона контроля.Это одна из причин, по которой такие решения, как RN часто подвергаются критике.
Однако определенный язык программирования не должен быть узким местом или помехой в вашей карьере. Студенты, которые уже знакомы с основным языком, могут очень быстро выучить новый язык. В этом отношении хорошим примером является «Essential C++» в области C++: он предполагает, что читатель уже хорошо владеет языком программирования, таким образом игнорируя большое количество тривиальных знаний новичка на ранних этапах вводного программирования, и непосредственно показывает читателю C++. Основная функция, которая позволяет читателям очень быстро начать работу с языком C++ (обратите внимание, что это и мастерство — две разные вещи). В этом учебнике мы изначально намеревались позволить учащимся с опытом работы с JavaScript быстро понять особенности родного языка и лежащие в его основе принципы по аналогии, чтобы преодолеть препятствие кросс-энд разработки.
Этот проект все еще находится на ранних стадиях сериализации, и любая форма обратной связи и участия приветствуется.
требования и цели
Этот учебник просит читателей только об одном:знакомыйJavaScript. С точки зрения целей обучения, пожалуйста, сначала уточните этот учебникне могу сделатькакие:
- заставить вас достичьопытныйУровень: Пожалуйста, используйте это слово с осторожностью.
- Делает вас мобильным разработчиком: определенные языки программирования зависят от платформыПодмножество.
- Ознакомьтесь с IDE: в этом руководстве будут использоваться самые простыеКомандная строкаСборка конфигурации без IDE.
Напротив, это руководство предназначено для того, чтобы вы могли быстрее достичь своих целей в следующих сценариях:
- Вы разрабатываете на основе RN, вам необходимо интегрировать собственный SDK или библиотеки классов.
- Вы ступили на яму Native под RN и другие решения, и надеетесь, что сможете отладить и решить ее самостоятельно.
- Вам необходимо иметь общее представление о существующем коде Objective-C и других приложений или внести небольшие изменения.
Если вас зацепили эти сцены, то не медлите, садитесь в машину и продолжайте 😉
Getting Started
Как это прочитать? Просто начните со ссылки ниже:
-
C
- Пересматривая привет мир- Знакомит с основами среды компиляции и стиля кодирования.
- Переменные и типы- Расскажите, насколько важна система типов, которую JS-программисты часто упускают из виду.
- поток управления- Описывает, как повседневные циклы for и while связаны с лежащим в их основе механизмом.
- вызов функции и стек- Расскажите, как родной язык повторно использует сегменты кода.
- указатели и ссылки- Объясните, почему нам нужно различать примитивные типы и ссылочные типы.
- Структуры и кучи- Познакомить с понятием прототипа объекта и управления памятью.
- Objective-C
Зачем начинать с С? С одной стороны, тень C незаменима в WASM и WebGL, и, что более важно, содержимое CНа самом деле очень мало, и имеет очень хорошую ментальную модель, которая может помочь вам понять основные особенности языков программирования, облегчая понимание других языков по аналогии. Например, как надмножество C, в Objective-C есть много теней C. Начав с C, вы лучше поймете, почему его функции разработаны именно так, и, следовательно, лучше поймете другие скомпилированные нативные языки. Конечно, если вы уже знакомы с C, вы можете просто пропустить его и прочитать другие разделы.
участвовать
Любые формы участия очень приветствуются, включая, помимо прочего, обсуждение проблем, исправление опечаток и новый контент🙏 Используйте вопросы и PR GitHub для участия.
Спасибо
Организация этой серии статей основана на книге Objective-C Programming The Big Nerd Ranch Guide.