Как стать автором
Обновить
181.02
Рейтинг

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Впечатления от прохождения конкурса Яндекс «One Day Offer Frontend»

Разработка веб-сайтов *JavaScript *Алгоритмы *Карьера в IT-индустрии Лайфхаки для гиков

Делюсь впечатлениями как я поучаствовал в конкурсе Яндекс "One Day Offer Frontend". Суть в том, что надо пройти онлайн соревнование - решить за 3часа 5 задач, можно частично. Задачи на алгоритмы и верстку на 5, 45, 70, 90 и 90 баллов. Надо набрать >=100 баллов и тогда будет уже онлайн собес с людьми 25 сентября и оффер в одну из команд Я.Такси, Маркет или Поиск если все будет ОК.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 2.7K
Комментарии 19

Лучшие платные видео-курсы по Vue.js

JavaScript *Учебный процесс в IT VueJS *

Конфликт между Владиленом и Ильей Климовым (популярными авторами контента по JavaScript), казалось бы уже угасший, вчера получил продолжение. Владилен выложил новое видео на своем youtube-канале, в котором ответил на критику своего курса и раскритиковал грязный пиар своего оппонента.

Я не буду выяснять кто прав, а кто виноват.

Вместо этого я предлагаю поговорить про действительно качественный платный контент по Vue.js. И в конце я поделюсь полезными лайфхаками, связанными с этими курсами, которые немного сэкономят ваши деньги.

Читать далее
Всего голосов 13: ↑1 и ↓12 -11
Просмотры 2.8K
Комментарии 6

Адаптивный layout — как переверстать весь проект, не перевёрстывая его

Блог компании Mail.ru Group Разработка веб-сайтов *JavaScript *Интерфейсы *


Вёрстка — это первое, чему обычно учатся начинающие фронтендеры. Но когда вёрстки в вашем проекте становится очень много, поменять что-то — особенно везде и сразу — становится непросто. Переверстать большой проект, как правило, почти нереально. И если начинает казаться, что в какой-то задаче это нужно, вероятно, пришло время для более нестандартных методов.


Всем привет! Меня зовут Юрий Голубев, я разрабатываю frontend в Почте Mail.ru. Сегодня я хочу поделиться опытом того, как мы добавили адаптивности и возможности кастомизации в интерфейс, а заодно — открыли новый для себя способ написания адаптивных компонентов.

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.4K
Комментарии 4

Устойчивость JS-кода к изменениям

JavaScript *Программирование *Анализ и проектирование систем *Проектирование и рефакторинг *

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


В этой публикации я пытаюсь поразмышлять на следующие вопросы: из каких элементов состоит JavaScript-код? каким образом эти элементы взаимодействуют друг с другом? можно ли как-то повысить устойчивость кода к изменениям?

Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 2.6K
Комментарии 2

Два в одном: фронтенд и мобильная разработка на EPAM Meet Up

Блог компании EPAM Блог компании JUG Ru Group JavaScript *Разработка мобильных приложений *Flutter *

Что объединяет фронтендеров и мобильных разработчиков? И те, и другие ругаются на бэкенд!

Если говорить серьёзнее, понятно, что общего много: они работают на клиентской стороне, имеют дело с UI и так далее. Но технологии в вебе и мобильных приложениях различаются, так что технические доклады им нужны разные. А 29 сентября состоится онлайн-митап для тех и других сразу — как это возможно?

Секрет в том, что у митапа будут два параллельных трека (каждый из трёх докладов). Так что фронтендеры смогут узнать полезное на одном, «мобильщики» — на другом. В мобильном треке освещены и iOS, и Kotlin Multiplatform, и Flutter, так что есть интересное для самых разных специалистов. И состав спикеров заметный: например, Виталия Фридмана уже знают многие JS-разработчики, а Александр Денисов отлично известен Flutter-сообществу.

Под катом — подробное описание программы. А тут добавим, что при начале в 19:00 доклады завершатся уже в 21:05, так что полностью выпадать из жизни вечером среды не придётся. Впрочем, можно не только смотреть доклад, но и подключаться к дискуссии после него, и вот сколько времени вы там промучаете спикера вопросами — это больше от вас зависит.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Просмотры 2K
Комментарии 0

Как спарсить любой сайт?

JavaScript *Data Mining *Big Data *Открытые данные *Тестирование веб-сервисов *
Tutorial

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

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

Узнать как
Всего голосов 68: ↑59 и ↓9 +50
Просмотры 26K
Комментарии 81

Разница между useMemo и useCallback подробно

JavaScript *ReactJS *

useCallback используется для мемоизации коллбеков в компонентах, а useMemo используется для мемоизации значений. По своей сути, эти два хука ничем не отличаются и предназначение у них одно и тоже - хранение данных. Строение идентичное, как и в useEffect и useLayoutEffect, первым аргументом идёт коллбек и вторым - массив зависимостей.

Вот несколько вопросов:

Узнать разницу между хуками
Всего голосов 12: ↑2 и ↓10 -8
Просмотры 3.3K
Комментарии 2

Webix SpreadSheet. Полноценная web альтернатива десктопного Excel?

Разработка веб-сайтов *JavaScript *Программирование *Интерфейсы *HTML *
Tutorial

Продолжая тему постепенного перехода от десктопного софта к аналогичным онлайн сервисам, в этой статье я хочу рассказать вам о виджете, который способен потягаться с его величеством "Excel". Речь пойдет о весьма необычном JavaScript решении для полноценной работы с электронными таблицами, которое гибко настраивается и легко интегрируется в любое окружение. Давайте разбираться что же представляет собой SpreadSheet и так ли он хорош на самом деле.

Узнать подробнее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 3.4K
Комментарии 19

11 проектов, которые нужно сделать, чтобы стать мастером фронтенда

Разработка веб-сайтов *Open source *JavaScript *Программирование *.NET *
Перевод

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

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

Читать далее
Всего голосов 18: ↑11 и ↓7 +4
Просмотры 15K
Комментарии 18

Решил 50 задач и ответил на вопрос — Python или JavaScript?

Блог компании Timeweb Python *JavaScript *Программирование *


Привет, друзья!


Я — JavaScript-разработчик. Код пишу в основном на React (иногда на Vue), немного на TypeScript, немного на Node, немного знаю SQL, но...


  • со мной работает много людей, которые пишут код на Python
  • вокруг много разговоров про Python
  • повсюду преподают Python
  • Яндекс любит Python (раньше Гугл тоже его любил, но теперь у него есть Go)

Короче говоря, сложно было не заинтересоваться Python.


Как известно, лучший способ научиться "кодить" — это писать код.


Предлагаю вашему вниманию 50 популярных в сфере программирования задач, решенных с помощью Python и JavaScript.


Цель — сравнить языки на предмет предоставляемых ими возможностей.


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


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

Читать дальше →
Всего голосов 24: ↑15 и ↓9 +6
Просмотры 18K
Комментарии 50

Mongoose + Redis. Автоматизация кэширования за 5 минут

JavaScript *Node.JS *MongoDB *
Tutorial

Mongoose представляет специальную ODM-библиотеку (Object Data Modelling) для работы с MongoDB, которая позволяет сопоставлять объекты классов и документы коллекций из базы данных. 

Redis (Remote Dictionary Server)- это быстрое хранилище данных типа «ключ‑значение» в памяти, активно используемое в разработке с целью повышения производительности сервисов

В рамках данного гайда мы рассмотрим связку Mongoose + Redis и посмотрим, как обеспечить максимально удобное взаимодействие между ними

Читать далее
Всего голосов 5: ↑1 и ↓4 -3
Просмотры 1.9K
Комментарии 4

Что не так с сорсмапами и как с ними не связываться?

Блог компании Timeweb Разработка веб-сайтов *JavaScript *Отладка *WebAssembly *

Здравствуйте, меня зовут Дмитрий Карловский и у меня… посттравматическое стрессовое расстройство после генерации сорсмапов. И сегодня, с вашей помощью, мы будем это лечить путём максимально глубокого погружения в травмирующие события.



Это — текстовая расшифровка выступления на HolyJS'21. Вы можете посмотреть видео запись, прочитать как статью, либо открыть в интерфейсе проведения презентаций.

Читать дальше →
Всего голосов 23: ↑18 и ↓5 +13
Просмотры 3.9K
Комментарии 28

Концепция контроллеров компонента в Angular: часть вторая

Блог компании TINKOFF Разработка веб-сайтов *JavaScript *Angular *TypeScript *

