#javascript #babeljs #airbnb-js-styleguide
#javascript #babeljs #руководство по airbnb-js-styleguide
Вопрос:
Я изучаю, как использовать webpack и babel для компиляции javascript для интерфейсных приложений, и мне любопытно узнать о предустановке airbnb babel, которую, похоже, многие люди используют при разработке приложений react. Итак, пара вопросов, которые у меня есть:
Переводит ли эта предустановка какой-либо код в код, соответствующий стандартам airbnb?
Если да, то необходимо ли мне в любом случае использовать руководство по стилю airbnb?
Кроме того, я не понимаю, почему это так необходимо для кого-то, кто не придерживается стиля. Кто-нибудь когда-нибудь читал скомпилированный код (который обычно в любом случае сокращен)? По моему опыту, я читал исходный код только в их отдельных оригинальных файлах. Если этот код еще не оформлен в стиле airbnb, я не вижу, в чем преимущество его стилизации при компиляции — по крайней мере, для целей чтения (я знаю, что некоторые стандарты airbnb предназначены для функциональности, что имеет смысл).
Ответ №1:
Предустановка — это набор плагинов, используемых для поддержки определенных языковых функций. Вы используете предустановки, чтобы воспользоваться новейшими функциями JavaScript, которые еще не были реализованы в браузерах. Предустановки преобразуют ваш исходный код и синтаксис, чтобы они были совместимы с нативными, JavaScript
которые понимают браузеры. Например, @babel/preset-react
позволит вам писать JSX
код в стиле JavaScript в формате XML, который обычно используется для определения React
компонентов, хотя JSX
браузер, естественно, не понимает.
Так в чем же дело с babel-preset-airbnb
предустановкой?
Что ж, AirBnb решила создать руководство, чтобы представить «разумный подход к написанию JavaScript
«, поскольку все пишут JavaScript
по-разному. В идеале, это руководство дает большее ощущение структуры и порядка приложениям JavaScript. Все рекомендации можно найти здесь, где AirBnb описывает свои соглашения или рекомендации по написанию более удобных в обслуживании JavaScript
.
Итак, что касается вашего вопроса:
Переводит ли эта предустановка какой-либо код в код, соответствующий стандартам airbnb? Если да, то необходимо ли мне в любом случае использовать руководство по стилю airbnb?
Да, цель предустановок, в общем, заключается в переводе вашего кода на отраслевые стандарты, которые в настоящее время понятны браузерам. Таким образом, предустановка, предоставленная командой AirBnb, перенесет ваш код в соответствии с их руководством по стилю, упомянутым выше. Что касается второй части вашего вопроса, лично я бы так и сделал, поскольку это хорошие соглашения о кодировании, и никогда не бывает плохо написать код правильным образом и привязать его к мышечной памяти.
Теперь что касается того, почему код сокращен?
Большинство людей сокращают свой JavaScript
код перед выпуском в производство, чтобы уменьшить количество байтов, необходимых для загрузки браузером для запуска их веб-приложения. Вот почему при проверке кода большую часть времени это сокращенный код. С учетом сказанного, вся цель их пресета — преобразовать ваш код в код, соответствующий их рекомендациям по стилю.