Как сопоставлять скобки без Regex
#почитать
Вы можете подумать, что самый простой способ решить эту задачу — использовать регулярные выражения (RegExp). Возможно, для простых случаев это подойдет, но вскоре выражение станет слишком сложным и будет скорее создавать проблемы, чем решать их.
На самом деле, самый простой способ сопоставления открывающих и закрывающих символов — это использование стека. Стек — это простейшая структура данных. У нас есть две основные операции: push — для добавления элемента в стек и pop — для удаления элемента.
Это похоже на стопку книг. Последняя книга, которую вы положили в стопку, будет первой, которую вы уберете.
С помощью стека легче обрабатывать (парсить) символы, которые имеют начало и конец, например XML-теги или простые круглые скобки.
⏱ Читать
#почитать
Вы можете подумать, что самый простой способ решить эту задачу — использовать регулярные выражения (RegExp). Возможно, для простых случаев это подойдет, но вскоре выражение станет слишком сложным и будет скорее создавать проблемы, чем решать их.
На самом деле, самый простой способ сопоставления открывающих и закрывающих символов — это использование стека. Стек — это простейшая структура данных. У нас есть две основные операции: push — для добавления элемента в стек и pop — для удаления элемента.
Это похоже на стопку книг. Последняя книга, которую вы положили в стопку, будет первой, которую вы уберете.
С помощью стека легче обрабатывать (парсить) символы, которые имеют начало и конец, например XML-теги или простые круглые скобки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤1🔥1
Ключи в JavaScript фреймворках и библиотеках
#почитать
Зачастую, на собеседованиях спрашивают про эту тему и нередко выходят ответы по типу: "чтобы предотвратить неконтролируемое поведение" или "их нужно указывать, т.к. это что-то на подобие уникальных идентификаторов" и др. Конечно, данные ответы с одной стороны - правильные, но главного они не отражают.
Я постараюсь внести небольшую ясность в эту тему показав то, как эта концепция работает на реальных примерах и какой код за ней стоит.
⏱ Читать
#почитать
Зачастую, на собеседованиях спрашивают про эту тему и нередко выходят ответы по типу: "чтобы предотвратить неконтролируемое поведение" или "их нужно указывать, т.к. это что-то на подобие уникальных идентификаторов" и др. Конечно, данные ответы с одной стороны - правильные, но главного они не отражают.
Я постараюсь внести небольшую ясность в эту тему показав то, как эта концепция работает на реальных примерах и какой код за ней стоит.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
Media is too big
VIEW IN TELEGRAM
Есть понимание, как лекции, матан и отчеты приведут тебя к высокой зарплате и стабильной работе в IT? Как диплом превратится в необходимый опыт работы?
Будучи студентом я также надеялся, что вакансия за 300к подвернется как-то сама. К сожалению, устройство на работу в IT — это отдельный навык, которому в универе не научат. Заниматься этим нужно уже сейчас, чтобы после выпуска не остаться бомжом под мостом.
В субботу 5 октября будет День открытых дверей в IT. Это открытый звонок для всех желающих, где ТОЛЬКО работающие айтишники ответят на все твои вопросы. После него у тебя не будет сомнений о старте карьеры в IT.
Вот телеграмм чат вебинара, там будет вся инфа
(Все бесплатно, прогревов не будет или мы вернем деньги)
Будучи студентом я также надеялся, что вакансия за 300к подвернется как-то сама. К сожалению, устройство на работу в IT — это отдельный навык, которому в универе не научат. Заниматься этим нужно уже сейчас, чтобы после выпуска не остаться бомжом под мостом.
В субботу 5 октября будет День открытых дверей в IT. Это открытый звонок для всех желающих, где ТОЛЬКО работающие айтишники ответят на все твои вопросы. После него у тебя не будет сомнений о старте карьеры в IT.
Вот телеграмм чат вебинара, там будет вся инфа
(Все бесплатно, прогревов не будет или мы вернем деньги)
👍7❤1🔥1
#посмотреть
Принципиальные различия и сходства двух подходов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2❤1
React 19: конец эры повторных рендерингов
#почитать
Новейшее дополнение к React — компилятор, заменяющий транспилятор, применяется в React 19. В React 18 и ниже использовался транспилятор, который при изменении состояния перерисовывал весь компонент. В отличие от него, компилятор возвращает мемоизированный код, устраняя ненужный повторный рендеринг и улучшая производительность приложений React.
⏱ Читать статью
#почитать
Новейшее дополнение к React — компилятор, заменяющий транспилятор, применяется в React 19. В React 18 и ниже использовался транспилятор, который при изменении состояния перерисовывал весь компонент. В отличие от него, компилятор возвращает мемоизированный код, устраняя ненужный повторный рендеринг и улучшая производительность приложений React.
Please open Telegram to view this post
VIEW IN TELEGRAM
😱10👍2🔥1
#посмотреть
На примере билда персонажа (aka проекта) в RPG простым языком разберем, какие инструменты (aka артефакты) мы можем использовать для построения архитектуры проекта. Рассматриваем готовые архитектурные подходы (aka готовые билды). Каждый инструмент изучаем со стороны баффов и дебаффов для проекта. Также рассматриваем комплекты артефактов (aka инструментов), которые в сочетании друг с другом образуют новые баффы или нейтрализуют определенные дебаффы друг друга. В конце Александр показывает небольшой «гайд», как нам прокачивать нашего персонажа (развивать проект) в зависимости от места спавна (требований и ограничений от бизнеса).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🤔2🔥1
Новые значения и функции в CSS
#почитать
▪️Изменения в функции attr()
▪️Операции с внутренними значениями с помощью calc-size()
▪️Новая функция first-valid()
▪️Новое семейство функций *-mix()
▪️Новое семейство функций *-progress()
▪️Функции рандомизации в CSS
▪️Новые функции sibling-*
▪️Новая функция toggle()
▪️Новая функциональная нотация для аргументов
▪️Расширение до типа позиции
⏱ Читать статью
#почитать
▪️Изменения в функции attr()
▪️Операции с внутренними значениями с помощью calc-size()
▪️Новая функция first-valid()
▪️Новое семейство функций *-mix()
▪️Новое семейство функций *-progress()
▪️Функции рандомизации в CSS
▪️Новые функции sibling-*
▪️Новая функция toggle()
▪️Новая функциональная нотация для аргументов
▪️Расширение до типа позиции
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍2❤1
Истории и боли frontend-разработчика
#почитать
Пятничное.
⏱ Читать статью
#почитать
Пятничное.
В начале карьерного пути я был юнцом с битриксом под ногтями и с JQuery в сердце. Тогда для меня было нормальным передавать настройки фронтенда через data-атрибуты и посылать ajax запросы не за модным JSON, а за готовым HTML-кодом. Тем временем в соседнем отделе матёрые фронтендеры писали на хайповом React, который умел много чего удивительного, в том числе и переход по страницам без перезагрузки. Я захотел так же и пошел советоваться с опытными фронтендерами: «А я могу просто перехватывать клик по ссылке, сделать ajax запрос на новую страницу за всем, что лежит между header и footer и вставлять на место текущего контента, подменяя историю?» Ребята посмеялись, на меня стали косо посматривать… Теперь же хайпует htmx, который по сути делает то же самое. Он будто создан для битрикса.
Мораль басни? Она в том, что простые решения самые лучшие — не надо тянуть какую-то технологию, просто потому что «ну, это ж все сейчас так делают». Например, те же микросервисы или микрофронты приносят кучу боли, и писать монолит не зазорно.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
Как удаление isNumber из зависимостей сэкономило 440 Гб трафика
#почитать
Концепция isNumber проста: функция, в аргументе которого должна быть определяемая переменная, должна вывести нам true или false; true если да, false если нет.
⏱ Читать статью
#почитать
Концепция isNumber проста: функция, в аргументе которого должна быть определяемая переменная, должна вывести нам true или false; true если да, false если нет.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2❤1
Рендеринг компонентов React
#почитать
Как React понимает, что пора обновить DOM-дерево? Как ререндеринг влияет на производительность и как ее улучшить? Что происходит под капотом React, когда мы решаем отобразить компонент на странице? Какую роль в этом всем играют хуки? Чтобы ответить на эти вопросы необходимо разобраться с такими понятиями, как рендеринг, жизненный цикл компонента, реконциляция, побочные эффекты и с некоторыми другими.
⏱ Читать статью
#почитать
Как React понимает, что пора обновить DOM-дерево? Как ререндеринг влияет на производительность и как ее улучшить? Что происходит под капотом React, когда мы решаем отобразить компонент на странице? Какую роль в этом всем играют хуки? Чтобы ответить на эти вопросы необходимо разобраться с такими понятиями, как рендеринг, жизненный цикл компонента, реконциляция, побочные эффекты и с некоторыми другими.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🥴2🔥1
Двойной ползунок с помощью плагина NoUiSlider
#почитать
Создание двойного ползунка (double range slider) с помощью NoUiSlider — это отличное решение, когда нужно дать пользователям возможность выбирать диапазон значений, например, для фильтрации цен или других числовых параметров.
⏱ Читать статью
#почитать
Создание двойного ползунка (double range slider) с помощью NoUiSlider — это отличное решение, когда нужно дать пользователям возможность выбирать диапазон значений, например, для фильтрации цен или других числовых параметров.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2🔥1
Типы или интерфейсы в TypeScript?
#почитать
Когда использовать типы, а когда интерфейсы?
Можно взять за основу правило: использовать типы по умолчанию, а интерфейсы, когда это необходимо.
⏱ Читать статью
#почитать
Когда использовать типы, а когда интерфейсы?
Можно взять за основу правило: использовать типы по умолчанию, а интерфейсы, когда это необходимо.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👎2
#посмотреть
Расскажу, как можно задавать цвета в CSS разными способами и зачем это может быть нужно. Покажу, как навести порядок в цветах вашего проекта и привести огромное количество оттенков к заданной палитре. Объясню, как в этом могут помочь новые форматы указания цветов и функции работы с ними из последней спецификации CSS.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2
Руководство по использованию Vite в React
#почитать
Когда начинаете новый проект React, выбор правильных инструментов может сильно повлиять на рабочий процесс. Хотя такие инструменты, как Webpack, широко используются уже много лет, новые варианты, такие как Vite, предлагают более быстрые и эффективные альтернативы.
⏱ Читать статью
#почитать
Когда начинаете новый проект React, выбор правильных инструментов может сильно повлиять на рабочий процесс. Хотя такие инструменты, как Webpack, широко используются уже много лет, новые варианты, такие как Vite, предлагают более быстрые и эффективные альтернативы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👎2❤1🔥1
Концепция временного View state в JavaScript
#почитать
В данной статье речь пойдёт о достаточно необычной теме, информацию о которой я почему-то не нашёл, хотя она достаточно полезна в современных JavaScript фреймворках и библиотеках для создания пользовательских интерфейсов, ведь, в некоторых случаях, применение концепции может помочь ускорить работу с DOM в несколько раз.
⏱ Читать статью
#почитать
В данной статье речь пойдёт о достаточно необычной теме, информацию о которой я почему-то не нашёл, хотя она достаточно полезна в современных JavaScript фреймворках и библиотеках для создания пользовательских интерфейсов, ведь, в некоторых случаях, применение концепции может помочь ускорить работу с DOM в несколько раз.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍1
Создаем динамические веб-сайты с
помощью PHP, MySQL, JavaScript,
CSS и HTML5
Автор: Никсон Робин
Год издания: 2023
#html #javascript #css #ru
Скачать книгу
помощью PHP, MySQL, JavaScript,
CSS и HTML5
Автор: Никсон Робин
Год издания: 2023
#html #javascript #css #ru
Скачать книгу
😁7👍3❤1