TGViewer
Channel Public Channel
HowProgrammingWorks - JavaScript and Node.js Programming

HowProgrammingWorks - JavaScript and Node.js Programming

@howprogrammingworks

Программная инжененрия для 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
Subscribers
6.52K
Photos
382
Videos
22
Links
966

Showing posts older than #1582 · Back to latest

Older Posts 20 shown
Post #1581 4.07K
🔁 Автоматическое преобразование исключений в события — посмотрите код в примере. Да, это работае в #NodeJS еще с версии v12.16.0 и такого очень много в асинхронном программировании и в ноде. При чем все события 'error' придут после завершения цикла for..of, а вот события 'item' будут приходить по ходу цикла. Почему так и как сделать, чтобы они приходили в пордке цикла? Это задания из курса 👉 Async 2024: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
  • 🔥 8
  • 👍 4
  • ❤ 1
Post #1580 4.73K
🚀 Architecture 2024

This is a small part of a new course I'm working on 🖼 Metarhia Architectural Principles:
* Isolation with IoC (Inversion of Control) and DI (Dependency Injection)
* Metaprogramming (dynamic metamodel interpretation)
* Platform-agnostic domain codebase
* Layered architecture (no system code in applications)
* Multiparadigm programming and semantic code
* Wide use of DSL (Domain-Specific Languages)
* Contract programming (defined with schemas)
* Modularity with auto-binding (no dependency locators in domain code)

👉 News will be here: https://t.me/MetarhiaChiefs
  • 👍 8
  • ❤ 6
Post #1578 4.41K
🔵 Metarhia / Sphere — концепция и техничесткое задание на цифровую платформу в открытом коде https://youtu.be/iAJ7dbdNrXk

⭐️ Кто смотрел мои лекции или проходил курс по ноде, джаваскрипту или асинхронному программированию, и хотел бы набрать практического опыта разработки, проекты в открытом коде - это лучший вариант, можно контрибьютить в Ноду, Метархию, но это системный код. А практику и прикладного и системного кода можно набрать в нашем новом проекте Sphere. Что это, я описал на английском вот тут оригинал концепции, и тут же я пишу ТЗ каждый день понемногу: https://github.com/metarhia/Sphere

👉 Заходите в канал https://t.me/MetarhiaChiefs и группу https://t.me/metaserverless где мы будем организовывать разработку этой платформы
YouTube Metarhia / Sphere — концепция и техничесткое задание на цифровую платформу в открытом коде ⭐️ Кто смотрел мои лекции или проходил курс по ноде, джаваскрипту или асинхронному программированию, и хотел бы набрать практического опыта разработки, проекты в открытом коде - это лучший вариант, можно контрибьютить в Ноду, Метархию, но это системный код.…
  • 👍 9
  • ❤ 5
  • 🔥 4
Post #1577 4.07K
❓ Почему читаемость и простота кода стратегически важна для программных систем?

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

✅ Семантическая оптимизация, направленная на понятность, упрощение, читаемость, скорость изменений, гибкость кода, оказываются на порядок важнее потребления ресурсов.

👉 Но какие техники программирования к этому ведут? Подробнее будет скоро видео на моем ютюбе: https://youtube.com/@TimurShemsedinov
  • 👍 28
  • ❤ 6
  • 🎉 3
  • ⚡ 2
  • 🔥 2
Post #1576 4.66K
🔁 Второй блок материалов курса Async 2024 будет включать абстракции:

⭐️ AsyncQueue - асинхронная очередь, которая может заменить для микроуровня механизмы внешних MQ систем, значительно повышая общую производительность и упрощая архитектуру.
⭐️ AsyncPool - асинхронный пул (обстракция для переиспользования объектов, сетевых соединений и конекшенов к базам данных, других разделаемых или ограниченных ресурсов)
⭐️ AsyncCollector - асинхронная коллекция для сбора данных из разных мест и общим местом сборки с поддержкой разных контрактов: callback, thenable, event, async/await
⭐️ Async Generator, Async Iterator - часть стандарта JavaScript для итерирования заранее неизвестных коллекций, потоков данных, курсоров баз данных, криптографии, других потоковых преобразований
⭐️ Locks API, Semaphore, Mutex - абстракции блокировок для избежания конфликтов доступа к данным и разделяемым ресурсам
⭐️ Chain of responsibility - паттерн цепочка ответственности как замена антипаттерна middleware - позволяет создавать надежный роутинг запросов на эндпоинты и многое другое

👉 Полное огравление курса тут: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
  • 👍 8
  • 🔥 3
  • ❤ 2
Post #1575 4.43K
🔁 Добавлены еще несколько тем в задачник по асинхронному программированию курса Async 2024. По теоретическому материалу готово 50% лекций, новые материалы мы будем проходить уже летом. А до этого будет много практики. 7 тем из
👉 1. Callbacks
👉 2. Thenable
👉 3. Promises
👉 4. Async/await
👉 5. Events
👉
6. Signals
👉 7. Timers

