После трехчасовой поездки на автобусе и одной бессонной ночи в общежитии я оказался на Дне разработчиков NativeScript в Нью-Йорке.
У меня нет знаний о NativeScript. Я едва подготовлен к ведению блога на Angular. А что касается Typescript, я думаю, что однажды я прошел курс Front End Masters.
Однако NativeScript дает большие надежды: настоящие нативные кроссплатформенные приложения, развернутые только из одной кодовой базы.
Это довольно заманчивая подача.
Эй, кто в какой-то момент своей жизни не говорил себе: «Давайте сойдем с ума и изучим новые технологии»?
Никто, с кем я не хочу общаться, это точно.
Поэтому вот несколько заметок, которые я сделал, пока сходил с ума.
Вступительный доклад — понедельник, 18 сентября 2017 г.
«NativeScript — это использование всех библиотек, а не только Angular»
Во-первых, Тодд Энглин начинается с вступительной речи. Мы рассмотрим самые большие возможности NativeScript:
- Открытый источник
- Развертывается на iOS и Android
- Предоставляет Native UI — т. е. здесь нет веб-просмотров.
- Выбор языка: Angular, Typescript и Vanilla.js для официальной поддержки; Vue, Preact и Aurelia для поддержки сообщества
- Развертывание только из одной кодовой базы — (Примечание автора: в отличие от React Native, для которого требуется как минимум две из них)
- При оптимизации реальные приложения NativeScript загружаются при запуске всего за 3,2 секунды.
- Тщательно протестировано
- Поддержка в тот же день
- Элементы можно отлаживать с помощью Chrome Dev Tools.
- Может интегрироваться с AR Kit и AR Core для обнаружения плоскости камеры[!!!] — (это довольно круто)
Далее мы рассмотрим текущее состояние экосистемы…
- Огромный рост npm
- 11 000+ звезд на Github
- Более 4200 человек в слабом сообществе
Потребность в таких технологиях, безусловно, существует. Как позже упомянет оратор, существует не так много вариантов, которые обеспечивают и A) «кросс-платформенность», и B) «нативность».
«Webpack + Android === 🔥 🔥 🔥 и производительность»
Далее: некоторые объявления…
- NativeScript Playground, совместно используемое браузерное приложение, которое позволяет вам играть с фрагментами кода NativeScript.
- NativeScript UI будет на 100 % бесплатным — (аплодисменты аудитории)
- NativeScript Marketplace — который для новичка в NativeScript, такого как я, выглядит как отличный ресурс для легкого создания новых функций. Наверняка мне уже не терпится опробовать Плагин Google Maps SDK
- NativeScript Sidekick для запуска новых проектов
NativeScript Sidekick будет неоднократно упоминаться на протяжении всей конференции.
Думаю, мне стоит попробовать NativeScript Sidekick 😋
Короткая демонстрация от Kinvey
«NativeScript отлично подходит для экспериментов»
Kinvey предоставляет «мобильную серверную часть как услугу» (mBaaS) для NativeScript.
Лично я с подозрением отношусь к всему-как-услуге в эти дни (это бизнес-модель, полностью построенная на том, что она слишком универсальна для вашего варианта использования), но Кинви делает довольно солидный шаг, обещая инкапсулировать как ваши данные, так и уровни аутентификации с легкостью.
Сравиш Шридхар рассказывает нам о создании приложения "Обувь {N}Adidas".
Он также дает нам разрешение на создание собственного приложения Yelp for Marijuana. Полагаю, он слишком хорошо знает свою целевую аудиторию? 😛
Кроме того, возможность «Предварительный просмотр в AR» довольно приятна.
Они предлагают бесплатный уровень, так что, возможно, стоит попробовать Кинви.
Начало работы с {N} — изучение основ
На этом этапе конференции мы разбиваем на два трека. Без капли стыда я сажусь наслаждаться новым треком.
Сначала Роб Лауэр задается вопросом: Зачем мы здесь?
Это... на самом деле очень уместно для меня прямо сейчас.
Но все таки…
- «Мы живем в мире бункеров»
- «Мы ❤ Интернет, но нам нужно больше»
- Гибридный подход подвел нас; слишком много компромиссов, слишком мало пользы
- Если бы мы могли использовать «родной Javascript», мы бы не только быстро вышли на рынок, но и не пожертвовали бы удобством для наших пользователей.
Я согласен со всеми этими пунктами.
Роб упоминает другие текущие попытки написания кода для нативного Javascript:
- Векс (Vue.js)
- Fuse Tools (UX-разметка)
- Флаттер (Дротик)
И, конечно же, наш фаворит: React Native.
Если вы застряли, пытаясь выбрать между NativeScript и React Native, то Роб предлагает несколько вариантов для рассмотрения:
- «Напиши один раз» вместо «Узнай один раз»
- Угловой || Vue против React
- Прогресс против Facebook
- Apache 2 против BSD-3+
(Именно в этот момент обсуждения человек в толпе, скорее всего, пользователь Reddit, выкрикивает реплики в адрес React.
Думаю, парень, должно быть, проспал всю речь «Давайте примем больше возможностей для сообщества».)
Роб продолжает подробно рассказывать о том, что делает NativeScript отличным выбором, включая (но не ограничиваясь):
- Определение пользовательского интерфейса с помощью разметки
- Как использовать JS для обработки логики и как использовать CSS для обработки стилей
- Приложение NativeScript по умолчанию и возможность его настройки по мере необходимости.
- Отладка NativeScript с помощью VSCode
- Элементы NativeScript являются абстракциями для модулей NativeScript.
- Виджеты, доступные «из коробки»
- Традиционные варианты макета (Абсолютный, Док, Сетка, Стек, Обтекание и Гибкость)
- Вложенные макеты
- Флаги для конкретных платформ для ваших имен, разметки и атрибутов
- Совместимость с SASS/LESS
- Дополнительные параметры отладки
- NativeScript CLI против NativeScript Sidekick
И, наконец, способы получения помощи от сообщества: как минимум две книги для начинающего разработчика NativeScript, форум сообщества и слабый канал.
Здесь есть что пожевать!
Начало работы с {N} — создание с помощью интерфейса командной строки и визуальных инструментов
«Потому что жизнь слишком коротка [не использовать интерфейс командной строки NativeScript]»
В следующей презентации Себастьян Виталек подробно расскажет об экосистеме.
Многие инструменты здесь уже упоминались мимоходом; однако теперь мы понимаем, почему и как это выглядит:
- Конструктор тем NativeScript
- Рынок нативных скриптов
- NativeScript Sidekick — который также может автоматизировать инициализацию вашего устройства!
- Интерфейс командной строки NativeScript
- Установка подключаемых модулей в NativeScript CLI — примечание:
tns plugin add
вместоnpm install
Я полностью увлекся NativeScript, а ведь прошло всего полдня!
Но сейчас время обеда…
Северо-восточная Пенсильвания, представьте!
Во время ланча в коридоре я столкнулся с другим разработчиком из NEPA. Эй, я узнаю этот твиттер!
Мы приветствуем BH, а также приветствуем наших коллег-участников #CodeNewbie Twitter Chat!
Всегда приятно встретить других людей, которые верят в техническое сообщество и испытывают страсть к нему.
Глубокое знакомство с Angular
«Всегда делайте ставку на Javascript»
Джефф Уэлпли начинает следующую половину с обзора Angular.
Хотя Angular технически не требуется для создания приложений NativeScript, Angular кажется здесь лучшим вариантом; поэтому Джефф проводит нас через…
- Почему мы выбираем его
- Angular «стиль» и конструктивные особенности
- Угловая экосистема
- Угловой интерфейс командной строки
Здесь особо нечего комментировать. Однако Джефф предлагает несколько мнений…
… Что компиляторы — это новые фреймворки (как первоначально заявил Том Дейл)
… И что сообщество Angular считает, что «практичность важнее чистоты» и «сотрудничество важнее конкуренции».
Против этого последнего пункта я бы сказал, что Angular каким-то образом не имеет монополии на «практичный и кооперативный». Сообщества Vue и React также разделяют эти убеждения; мы все просто приходим к разным выводам в конце дня.
Во всяком случае, на более легкой ноте я замечаю, что несколько человек в зале злятся из-за… странного выбора Джеффом метафоры.
Причудливые и запутанные метафоры — мой конек.
Основной машинописный текст и ES6
Daniel Zen завершает день презентацией по ES6 и Typescript.
Ну, скорее, «Осваивайте каждое изменение в ES6, но немного коситесь TypeScript».
Он отлично справляется с каждым из этих изменений по очереди. И для каждого предмета он представляет хороший вариант использования.
Однако, поскольку большая часть часа была потрачена на ES6 и примерно 15 минут на Typescript, я чувствую, что он упустил возможность здесь.
Если вы уже на 100% не освоились с Angular, внедрение Typescript вызывает разногласия, и я чувствую, что я не единственный, кто предпочел бы хороший аргумент в пользу этого?
Но, я полагаю, поскольку это конференция NativeScript, именно он проповедует хору. В конце концов, я здесь странная утка.
Я думаю, что в остальном он проделал большую работу. Отсутствие охвата Typescript — моя единственная критика.
Даниэль дает мне некоторые новые идеи по ES6, так что я не ухожу с пустыми руками.
В конце первого дня я с этим парнем:
Во второй день у нас презентации по RxJS, оптимизации производительности и отладке с помощью Chrome Dev Tools.
Всем спасибо за чтение!