Обновить
512K+

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

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

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

Рендеринг в веб

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

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

Читать далее

Красивое радио для браузера

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

Прогуливаясь по просторам Интернета, я случайно наткнулся на довольно интересную разработку. Называется "Russian Radio Player". Пользователь выбирает станцию для прослушивания, слушает музыку, а на экране в это время сменяют друг друга красивые картинки. Внешний вид мне очень понравился, но так как мне больше по душе космическая тематика, то я решил этот плеер переделать под себя. Что из этого всего получилось читайте в этом посте.

Читать далее

Apollo GraphQL React Social App

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


Доброго времени суток, друзья!

В поисках вдохновения наткнулся на этот замечательный туториал, посвященный разработке «социального» клиент-серверного приложения на MERN + GraphQL.

Решил его расшифровровать и немного доработать для заинтересованных. Расшифровка означает, что каждая строка кода снабжена подробным комментарием. Доработка состоит в добавлении аватара пользователя и исправлении нескольких критичных для работы приложения ошибок.

Код проекта находится здесь.

Основные возможности приложения


  • Регистрация/авторизация пользователей
  • Добавление/удаление постов
  • Лайк/дизлайк постов
  • Добавление/удаление комментариев к постам
  • Отображение количества лайков и комментариев

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

Wasp — DSL для разработки веб-приложений

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


В интернете кто-нибудь постоянно делает инструменты для упрощения веб-разработки. Оставим дискуссию об изначально низкой сложности и вайтишниках, упрощение любого рабочего процесса это в принципе скорее хорошо, чем плохо. Вот только молодые разработчики и стартапы в основном пачками производят всякие генераторы бойлерплейта и low-code инструменты, которые тянут за собой лишний слой абстракции и потенциальный источник ломающегося билда. Из-за большого разнообразия они обычно не предлагают уникальных фишек и остаются без внимания, после чего горе-стартаперы бросают развитие и поддержку чтобы пересесть на другой источник хайпа. В общем, для желающих войти в эту нишу ситуация плачевная, но не безысходная — тому примером Wasp, молодой DSL-язык, который старается упростить разработку на всех этапах вплоть до деплоя.
Читать дальше →

14 полезных инструментов, ускоряющих и упрощающих веб-разработку

Время на прочтение4 мин
Охват и читатели36K
Я занимаюсь разработкой сайтов уже много лет и не верю в то, что если буду держать в секрете используемые мной инструменты, это даст мне серьёзное преимущество на рынке труда.

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



Здесь я расскажу о 14 инструментах, которые помогают мне в решении моих рабочих задач.
Читать дальше →

Ahead-of-Time компиляция и Blazor

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

В .NET 6 запланирована поддержка AOT компиляции для Blazor WebAssembly приложений. Давайте попробуем запустить в Preview 2 версии.

Анонса и инструкций пока что нету. Поэтому и решено написать этот пост.

Читать далее

Дайджест свежих материалов из мира фронтенда за последнюю неделю №459 (15 — 21 марта 2021)

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

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

Делаем интерактивный Big Mac Index на React и Quarkly

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

Привет! Для начала процитирую страницу из Википедии, да будет здоров Джимми Уэйлс и все редакторы, поддерживающие свободную энциклопедию. Согласно ней, индекс бигмака — это неофициальный способ определения паритета покупательной способности. Если проще, этот индекс довольно наглядно показывает уровень цен в стране, ведь в основе стоимости бигмака: две мясных котлеты гриль, специальный соус, сыр, огурцы, салат и лук, всё на булочке с кунжутом… Кроме этого, конечно же, в ценник заложены аренда помещений и оборудования, рабочая сила и многие другие факторы.


Важно и другое: милые сердцу многих рестораны с желтой буквой «M» имеют обширнейшую сеть, что дает возможность сравнить цены почти по всему миру. Исследования ведутся с 1986 года и постоянно актуализируются журналом «The Economist».


Мы визуализировали имеющиеся в свободном доступе данные и собрали простое приложение, используя React и наш проект Quarkly.



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

Фреймворк Webix Jet глазами новичка. Часть 1. Композиция и навигация

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

В предыдущих статьях из цикла JavaScript библиотека Webix глазами новичка вы узнали как создать приложение на основе компонентов Webix UI. В этой публикации я хочу подробно рассмотреть создание аналогичного приложения с использованием архитектуры и возможностей фреймворка Webix Jet и рассказать о его преимуществах. Статья будет полезна как для тех кто знаком с Webix UI, так и для новичков, ведь код библиотеки интуитивно понятен и удобен в использовании.

Узнать подробнее

Юридически значимый электронный документ (для РК) из веб формы без серверного кода

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

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


  • необходимо добавить на сайт предприятия возможность подавать официальные заявки или обращения;
  • необходимо добавить в веб интерфейс портала возможность подписывать договор присоединения;
  • необходимо реализовать онлайн приемную.

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


Речь будет идти о сертификатах ЭЦП, выпущенных НУЦ РК.

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

CQRS — что делать с кодом, который нужно использовать сразу в нескольких обработчиках?

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


При использовании архитектуры в стиле вертикальных слайсов рано или поздно встает вопрос «а что делать, если появляется код, который нужно использовать сразу в нескольких хендлерах?»


TLDR: нужно создать промежуточный слой обработчиков и добавить специализированные маркерные интерфейсы, чтобы было ясно, какие обработчики — холистические абстракции, а какие нет.

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

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

RBAC в Angular-приложениях

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

«Каждый уважающий себя блогер должен написать статью о RBAC. Каждый уважающий себя читатель должен написать в комментарии, что всё равно ничего не понял». С этой фразы началось мое знакомство с RBAC. И я имел прекрасную возможность узнать, что всё так и есть.

Но теперь я разобрался с тем, что RBAC такое, и готов рассказать вам. Более того, я создал на основе RBAC собственный продукт, позволяющий использовать RBAC-паттерн в Angular-приложениях. Но обо всём по порядку.

Читать далее

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

ML в тестировании, TestOps, воркшопы: программа конференции Heisenbug

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


Область тестирования продолжает активно развиваться — с появлением новых инструментов, обновлением старых, а также появлением в IDE поддержки для начала автоматизации тестирования. «Теоретические аспекты-то остаются теми же», — скажете вы. И будете правы. Но, к сожалению, сделать тестирование так же идеально, как описано в блоге Мартина Фаулера, получается не у всех и по сей день. А более современный инструментарий для написания селекторов, кода, интеграции с CI/CD, удобные плагины позволяют приблизиться к «совершенному» и делать все удобнее и быстрее.

«Какие еще новые инструменты, плагины? О чем он говорит?», — возможно, спросите вы. Давайте поясню. А точнее, пояснят программный комитет и спикеры Heisenbug: в программе конференции, которая пройдёт 6-9 апреля в онлайне, есть ответы и на этот вопрос, и на многие другие.
Что там у вас?

От внедрения зависимостей к отказу от зависимостей

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

У функционального программирования есть одна большая проблема — о нем очень непросто рассказывать. Попытки донести людям что-то с использованием терминов типа «зигохистоморфный препроморфизм» легко сводят неподготовленного слушателя с ума.



Марк Симан — автор популярной книги Dependency Injection in .NET, автор бесчисленных блог-постов. На DotNext 2017 Moscow Марк рассмотрел применение dependency injection в классическом объектно-ориентированном дизайне и объяснил, почему его необязательно (даже нежелательно) использовать в функциональном программировании. Следом за этим он наглядно показал, как использование приемов функционального программирования устраняет необходимость в использовании моков и стабов в модульном тестировании и позволяет полностью выбросить мусор из прямого перечисления зависимостей.


Под катом — перевод доклада и видео. Далее повествование будет от лица Марка.

iresine, нормализация данных на клиенте

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

Нормализация. От нее мы или страдаем или пишем собственное решение с множеством проверок на существование сущности в общем хранилище. Попробуем разобраться и решить эту проблему!

Читать далее

Как дойти до CQRS, если у тебя PHP

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

Недавно я посмотрел доклад «Как перестать бояться CQRS». Вроде бы простая идея, но есть нюансы. Так и появился этот выпуск.

CQRS vs CQS (не перепутай)

Читать далее

Теория программирования: пакетные принципы и метрики

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


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

Минимальное PWA

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

Какие характеристики должны быть у web-приложения, чтобы соответствовать критерию "прогрессивное"? Понятно, что, как и обычные web-приложения, прогрессивные строятся на базе "большой тройки" web-технологий - HTML/CSS/JS. Но что именно делает web-приложения прогрессивными?

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

Читать далее

Вторая жизнь пыльного Андроида

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

Три мысли всё не давали мне жить спокойно:

1) есть ноутбук, но для работы нужен второй экран
2) давно мечтаю о пульте управления для Photoshop в дополнение к клавиатуре
3) на полках пылятся устаревшие гаджеты, которые продавать глупо, а выкидывать жалко

Решим одно за счёт другого