Мне на глаза попался документ с правилами и рекомендациями по процессу ревью кода внутри компании. Я решил, что такой полезной информацией надо поделиться с внешним миром. С благословения автора я публикую работу
Читать полностью »
Рубрика «разработка» - 105
Процесс ревью кода в HH.RU
2018-09-06 в 8:29, admin, рубрики: code review, Git, github, HH, hh.ru, Блог компании HeadHunter, Программирование, разработка, ревью, ревью кода, Совершенный код, хедхантерОптимизация работы с прототипами в JavaScript-движках
2018-09-05 в 9:04, admin, рубрики: javascript, Блог компании RUVDS.com, разработка, Разработка веб-сайтовМатериал, перевод которого мы сегодня публикуем, подготовили Матиас Байненс и Бенедикт Мейрер. Они занимаются работой над JS-движком V8 в Google. Эта статья посвящена некоторым базовым механизмам, которые характерны не только для V8, но и для других движков. Знакомство с внутренним устройством подобных механизмов позволяет тем, кто занимается JavaScript-разработкой, лучше ориентироваться в вопросах производительности кода. В частности, здесь речь пойдёт об особенностях работы конвейеров оптимизации движков, и о том, как осуществляется ускорение доступа к свойствам прототипов объектов.
Контекст выполнения и стек вызовов в JavaScript
2018-09-04 в 8:55, admin, рубрики: javascript, Блог компании RUVDS.com, разработка, Разработка веб-сайтовЕсли вы — JavaScript-разработчик или хотите им стать, это значит, что вам нужно разбираться во внутренних механизмах выполнения JS-кода. В частности, понимание того, что такое контекст выполнения и стек вызовов, совершенно необходимо для освоения других концепций JavaScript, таких, как поднятие переменных, области видимости, замыкания. Материал, перевод которого мы сегодня публикуем, посвящён контексту выполнения и стеку вызовов в JavaScript.
Один день без JavaScript: что может пойти не так?
2018-09-04 в 7:38, admin, рубрики: javascript, javasript, Блог компании Skillbox, лаги, проблемы современности, разработка, Учебный процесс в IT, юмор
Предлагаем вам перевод ироничной статьи Чарли Сонниэседж, специалиста по веб-разработке с уклоном в высоконагруженные приложения. В один прекрасный момент Чарли решила отключить в браузере JavaScript и посмотреть, что может пойти не так. На этот смелый «эксперимент» отважится далеко не каждый, поэтому давайте почитаем, что у нее получилось.
Я очень не люблю тех, кто полагается на хрупкий JavaScript для client-side, в то время как есть куча других альтернатив. Точно так же я не стану надеяться лишь на один сервис такси, когда еду в аэропорт на суперважный рейс. Если есть другие возможности — почему бы ими не воспользоваться?
Читать полностью »
Эффективное использование методов массивов в JavaScript
2018-09-03 в 9:54, admin, рубрики: javascript, Блог компании RUVDS.com, разработка, Разработка веб-сайтовАвтор материала, перевод которого мы публикуем сегодня, говорит, что в последние несколько месяцев ему, при проверке пулл-реквестов, постоянно попадались одни и те же четыре недочёта, связанных с нерациональным использованием методов массивов в JavaScript. Для того чтобы таких недостатков кода, которые раньше появлялись и в его программах, стало меньше, он и написал эту статью.
Почему человек из мира Java стал горячим сторонником Node.js и JavaScript?
2018-08-31 в 8:11, admin, рубрики: java, javascript, node.js, spring, Блог компании RUVDS.com, разработка, Разработка веб-сайтовДэвид Хэррон, автор материала, перевод которого мы публикуем сегодня, задался следующим вопросом: «Должен ли человек, работавший более 10 лет в Sun Microsystems, в команде Java SE, до последнего вздоха думать лишь о байт-коде Java и создавать экземпляры абстрактных интерфейсов?». Он задавал этот вопрос применительно к себе, и для него платформа Node.js, после Java, оказалась подобна глотку свежего воздуха. Дэвид говорит, что когда он был уволен из Sun в январе 2009 года (прямо перед поглощением этой компании Oracle), он узнал о Node.js. Эта технология его зацепила. Что значит «зацепила»? С 2010-го года он много писал о программировании для Node.js. А именно, написал несколько книг, в том числе — «Node.js Web Development», четвёртое издание которой вышло в этом году. Он подготовил множество небольших материалов о Node.js, опубликованных в интернете. Фактически, он уделил очень много времени и сил, рассказывая о платформе Node.js и о возможностях JavaScript. Почему того, кто раньше занимался исключительно Java, так увлекли Node.js и JavaScript?
Как мы делали первый российский смартфон, продолжение
2018-08-30 в 15:49, admin, рубрики: Qualcomm, гаджеты, Компьютерное железо, разработка, ржд, смартфон, смартфоныИтак, на дворе 19 октября 2012 года, наш трюк с прототипом удался и нужно срочно запускать разработку и производство настоящего смартфона. И к марту выдать заказчику партию в 400 штук.
Проблема в том, что у кроме медали за успешно проведенную выставку, в активе у нас было немного. То есть мы великолепно разбирались во всём, что касается пластика, дизайна и механики, мы спроектировали несколько сотен корпусов для всяких разных электронных приборов, но при этом почти ничего не понимали в разработке электроники и смартфонов в частности. И вообще, правильнее было бы их называть не смартфонами, а терминалами сбора данных, но мы даже этого тогда не знали.
Зато у нас было большое желание и отвага.
Читать полностью »
Android Jetpack: превращаем приложения в ракеты
2018-08-30 в 8:48, admin, рубрики: android, appsconf, Блог компании Конференции Олега Бунина (Онтико), интервью, разработка, разработка мобильных приложений, Разработка под androidВойна… Война никогда не меняется. Так, война за красивый и работающий код идет постоянно. И на каждую сложную задачу рождается свое оружие: кто-то делает его под себя, а кто-то пользуется готовыми инструментами. Разработка под Android не исключение. На нашей конференции AppsConf 2018 мы обсудим, как и чем сейчас интереснее всего пользоваться, где можно споткнуться и что интересного есть в огромном арсенале средств разработки, который Google наконец начал приводить в порядок. Основные темы докладов можно посмотреть на нашем сайте, а пока мы попросили рассказать Google Developer Expert Дениса Неклюдова и Александра Смирнова о новом инструментарии Android Jetpack, который был представлен в мае этого года.
Организация эффективного взаимодействия микросервисов
2018-08-30 в 7:35, admin, рубрики: javascript, Блог компании RUVDS.com, микросервисы, разработка, Разработка веб-сайтовВ последнее время микросервисные архитектуры пользуются определённой популярностью. От того, как взаимодействуют микросервисы, может зависеть производительность и масштабируемость решений, основанных на них. Это взаимодействие может быть синхронным или асинхронным. В материале, перевод которого мы представляем вашему вниманию сегодня, рассматриваются синхронные методы взаимодействия микросервисов. А именно, речь пойдёт об исследовании двух технологий: HTTP/1.1 и gRPC. Первая технология представлена стандартными HTTP-вызовами. Вторая основана на использовании высокопроизводительного RPC-фреймворка от Google. Автор материала предлагает взглянуть на код, необходимый для реализации взаимодействия микросервисов с использованием HTTP/1.1 и gRPC, провести замеры производительности, и выбрать технологию, которая позволяет организовать обмен данными между микросервисами наилучшим образом.
Angular: неочевидные возможности селекторов директив
2018-08-29 в 9:28, admin, рубрики: angular, Блог компании RUVDS.com, разработка, Разработка веб-сайтовЕсли вы когда-нибудь создавали директивы Angular, то вы, вероятно, использовали в качестве селектора конструкцию, в которой используются скобки: ([])
. Такой подход, хотя чаще всего применяется именно он, не является единственно возможным. На самом деле, селекторы, используемые в директивах, дают программисту широкий простор для творчества. Для того чтобы продемонстрировать эту идею в действии, в материале, перевод которого мы публикуем сегодня, рассмотрена методика создания директивы, предназначенной для работы с внешними ссылками, которые имеются в шаблоне. В частности, речь пойдёт о том, как можно находить обычные HTML-элементы, и, при необходимости, исключать из выборки некоторые из них, используя псевдокласс :not
.