Обновить
512K+

Веб-разработка *

Делаем веб лучше

323,21
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Исчезающие фреймворки

Время на прочтение18 мин
Охват и читатели48K
Почему мы используем фреймворки? Angular, React и Vue помогают нам строить сложные веб-приложения: структурировать код, управлять состоянием и разрабатывать сложные интерфейсы. За последнее десятилетие фреймворки стали стандартом. Дорогим стандартом. С тех пор как фреймворки вошли в обиход, JS сильно раздуло. Страниц весом несколько мегабайт становится больше, и существенная часть этого объема — фреймворк сам по себе. Кажется, это немного, но для пользователя критично — на телефоне или слабом интернете страница может даже не загрузиться. Это проблема.



Кроме лишнего веса у классических фреймворков много других минусов и они подходят не для всех проектов. Эти проблемы решены в «исчезающих фреймворках». Что это за новый тренд, почему это не «еще один JS-фреймворк», а хорошая идея и как таинственные фреймворки могут улучшить наши приложения, расскажет Павел Малышев.

Пишем чистый и масштабируемый JavaScript-код: 12 советов

Время на прочтение10 мин
Охват и читатели34K
Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов.

Современные веб-приложения сильно зависят от JavaScript. Особенно это касается одностраничных приложений (Single-Page Application, SPA). С появлением библиотек и фреймворков, таких как React, Angular и Vue, JavaScript стал одним из основных строительных блоков веб-приложений.



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

Автор статьи, перевод которой мы сегодня публикуем, хочет поделиться советами по написанию чистого JavaScript-кода. Он говорит, что статья рассчитана на JS-программистов с любым уровнем подготовки. Но особенно полезной она будет для тех, кто знаком с JavaScript хотя бы на среднем уровне.
Читать дальше →

PHP-Дайджест № 156 (6 – 20 мая 2019)

Время на прочтение3 мин
Охват и читатели14K

Свежая подборка со ссылками на новости и материалы. В выпуске: PHPRussia, PHP fwdays'19, WordPress 5.2, о PHP в 2019, новости из PHP Internals, порция полезных инструментов, и многое другое.

Приятного чтения!


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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №365 (13 — 19 мая 2019)

Время на прочтение3 мин
Охват и читатели13K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.


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

Phoenix LiveView: когда вам больше не нужен JavaScript*

Время на прочтение4 мин
Охват и читатели16K
* для создания динамической страницы

Не так давно 12.12.2018 был анонсирован выход новой библиотеки для фанатов phoenix framework под названием Phoenix LiveView. Я бы хотел поделиться с вами впечатлениями от ее использования и phoenix в целом, а в следующей статье попробовать написать простую браузерную игру. Часть статьи с личным мнением не является исключительно правдивой, я попробую объяснить преимущества веб-разработки на примере phoenix против php


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

Создание таблиц в дизайн системе Figma и реализация в Storybook (React)

Время на прочтение5 мин
Охват и читатели12K


В предыдущей статье на тему дизайна таблиц в Фигме мы выяснили, что базовый элемент создания любого data grid — это компонент ячейки, внутри которого спрятано все необходимое для того, чтобы оставаться в одном экземпляре и строить таблицы ячейка-за-ячейкой. Теперь поговорим о её структуре: какие элементы вложены, случаи использования, рассмотрим темификацию таблиц через токены-цвета. И напоследок расскажу о передаче спецификаций разработчикам и интеграцию таблиц в React/Angular фреймворки прямиком из Figma дизайн-системы. Пока руками, ибо будущее всё еще где-то рядом.

Поехали! Начну с демонстрации бесполезных, но прикольных эффектов кастомизации всей таблицы через главную мастер-ячейку:
Читать дальше →

Сделка на $39 млн: почему создатели опенсорсной СУБД решили заняться мобильными разработками

Время на прочтение4 мин
Охват и читатели9.3K
В конце апреля MongoDB объявили о покупке Realm — кроссплатформенной мобильной базы данных. В сегодняшнем материале — о том, как компании подошли к сделке и что планируют.

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

Serverless по стоечкам

