HowProgrammingWorks - JavaScript and Node.js Programming
Ir al canal en 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
Mostrar más6 572
Suscriptores
-224 horas
-57 días
+6030 días
Archivo de publicaciones
+7
🧩 Паттерн Adapter может быть реализован в JavaScript множеством разных способов, на примерах для Node.js и браузеров. Все они имеют одну главную идею - обертка абстракции и связывание обернутого интерфейса с внешним. Но для враперы для реализации адаптера можно делать на базе разных идей:
- Расширение адаптирруемого класса при помощи extends
- Боксирование адаптирруемого класса или функции
- Обертка адаптирруемого класса или функции в замыкание
- Использование композиции для боксинга адаптирруемого класса
- Использование аггрегации для боксинга адаптирруемого класса
- Реализаци обертки как широко известного контракта или интерфейса
- Применение открытого конструктора вместо наследования
Я думаю, что из примеров кода это проще понять, чем из текста, но после кода все же хорошо вернуься к обобщению. Примеры кода тут: https://github.com/HowProgrammingWorks/Adapter
❓ Что не нужно знать и учить мы поговорили. А знеете ли Вы то, что нужно знать и учить? (выберите несколько)
Считаю плохой идеей учиться программированию на базе:
🙅🏻 Алгоритмы - они уже давно есть готовые в языках и платформах, менее 1% программистов будут их реализовывать в работе, а если будут, то их нужно за это наказывать. Вот что действительно нужно, так это краткий обзор алгоритмов и использование структур данных, именно с упором на применение, а не разработку.
🙅🏻 leetcode и аналоги - это задачи которые не должны встречаться в жизни никогда,
🙅🏻 Олимпиадное программирование - это простыни быстрого, нечитаемого кода, условия такие, пишем быстро и write-only, к чему хорошему это может привести?
🙅🏻 System design и highload - большинство людей пишут системы совсем не для миллионов пользователей, а те, кто пишут для миллионов, могут просто посмеяться, как эту тему любят обсуждать на собеседованиях, на курсах, в свободное время между программистами, об этом приятно мечтать, да... но люди пишут на работе обычно апишки, модельки, формочки, бизнес-логику и интеграции. Мы не говорим про 100% людей, но массово именно так.
🙅🏻 Треш-головоломки, типа как сделать
await [promise1, promise2] - я сам их использую но это только для привлечения внимания, они реально возбуждают фантазии программистов, но я всегда делаю оговорку, что так писать нельзя и даже такую задачу ставить нельзя.💡 На кого можно подписаться в Github:
1. Маттео Калина https://github.com/mcollina
2. Джеймс Снелл https://github.com/jasnell
3. Ден Абрамов https://github.com/gaearon
4. Анна Хеннингсен https://github.com/addaleax
5. Рик Тротт https://github.com/Trott
6. Илья Климов https://github.com/xanf
7. Андрей Ситник https://github.com/ai
8. Федор Индутный https://github.com/indutny
9. Линус Торвальдс https://github.com/torvalds
10. Дуглас Крокфорд https://github.com/douglascrockford
11. Брендон Эйх https://github.com/BrendanEich
12. Андерс Хейлсберг https://github.com/ahejlsberg
🖼 А тут еще профили контрибьторов, менторов и выпускников Метархии:
1. Алексей Орленко https://github.com/aqrln
2. Дмитрий Нечай https://github.com/nechaido
3. Денис Отришко https://github.com/lundibundi
4. Николай Белочуб https://github.com/belochub
5. Георг Ольденбургер https://github.com/georgolden
6. Владислав Духин https://github.com/primeare
7. Иван Тимошенко https://github.com/ivan-tymoshenko
8. Лидия Иванова https://github.com/lidaamber
9. Алексей Голиков https://github.com/agil
10. Артем Черненький https://github.com/GYFK
11. Андрей Высоцкий https://github.com/Gagnant
12. Сергей Нановский https://github.com/snanovskyi
13. Влад Дзюба https://github.com/DzyubSpirit
14. Роман Огиевич https://github.com/rohiievych
15. Диана Болотенюк https://github.com/mille-nium
16. Дмитрий Михайлов https://github.com/Tariod
17. Илья Федорович https://github.com/Kowalski0805
18. Алина Листунова https://github.com/alinkedd
19. Даниил Гуськов https://github.com/imnetcat
20. Алексей Румянцев https://github.com/o-rumiantsev
21. Виталий Кухар https://github.com/vkukh
И если кто еще не подписан на меня, то вот мой профиль:
👉 Тимур Шемсединов https://github.com/tshemsedinov
Repost from Node.js Ukraine Community
Какие паттерны Вы используете в Node.js и JavaScript?
❓ Interview questions on asynchronous programming, this is the first version, published for corrections and improvements, you can suggest your fixes here: https://github.com/tshemsedinov/Async-Interview-Questions
Чего вам не хватает, чтоб получить большую ЗП?
Repost from Node.js Ukraine Community
SOLID, GRASP, Law of Demeter, Inversion of Control, DI, Separation of Concerns, DDD, Contract programming, etc... What are they needed for?
+1
Если бы программисты думали про свой код так же, как Блез Паскаль думал про свое письмо: «Это письмо получилось таким длинным потому, что у меня не было времени написать его короче». И нет, это не тот чувак, который сделал Turbo Pascal, это не Андерс Хейлсберг, это более олдовый дядька, середина XVII века, а уже знал про оверинженеринг и «Keep it simple, stupid»