🚀 На очереди задачи по темам: обработка ошибок, стримы, антипаттерны и рефакторинг асинхронщины, тестирование асинхронного кода.

👉 Полное огравление курса тут: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
  • ❤ 8
  • 👍 5
  • 🔥 4
Post #1573 4.81K
Post #1572 5.5K
Join to start Diia core review: https://t.me/+f6d5MCe-euthOTFi


    static isHttpCode(code: number | undefined): boolean {
        if (typeof code !== 'number') {
            return false
        }

        if (code >= 100 && code < 600) {
            return true
        }

        return false
    }
  • 😁 18
  • 🫡 11
  • 👍 3
  • 👎 3
  • ❤ 2
Post #1570 6.44K
🐢🚀 Когда-то я предложил идеальную систему типов для JavaScript: NaN (not a number), NaF (not a function), NaO (not an object), NaS (not a string), NaA (not an array)... А они вместо этого убрали поддержку моего любимого сообщения об ошибке «Function is not a function». Вот такой код class Bug extends null {}; new Bug(); выдавал «Function is not a function» в ноде до 7.x, но это, конечно, проблема не ноды, а V8, современная V8 дает: «Super constructor null of Bug is not a constructor»
  • 🤣 57
  • ❤ 6
  • 🤯 5
  • 👍 2
  • 😢 1
Post #1567 6.03K
  • 😁 29
  • 👍 4
  • 😢 3
  • ❤ 2
  • 🤯 2
Post #1566 6.09K
🔁 Примеры кода для курса по асинхронному программированию уже обновлены, слайды нарезаны. Сам радуюсь, как удается упростить и сделать их понятными и короткими. Записываю материал https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
  • 🔥 32
  • 👍 13
  • ❤ 7
Post #1565 6.02K
  • 🫡 29
  • 😁 10
  • ❤ 4
  • 😢 3
  • 🤯 2
  • ⚡ 1
  • 🤣 1
Post #1563 16.7K
💫 Self Assessment v 1.0 может использоваться, как автоматизированный инструмент для учета, треккинга и анализа микроскилов инженера, для личного удобства и для добавления в cv или профиль в github, linkedin и т.д. После заполнения система генерирует кнопку в html и md со ссылкой на вашу копию репозитория. Инструмент ускоряет проведение собеседований и сертификации как для претендента, так и для интервьюера: можно проверять только часть ключевых знаний, а не весь их объем, а после этого подписать коммит с результатами личным GPG ключем. Если периодически проходить оценивание, или делать это до начала обучения и после него, и хранить ветки или теги с результатами инвенторизации микроскилов по состоянию на определенный момент времени, то очень удобно сравнивать прогресс, который вы сделали за период обучения, чтения книги, работы на проекте и т.д. Сейчас оценивание имеет более 700 микроскилов и будет постоянно расширяться по всем направлениям, языкам и технологиям (например Proxy, Promise, Future, SRP, DI, Boxing, Cohesion, Tail call recursion...) с автоматическим сревнением их с ролями (например Node.js API developer, Node.js gamedev, Frontend react...) робот генерирует отчет через Github Actions CI с рекомендациями, что нужно подтянуть. Скоро появятся новые роли и области знаний, после чего Вы сможете обновить свой репозиторий из исходного для получения нового отчета. https://github.com/HowProgrammingWorks/SelfAssessment
GitHub GitHub - HowProgrammingWorks/SelfAssessment: Software engineering self assessment Software engineering self assessment. Contribute to HowProgrammingWorks/SelfAssessment development by creating an account on GitHub.
  • 🔥 24
  • ❤ 10
  • 👍 2
  • 🎉 2
  • 🤯 1
  • 🫡 1
Post #1560 5.11K

Forwarded from Node.js Ukraine Community

Всех с праздниками! По месячной подписке на Патреоне теперь будут публиковаться отдельные лекции из курсов по node.js, асинхронному программированию или по обоим вместе, без практики, т.е. без созвонов, без заданий, без ревью кода, без ответов на вопросы, но со ссылками на исходники, т.е. на самостоятельное освоение. https://www.patreon.com/tshemsedinov
  • ❤ 11
  • 🎉 5
  • ⚡ 4
Post #1559 4.84K

Forwarded from Node.js Ukraine Community

Табличку по асинхронности перевел в электронный вид и скоро опубликую новое оглавление курса по асинхронности. Готовлю в открытом виде большой тест для самостоятельного оценивания знаний по ноде, асинхронности, парадигмам, архитектуре, и т.д. там уже более 500 микроскилов учтено.
  • ⚡ 24
  • 👍 9
  • ❤ 8
  • 🔥 4
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →