ar
Feedback
HowProgrammingWorks - JavaScript and Node.js Programming

HowProgrammingWorks - JavaScript and Node.js Programming

الذهاب إلى القناة على Telegram

Программная инжененрия для JavaScript, TypeScrip, Node.js 👉 Group: https://t.me/How_Programming_Works 👉 Node.js channel: https://t.me/metarhia 👉 Node.js group: https://t.me/nodeua

إظهار المزيد
6 469
المشتركون
+224 ساعات
-107 أيام
-1130 أيام
أرشيف المشاركات
​​Итак, уже завтра нас ожидает первая лекция из курса Software Architecture & Development. Хоть занятие и вводное, но тема предстоит важная - собственно, мы разберемся, какие знания будем стараться получить на протяжении всего курса и какие проблемы современной разработки ПО эти знания призваны решить. Лекцию я озаглавил Product-oriented engineering и в самом названии уже скрыт намек на то, чего, по-моему мнению, нам часто не хватает в разработке. Мы поговорим о том, что же это за "продукто-ориентированность" и почему именно знания об архитектуре приложений и процессе разработки должны нам помочь в главной цели - создании более качественных и конкурентных продуктов. Именно это знание поможет нам перейти ко всем остальным узким и специфическим темам (которые мы завтра тоже перечислим и кратко обсудим). Приставка with pictures призвана успокоить всех заинтересовавшихся тем, что говорить будем простыми словами и с понятными примерами. Надеюсь, что лекция будет интересна студентам, уже имеющим опыт в программировании и практикующим программистам в целом. 10:30, Белка (библиотека КПИ, 3 этаж), вход свободный.

Кто собирается посещать лекции, просьба зарегистрироваться и подтвердить посещение в этих двух группах: https://www.meetup.com/HowProgrammingWorks/ https://www.meetup.com/NodeUA/

Лекции на этот семестр. Посещение свободное как для студентов КПИ, так и для всех желающих. Лекции будут проходить в 16:10 в 307 аудитории 18 корпуса КПИ. По вторникам лекции попроще, а по четвергам посложнее, но все публикуется, чтобы вы выбирали сами, на что ходить и задавать вопросы, что и так знаете, а что в записи посмотреть. Кроме лекций будут еще митапы в форме семинаров и докладов, о чем сообщу дополнительно. 19 фев Рекурсия: косвенная и хвостовая, стек, выход 21 фев Atomics, SharedArrayBuffer, worker_threads в Node.js 26 фев Мономорфные функции, дженерики и обобщенное программирование 28 фев Семафоры и мьютексы в JavaScript и Node.js 05 мар Генераторы и асинхронные генераторы в JavaScript 07 мар Необработанные ошибки в промисах на Node.js 12 мар Фасад - петтерн для скрытия сложности 14 мар HTTP сессии и cookies на Node.js 19 мар Адаптер - паттерн достижения совместимости 21 мар HTTP запросы в бреузере и Node.js: XMLHttpRequest, fetch 26 мар Линзы - функциональные аналоги геттера и сеттера 28 мар Разработка API на Node.js 02 апр Перечислимый тип и флаговый тип 04 апр Работа с базами данных в node.js 09 апр Графы и запросы к графовым структурам 11 апр CQRS - Разделение модификации и запросов 16 апр Тестирование: юниттесты в JavaScript 18 апр Метапрограммирование 23 апр Тестирование: системное и интеграционное 25 апр Логирование на Node.js 30 апр Отмена асинхронных операций (Promise.race, cancelable) 02 май Асинхронная композиция 07 май Конкурентная очередь с приоритетами и асинхронностью 09 май Thenable и легковесный await 14 май Асинхронность на диферах и фьючерах 16 май Модель акторов для параллельных вычислений 21 май Асинхронность на RxJS и потоки событий 23 май Проблемы с правильным пониманием ООП 28 май Интроспекция и рефлексия в JavaScript 30 май Скаффолдинг для API, UI, данных и отчетов

Кто хочет интересную задачу по ноде? Вот тут есть решение задачи с состоянием гонки при помощь мьютексов, реализованных на базе Atomics, SharedArrayBuffer и worker_threads, но оно глючит, возможно, это ошибка в V8 (atomics), возможно в Node.js (threads), возможно в коде: https://github.com/HowProgrammingWorks/Mutex/blob/master/JavaScript/5-no-race.js Тут Point изменяется 2млн. раз из двух потоков, сдвигается одним потоком млн раз на (+1, +1), а вторым млн раз на (-1, -1) в итоге должно быть (0, 0) как и вначале, но для этого блокировки должны работать. А вот тут подобная штука с двоичным семафором таки работает. https://github.com/HowProgrammingWorks/Semaphore/blob/master/JavaScript/2-binary.js Можете попробовать тут же задачу на двоичном семафоре. Обсуждение в https://t.me/nodeua

Завтра начинается семестр и, как обычно, мои пары будут не по расписанию деканата, а по нашему расписанию, которое я согласую со старостами на этой неделе. Следите за объявлениями.

Приватные репозитории на гитхабе не более чем 3 колаборатора - теперь бесплатны - https://github.com/pricing

Внимание! Кто сдает экзамены в январе, добавляйтесь в отдельную группу - https://t.me/joinchat/Bux4gULq7pmZB4MptQsuag

Внимание: Сегодня лекция в 16:10 отменена, слелующая в понедельник. https://www.meetup.com/ru-RU/HowProgrammingWorks/events/254589654/

Подход к изучению программирования (на дне факультета Информатики и вычислительной техники КПИ) https://youtu.be/zMU4ir10DMg

Это из сегодняшней лекции https://youtu.be/Jdf_tZuJbHI

Чаю асинхронный конструктор «...И паки грядущаго со славою судити живым и мертвым, Его же Царствию не будет конца. Чаю воскресения мертвых, и жизни будущаго века. Аминь.»