Несколько месяцев назад я написал статью «Как мы делаем базовые компоненты в Taiga UI более гибкими: концепция контроллеров компонента в Angular». Я рассказал о том, как мы добавляем гибкости и избавляемся от дублирования кода с помощью DI. Пришло время продолжить статью.

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

Давайте посмотрим
Всего голосов 20: ↑19 и ↓1 +18
Просмотры 1.8K
Комментарии 5

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

Разработка веб-сайтов *CSS *JavaScript *HTML *
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 5.8K
Комментарии 5

React.js — 5 вещей, которые могут вас удивить

JavaScript *ReactJS *
Перевод

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

Читать далее
Всего голосов 8: ↑5 и ↓3 +2
Просмотры 9.7K
Комментарии 4

Композиция > Наследование за 4 минуты

Блог компании OTUS JavaScript *Программирование *
Перевод

Композиция вместо наследования — это принцип, согласно которому классы должны достигать полиморфного поведения и повторного использования кода путем их композиции, а не наследования от базы.

Наследование

Чтобы лучше понять, почему мы можем предпочесть композицию наследованию, давайте сначала рассмотрим наследование в Javascript, а именно в ES6. Ключевое слово extends используется в объявлениях или выражениях для создания класса, который является дочерним по отношению к другому.

Читать далее
Всего голосов 9: ↑3 и ↓6 -3
Просмотры 2.1K
Комментарии 5

Подробное описание операторов RxJS — Часть 1

JavaScript *Angular *TypeScript *
Перевод

Первое, что нужно понять об операторах, - это почему они существуют. Они существуют, потому что observables как тип позволяют нам обрабатывать события (или значения во времени) как множества или набор вещей.

Говоря более просто, любое четко определенное множество будет иметь операции, которые могут быть выполнены с ним, которые могут преобразовать его в новое множество того же типа. Например, предположим, что у нас есть грузовик с яблоками. Мы могли бы превратить его в грузовик с нарезанными яблоками с помощью машины для нарезки яблок. Та же самая машина для нарезки яблок затем может быть использована на любом грузовике с яблоками, чтобы превратить их в грузовик, загруженный нарезанными яблоками. В этом случае машина для нарезки яблок будет считаться «оператором», который сопоставляет яблоки с ломтиками яблок. Точно так же мы могли бы иметь грузовик с сахаром, мукой, яйцами и т. д. И объединить их с грузовиком с ломтиками яблока, чтобы сделать грузовик с яблочными пирогами, используя какую-то машину для производства пирогов. Итак, в этом примере грузовик - это тип множества, машина для нарезки яблок или машина для изготовления пирогов будут «операторами», а сахар, яблоки, ломтики яблок, яйца и т. д. Будут просто значениями, переносимыми нашим типом множества.

Читать далее
Всего голосов 9: ↑6 и ↓3 +3
Просмотры 3K
Комментарии 0

Возможности функций, возвращающих другие функции в JavaScript

Блог компании OTUS JavaScript *Программирование *
Перевод

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

Поскольку функции можно передавать куда угодно, мы можем поместить их в аргументы функций.

Читать далее
Всего голосов 10: ↑5 и ↓5 0
Просмотры 5K
Комментарии 3

Обход блокировки РКН с помощью магии Service Worker'ов

Информационная безопасность *JavaScript *
Tutorial


Приветствую, Хабр!

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

TL;DR


Суть способа в обыгрывании возможности Service Worker'ов проверять контент на подконтрольных ему страницам. Если воркер не находит определённого текста на странице — происходит редирект. Таким образом вместо заглушки провайдера о том, что сайт заблокирован пользователь переходит на незаблокированный домен.
Читать дальше →
Всего голосов 37: ↑34 и ↓3 +31
Просмотры 20K
Комментарии 31

SSR для Bitrix с Vue.js без Nuxt.js: как не потерять поисковую индексацию

Блог компании Агентство AGIMA JavaScript *

Привет, Хабр!

Я Саша Шутай, backend-тимлид в компании AGIMA. Сейчас расскажу, что делать, если на проекте Bitrix сожительствует с Vue.js и поисковые боты не видят контента вашего сайта. Рассмотрим технологию серверного рендеринга страниц с помощью Puppeteer, как это всё настроить и быстро запустить для любого веб-приложения.

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 3.4K
Комментарии 7

Вклад авторов