Как стать автором
Поиск
Написать публикацию
Обновить
6
0
Дмитрий Ивко @Evil_Evis

Lead Front-end

Отправить сообщение

WASM — магическая шляпа или как не обрести безумие

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров4.7K

Всем доброго времени суток. Сегодня с вами я хотел бы обсудить, как можно расширить возможности JavaScript. Первый вопрос, с чего вдруг такие мысли. Я давно работаю front-end разработчиком и последнее время все чаще и чаще я стал сталкиваться с нетривиальными задачами. Пример, получить электронную подпись для документа в браузере или рендеринг 3д моделей для презентации функциональности станков.

Так как я человек любопытный для меня это звучит как вызов - а действительно такое нельзя провернуть в браузере? Как все мы знаем данный функционал просто так не реализуем в браузере, вот и первый спойлер .

Давайте начнем разбираться, если способов с рендерингом много, то вот с подписью  их совсем мало. Поэтому сегодня будем говорить про универсальный способ - WASM.

WebAssembly (WASM) — это современная низкоуровневая технология, позволяющая выполнять код с высокой производительностью в веб-браузерах. Она не заменяет JavaScript, а дополняет его, предоставляя возможности для запуска предварительно скомпилированных программ на различных языках (C, C++, Rust и др.) прямо в браузере.

Читать далее

BEM vs Atomic CSS или картинка по номерам

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.4K

Доброго времени суток. На днях читая очередную статью о том, как повысить свою эффективность в верстке и расширить кругозор возможностей, я задумался, а что сейчас в тренде? Как вы уже поняли, я начал добывать информацию о подходах. Как итог, моему изумлению не было предела, когда я понял, что за много лет почти ничего не поменялось.  

Для начала предлагаю разобраться, о чем статья. В данной статье я попытался свести все свои знания касающиеся использования CSS и подходов (методологий) организации CSS-кода (селекторов) и нюансов использования того или иного подхода, а также провести сравнительный анализ. Как говорил Юрий Гагарин - Поехали!

Читать далее

Безопасность во Frontend или как пройти все круги Данте

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров2.1K

Здравствуйте. Сегодня обсудим безопасность, безопасную разработку и как получать документы, подтверждающие, что ваш продукт безопасен. Возникает резонный вопрос: зачем это вообще нужно? Ну, так как текущие реалии диктуют свои условия. И речь даже не о сложившейся геополитической ситуации в мире. А о том, что все больше и больше желающих получить то, что им не принадлежит. Будь то персональные данные, деньги, имущество, аккаунты игр (да-да, это тоже стоит денег), и в общем всё, что не прибито гвоздями.


Многие скажут, что на фронте всё безопасно, и что я сгущаю краски. Так как весь исполняемый код, по факту, находится у клиента в браузере. Отчасти соглашусь, но напомню, что фронт является дверью в бэк, а как мы все знаем, любая дверь, так или иначе, может быть открыта.


Следует помнить, что не всем подходит просто сказать: “У нас всё безопасно. Доверяйте нам!” Может, кому-то открою тайну, но бизнес так не работает. Бизнес хочет подтверждения безопасности. А это значит, получения сертификата соответствия в надлежащих органах, что само по себе отдельный вид девиации, но об этом позже.


Тема большая, неоднозначная. Постараюсь захватить как можно меньше от других частей систем (бек, тестирования, БД и т.д.). Но напоминаю, что безопасность — это комплексное мероприятие, в чем вы убедитесь позже, а сейчас по пунктам.

Читать дальше →

UI-система или хроники Хаоса

Время на прочтение5 мин
Количество просмотров1.1K

Всем доброго времени суток. Давно я что-то ничего не писал, и вот созрел. Предлагаю сегодня поговорить о ui-системе. Зачем она нужна, когда она нужна, что дает, какие минусы имеет и вообще стоит ли ввязываться в это блуд.  Я часто слышу на разных конференциях, что панацея от всех болезней в бизнесе  —  это наличие дизайн-системы (ui-системы). Что, как только вы достигаете ее, то сроки сокращаются в 100500 раз. Что разработчики не хотят открутить голову дизайнерам, и, наоборот, что качество продукта возноситься до небес, и еще много всего восхитительного об этой сущности. Но так ли все это ? Или это просто розовые очки, которые застилают глаза всех причастных к созданию ui-системы в компании и побочка от постоянных нервных срывов, скандалов, поиска компромиссов и просто выгорания? В этой статье я постарался разобраться, а стоит ли игра свеч или как в анекдоте про нюансы. 

Для начала, чтобы рассуждать, что чем является, нам потребуется разобраться в понятиях и терминах предметной области.  

UI - kit — это полный набор элементов и компонентов, необходимый для сборки большого однородного продукта. Он включает различные кнопки, иконки, поля для ввода данных и т. д. и позволяет сохранять узнаваемость продукта и доверие пользователей. Так мне сказал поисковик, я спорить не стал.

UI component являются основными блоками и элементами для дизайна пользовательского интерфейса. Они предоставляют пользователям способ взаимодействия с вашим веб-сайтом или приложением. Этими компонентами могут являться интерактивный текст и графика, которые сообщат пользователю, что делать дальше.

Читать далее

JAMstack — зачем, почему и за что

Время на прочтение9 мин
Количество просмотров16K

Доброго времени суток. 

Сегодня предлагаю разобраться что такое JAM stack. Каковы его принципы, какие части он имеет и вообще чем отличается от традиционных подходов. Так же в данной статье я поделюсь полезными ссылка где вы сможете найти почти что все что может потребоваться вам при работе с JAM stack.

Читать далее

Как сделать что-то вечное, или как построить Зиккурат

Время на прочтение6 мин
Количество просмотров3.3K

Всем доброго времени суток.

В данной статье я решил поделиться опытом, накопленным за многие годы работы во front-end`е. Как и все вы, я был молод и мечтал создать что-то бессмертное. Ах, как я был молод, и как же я был глуп. Ничего вечного не существует и всё рано или поздно умирает. Однако, можно создать то, что протянет гораздо дольше обычного и даже будет адаптироваться к изменениям какое-то время. Поэтому сегодня предлагаю поговорить о паттернах проектирования для front-end приложений, выборе технологий и о том, чего делать не стоит. В этой статье буду проводить много аналогий со строительной тематикой и причиной тому небезызвестная история: «Если бы программисты строили дома».

Из чего строить? 

Тут как бы все просто, но не всегда явно. Как говорится, давайте разбираться. Суперновые технологии с прорывными идеями сразу мимо. Вы меня спросите почему?  Так давайте пофантазируем на тему того, что вы взяли их в проект: через года полтора сам проект не получил поддержки сообщества, а его создатель забил на него. Вы остались с нерелевантным стеком, отсутствием возможности найти разработчиков для создания кода и дальнейшей поддержки проекта.  Нет обновлений, читай через два года у вас на руках старая коричневая субстанция. 

Посмотрим и на обратную сторону медали: беря сверхнадежное решение, которому много лет, вы обрекаете проект на скорый апдейт или умирание. Знавал я одну крупную компанию, которая использовала java 8. Мотивация звучала так: она надежна как швейцарский нож.  На минуточку, на дворе 2021 год и она устарела не только морально, но и технически (на момент написания, актуальной версией является java 17). 

Читать далее

Микрофронтенд, как не скатиться в ад

Время на прочтение8 мин
Количество просмотров7.5K

Всем доброго времени суток!

Сегодня речь пойдёт о таком страшном звере, как micro-frontend. Знаю: всем эта тема порядком надоела, но просмотрев полтора десятка выступлений осознал, что не все до конца понимают, что это такое и какие сложности следует решать при организации micro-frontend’а. В данной статье я дам универсальные советы, расскажу с чем не стоит связываться и, в целом, как не превратить проект в ад из callback’ов или непонятных интерфейсов. Итак, обо всем по порядку.

Что такое micro-frontend?

Точного определения днём с огнём не сыщешь. Суть в том, что термин micro-frontend подразумевает наличие множества изолированных приложений с интерфейсом, для взаимодействия с ними посредством API. Это позволяет использовать версионированность, не опираясь на рядом стоящие компоненты. Наглядным примером такой реализации являются различные npm-пакеты. Так же micro-frontend подразумевает под собой использование микро-сервисной архитектуры, что в совокупности даёт нам инкапсулированную логику не зависящую от окружения.

Чем был плох предыдущий подход - монолит?

Для того, чтобы понять преимущества micro-frontend’а нам следует разобраться чем именно он отличается от, так называемого, монолита.

Монолитное приложение характеризуется высокой связанностью частей системы. С одной стороны, уменьшает затраты на архитектуру и повышает скорость разработки, с другой - увеличивает стоимость разработки нового функционала, его изменения и поддержки. Из вышеизложенного следует, что логика может быть размазана по приложению и, как следствие, может свести к минимуму переиспользуемость компонентов.

спуститься в ад

Оптимизация или как не выстрелить себе в ногу

Время на прочтение8 мин
Количество просмотров4.5K

Всем доброго времени суток. Сегодня хочу с вами поговорить об оптимизации. Что это такое, зачем она нужна, и самое главное, как сделать так, чтобы потом не было мучительно больно.


Читать дальше →

С чего лучше начать проект или как сделать так, что бы не было потом мучительно больно

Время на прочтение8 мин
Количество просмотров26K

Доброго всем времени суток. Настала очередь поговорить о проектировании проектов. По собственному опыту знаю, что иногда сложнее создать проект с нуля, чем привести в порядок то, что уже есть. Во многом это связано с тем, какое наследие Вы или Вам, оставляют после себя. В этой статье постараюсь рассказать на что стоит обратить особое внимание и предложить краткий план следования.

Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Самара, Самарская обл., Россия
Дата рождения
Зарегистрирован
Активность