@tomoko_channel · Post #747 · 16.10.2024 г., 02:34
🔖 Node.js Tutorial - 42 - Event Loop - YouTube #pinboard#nodejs free wrt node js event loop https://www.youtube.com/watch?v=L18RHG2DwwA&list=PLC3y8-rFHvwh8shCMHFA5kWxD9PaPwxaY&index=42
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #247 · 11.03
Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev
Hashtags
Търсене: #nodejs
@tomoko_channel · Post #747 · 16.10.2024 г., 02:34
🔖 Node.js Tutorial - 42 - Event Loop - YouTube #pinboard#nodejs free wrt node js event loop https://www.youtube.com/watch?v=L18RHG2DwwA&list=PLC3y8-rFHvwh8shCMHFA5kWxD9PaPwxaY&index=42
@awesomeopensource · Post #118 · 24.04.2018 г., 09:41
chalk-animation 多种彩色终端动画。 语言:#JavaScript 分类:#NodeJS 转发自 @rsshub
Hashtags
@tomoko_channel · Post #705 · 10.10.2024 г., 12:24
Node.js 纪录片感想(小抄) 1. Ryan Dahl 创建 Node.js 当时流行的 Web 框架(如 Ruby on Rails)在处理高并发时效率不够高,特别是在处理 I/O 密集型任务时性能显得不足。虽然这些框架也支持异步 I/O,但用起来很别扭。 他也尝试过其他语言(如 Python、Lua、Haskell),但发现这些语言的运行时已经沉淀了多年,深受传统同步编程模型的限制,很难进行根本性的变革。 于是 Boy Meet Girl,算是终于让他看见了 Javascript 这个本身就在浏览器中天天需要处理异步场景的语言。(JavaScript 本身就依赖事件循环和异步操作来处理用户交互与网络请求。) 关键点是 easily build optimal server 以及 forcing them to only use async IO。也是 Node.js 的核心优势。 2. Isaac Schlueter 加入 & npm 的诞生 这点倒是没什么好说的,pip 比它要早一点,08年 vs 10年。 想起我大二那年,被 pacman 什么都能下载给震撼住了。真的是,生在这种什么都有的年代真是被惯坏了。不过即使我在那个年代,也不会造出这样的轮子吧 3. Joyent 买下 Node.js 这一阶段就是真的让 Node.js 成为一个企业级产品了,毕竟有公司去资助一批工程师去全职开发。 也是在这个阶段支持了 Windows,让用户量大大增加了。(通过实现 LibUV 库来处理 Windows 特有的 I/O 操作和事件循环,兼容了 linux 和 win 的操作) 4. Ryan 退出 & 社区分裂 Ryan 在 Windows 版本出来之后就腻了,看来是那种喜欢写新功能而不想全天在修 BUG 的人?于是负责人从 Ryan -> Issac -> TJ Fontaine。 至于创始人离开之后,社区的贡献者自然就觉得给 Joyent 打白工非常无趣,于是就去 fork 了 io.js(确实,虽然 MySQL 是开源的,但谁会乐意无偿贡献代码给 Oracle 呢?) 5. 基金会成立 最后是双方妥协,Joyent 将 Node.js 的管理权交给了基金会, io.js 和 Node.js 最终合并。可喜可贺,可喜可贺。 不过这也是社区力量占主导才能强迫公司妥协,不然就变成现在的 MariaDB 了? --- (仅仅是笔记,不一定对,需要勘误) https://www.youtube.com/watch?v=LB8KwiiUGy0 #TIL#nodejs
@Only4Share · Post #498 · 18.05.2023 г., 13:14
https://moonapi.com/news/detail/id/8416.html #前端#NodeJS
@thedevs · Post #1929 · 18.07.2021 г., 14:04
npm audit: Broken by design. #article#js#nodejs @thedevs https://kutt.it/sfCoaF
@thedevs · Post #1442 · 26.03.2019 г., 17:21
A complete guide to threads in Node.js. #article#js#nodejs @thedevs https://kutt.it/oISgAb
@thedevs · Post #1339 · 18.12.2018 г., 16:38
19 ways to become a better Node.js developer in 2019. #article#js#nodejs @thedevs https://kutt.it/JDnenj
@thedevs · Post #1099 · 03.05.2018 г., 17:54
What exactly is Node.js? #article#js#nodejs @thedevs https://kutt.it/7Ya1Gf
@AprilNEALab · Post #75 · 31.08.2024 г., 14:44
#NodeJS#ORM 这么严重的问题花了一年才被修复。 https://github.com/drizzle-team/drizzle-orm/issues/724 https://github.com/drizzle-team/drizzle-orm/releases/tag/0.33.0 TL;DR Drizzle ORM 导致 JSONB 在 Postgres 数据库中错误的以 JSON String 表示
@plltxe · Post #4719 · 25.03.2022 г., 21:57
Sometimes dependencies can just get as messy as it could. #NodeJS#npm 🐦
@tomoko_channel · Post #771 · 24.10.2024 г., 11:41
🔖 javascript - Difference of using async / await vs promises? - Stack Overflow #pinboard#nodejs#job_search https://stackoverflow.com/questions/53057110/difference-of-using-async-await-vs-promises
Hashtags
@thedevs · Post #1740 · 07.05.2020 г., 16:53
Rust and Node.js, a match made in heaven. #article#nodejs#rust @thedevs https://kutt.it/W3c4ps