Время на прочтение8 мин
Охват и читатели16K

Serverless ― это не про физическое отсутствие серверов. Это не «убийца» контейнеров и не мимолетный тренд. Это новый подход к построению систем в облаке. В сегодняшней статье коснемся архитектуры Serverless-приложений, посмотрим, какую роль играет провайдер Serverless-услуги и open-source проекты. В конце поговорим о вопросах применения Serverless.
Читать дальше →

Как мы при помощи WebAssembly в 20 раз веб-приложение ускорили

Время на прочтение5 мин
Охват и читатели16K
image

В этой статье рассматривается кейс по ускорению браузерного приложения через замену вычислений JavaScript на WebAssembly.
Читать дальше →

Виртуальный куб — вместо OLAP

Время на прочтение9 мин
Охват и читатели8.9K
Когда делаешь наоборот и получаешь то же...

Имея задачу аналитической (вычислительной/агрегирующей) обработки данных, приходится искать компромисс между отзывчивостью, скоростью и удобством.


Одни системы хорошо индексируют и находят, другие умеют быстро рассчитывать и агрегировать данные, третьи просты. Где-то приходится организовывать предварительную загрузку и индексирование данных со всеми сопутствующими трудностями, а где-то пользователю предоставляется абстракция его модели исходных и агрегированных данных поверх встроенных или внешних физических хранилищ и баз данных, используемых непосредственно во время вычислений. В любом случае, пользователь, от программиста до аналитика, должен проделать относительно большую работу, начиная с подготовки сырых данных и составления запросов, модели вычислений, заканчивая визуальным оформлением результата на виджетах, конечно же "Sexy" – красивых, отзывчивых и понятных, – иначе вся проделанная работа пойдет насмарку. И часто, как назло, пройдя через муки выбора решения, мы замечаем, как простая и понятная на первый взгляд задача вырастает в жуткого монстра, с которым имеющимися средствами бороться бесполезно, и надо срочно что-то изобретать – велосипед "с блэкджеком и шлюхами"©. Наш велосипед поехал, даже неплохо объезжает кочки и справляется с препятствиями, о которых раньше можно было только гадать.


Ниже будет описана одна сторона оригинального внутреннего устройства вымышленного "Кубика-Рубика" – вычислительная обработка для интерактивной визуализации данных.

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

PHP-модуль для работы с иерархическими данными в InterSystems IRIS

Время на прочтение7 мин
Охват и читатели2.5K
image PHP с начала своих времён славен (и критикуем) тем, что поддерживает интеграцию с массой библиотек, а также с практически со всеми СУБД существующими на рынке. Однако в силу каких-то странных причин в нём не было поддержки иерархических баз данных на глобалах.

Глобалы — это структуры для хранения иерархической информации. Они чем-то напоминают базы «key -> value» только с тем отличием, что ключ может быть многоуровневым:
Читать дальше →

Python — помощник в поиске недорогих авиабилетов для тех, кто любит путешествовать

Время на прочтение15 мин
Охват и читатели31K
Автор статьи, перевод которой мы публикуем сегодня, говорит, что её цель — рассказать о разработке веб-скрапера на Python с использованием Selenium, который выполняет поиск цен на авиабилеты. При поиске билетов используются гибкие даты (+- 3 дня относительно указанных дат). Скрапер сохраняет результаты поиска в Excel-файле и отправляет тому, кто его запустил, электронное письмо с общими сведениями о том, что ему удалось найти. Задача этого проекта — помощь путешественникам в поиске наиболее выгодных предложений.



Если вы, разбираясь с материалом, почувствуете, что потерялись — взгляните на эту статью.
Читать дальше →

Лучшая приоритизация HTTP/2 для ускорения веба

Время на прочтение11 мин
Охват и читатели13K

HTTP/2 обещал заметно ускорить веб, и Cloudflare давным-давно развернула доступ по HTTP/2 для всех клиентов. Но одна особенность HTTP/2, приоритизация, не соответствовала ожиданиям. Не потому, что она принципиально сломана, а из-за реализации в браузерах.

Сегодня Cloudflare предлагает изменить приоритизацию HTTP/2, что даёт нашим серверам контроль над решениями о приоритизации, которые действительно заметно ускоряют интернет.

Исторически именно браузер контролирует, как и когда загружать веб-контент. Сегодня для всех платных планов мы вносим радикальные изменения в эту модель. Они передают контроль напрямую владельцу сайта. На вкладке «Скорость» в панели мониторинга Cloudflare клиенты могут включить «Расширенную приоритизацию HTTP/2»: она переопределяет настройки браузера по умолчанию на улучшенную схему планирования, что значительно ускоряет доступ для посетителей (в некоторых случаях мы видели ускорение на 50%). С воркерами Cloudflare владельцы сайтов могут пойти ещё дальше и полностью подобрать настройки под свои конкретные нужды.
Читать дальше →

Ближайшие события

Улучшения диагностики в .NET Core 3.0

Время на прочтение5 мин
Охват и читатели12K
В .NET Core 3.0 мы представляем набор инструментов, которые используют новые возможности среды выполнения .NET, которые упрощают диагностику и решение проблем с производительностью.

Эти возможности помогут вам ответить на некоторые распространенные вопросы диагностики, которые могут у вас возникнуть:

  1. Является ли мое приложение работоспособным?
  2. Почему мое приложение имеет аномальное поведение?
  3. Почему мое приложение крашится?


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

Технологические тренды веб-разработки 2019

Время на прочтение8 мин
Охват и читатели25K

Введение


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


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

Почему Do-Not-Track может стать обязательным

Время на прочтение5 мин
Охват и читатели5.8K

В США предлагают обязать технологические компании учитывать согласие пользователей на передачу их персональных данных рекламным сетям.



/ фото Tom Roberts — Unsplash

Do-Not-Track (DNT) позволяет пользователю сети дать или отозвать как согласие на передачу третьим лицам данных о его действиях на странице так и на их применение в онлайн-рекламе.

По умолчанию DNT принимает значение null, что свидетельствует об отсутствии предпочтений.
Читать дальше →

ok.tech: frontend meetup

Время на прочтение2 мин
Охват и читатели2.8K


UPD: по форс-мажорным обстоятельствам, митап перенесен на 2 июля.

2 июля в петербургском офисе Одноклассников пройдет ok.tech: frontend meetup. Вместе с коллегами из OK.ru, Яндекса и Mail.Ru Cloud Solutions поговорим про тестирование на основе свойств, эволюцию подходов работы с текстами, познакомимся с новой библиотекой от создателя Emmet Сергея Чикуёнка — EndorphinJS, и обсудим переход фронтенда поисковых сервисов Яндекса на React.

Презентации

Под катом тезисы выступлений и расписание.
Читать дальше →
Это наш первый HighLoad++ в Питере, и весьма успешный. Два дня выступлений спикеров, сотни литров выпитого кофе, семинары, митапы, интерактивы и новые знакомства. В стенах Park Inn Пулковская нам удалось собрать тысячу участников, которые проявили впечатляющую активность. Ниже — рассказ о том, чем запомнилась крупнейшая конференция разработчиков высоконагруженных систем Saint HighLoad++ 2019, а также ключевые моменты докладов.
Подробности – под катом

MODX-Дайджест #5 (22 апреля – 13 мая 2019)

Время на прочтение5 мин
Охват и читатели2.2K

MODX-Дайджест #5, 22 апреля – 13 мая 2019


Свежая подборка новостей о MODX за последние 3 недели. В выпуске: возобновление встреч MAB, все процессоры переведены в новый формат, активная работа над рефакторингом и документацией, обновления дополнений и интересные заметки.


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


Приятного чтения!


Thanks a lot to Mark Hamstra for supporting me and my work (Patreon).


А так же спасибо всем тем, кто поддерживает переводя деньги на яндекс кошелек. Пишите ваши имена в комментариях к переводу, чтобы я мог вас поблагодарить персонально.

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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №364 (6 — 12 мая 2019)

Время на прочтение4 мин
Охват и читатели11K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.


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