Диджитализируй!
27.6K subscribers
459 photos
54 videos
11 files
530 links
Авторский канал Алексея Голобурдина о разработке ИТ систем и прочем важном

ПРАВИЛА — https://xn--r1a.website/t0digital/200

ЛАЙВ-КАНАЛ — @smthisgoingon

Дать много деняк — sterx@rl6.ru

Роскомнадзор: https://vk.cc/cJmDDB
Download Telegram
Ботаню реактушку. Написал на React один небольшой проект в прошлом году, но сейчас хочу углубиться. Как изучаю?

1. Читаю книгу. Книга хорошая, хотя перевод неидеальный и в паре мест вижу ошибки/опечатки, но они очевидны и не вводят в заблуждение. Понравилось, что в начале книги есть глава про то, что появилось в ES6. Так-то на JS я и в древнем году 2009м вполне программил, но за новшествами с ES2015=ES6 плотно не следил. Освежить было полезно. Про функциональное программирование, чистые функции, императивный и декларативный подход — написано хорошо.

Принцип выбора книги — ищу то, что есть, смотрю отзывы, смотрю оглавление. В идеале мне нравится поехать в большой книжный и там полистать книгу перед покупкой, чтобы купить то, что понравилось. Эта книга у меня есть в бумаге и я листал её перед покупкой, хотя сейчас читаю с цифры, так как бумажная версия не со мной. Читать с айпада — ок. Но интернет на планшете может отвлекать, иногда стоит отключить.
#IT #frontend #books #javascript #interesting
👍74🔥4👎2
2. Использую на айпаде приложение GoodNotes для заметок по ходу чтения. PDF с книгой там же подгружен. Удобно. Хотя он по-моему платный и возможно сейчас с продлением будут проблемы, не знаю. Можно писать и на бумаге в блокноте, важно, чтобы самому было приятно вести этот процесс, пусть это будет хороший блокнот или тетрадь и удобная ручка.

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

3. Читаю официальную документацию. У реакта она сейчас а) хороша б) переведена на много языков, в том числе на русский. Действительно отличная документация, во всяком случае для изучения библиотеки.

Скажем, документация у Python мне не нравится. Использовать как справочник её можно, но, кажется, не более того, изучать гораздо приятнее по книге.

Документация по Rust отличная — там полноценная структурированная книга, заходишь и сразу понятно, что куда идти читать.

По PHP неплохая дока была благодоря тому, что по любой функции можно получить доступ сразу по урлу — например, хочешь посмотреть доку/примеры по функции strip_tags, пишешь php.net/strip_tags и попадаешь сразу на доку по этой функции. Не надо гуглить или пользоваться поиском по сайту. И помимо доки внизу комменты с рейтингом, там многое можно было почерпнуть. Хорошая дока.

И вот по React хорошая дока с точки зрения изучения библиотеки, стоит почитать.

4. Смотрю большой материал на freeCodeCamp. Не уверен, что посмотрю его весь, но смотрю по наличию времени в отрыве от книги и доки, где-то на нормальной скорости, где-то на 2x. Вообще ютуб на 1.5-2x это отличное изобретение.

5. Буду читать чужой код и общаться с коллегами.

Резюмирую — использую все возможные каналы получения информации. Кто-то говорит, что изучить новую технологию это просто вот тут что-то в одном месте почитать и сразу молодец. Я так не думаю. Надо посмотреть/почитать много где, сопоставить полученную информацию, уложить её в голове и на практике. Тогда всё устаканится хорошо и важное отфильтруется от менее важного.
#IT #frontend #books #javascript #interesting #rust
👍150🔥6🤔1
Решали сейчас с коллегой вопрос по интеграции кода в Тильду. Кто не в курсе — это такой SaaS конструктор сайтов, приятный в простом использовании, но в вопросах интеграции чего-то на фронтенде не всегда очевидный. Детали реализации фронта не документированы, сервис не расчитан, что кто-то будет на фронтенде его логику с JS дорабатывать.

Задача была навесить свою JS логику сразу после отправки данных на сервер и отображения некоторого div'а. Этого div'а в момент начальной отрисовки страницы в дереве нет. Когда и кто его добавляет в DOM? Надо изучать их код, чтобы ответить.

Но в качестве быстрого решения можно воспользоваться хаком с MutationObserver. Это способ отслеживать все изменения DOM элементов внутри указанного элемента, которым может быть и body. Когда происходят изменения внутри отслеживаемого элемента — вызывается твоя функция и ты проверяешь в ней, показан ли сейчас нужный тебе элемент. И не надо разбираться с деталями реализации кода сайта, в который ты интегрируешься. Удобно. Минус — на каждое изменение отслеживаемого элемента вызывается твой код. Не стоит отслеживать так изменения больших и часто меняющихся узлов DOM дерева.

Накидал демку

#frontend #javascript #IT
👍72🔥10🤔4🥰3