Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2020 October 25

A

Arthur in NodeUA - JavaScript and Node.js in Ukraine
ID:0
Что хуже на сервере?

(Возможно вы заметили, что я часто спрашиваю что хуже, а не что лучше, это всего лишь потому, всё достаточно плохо, но бывает просто плохо, а бывает ещё хуже)
Анонимный опрос
31%
GraphQL
21%
RPC API
15%
REST API
27%
SSR
27%
Consensus
Проголосовало: 672
О, кайф
А можно объяснить мне почему REST API плохо?
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Arthur
О, кайф
А можно объяснить мне почему REST API плохо?
Полагаю что решение с сокетами было бы лучшим решением. Если REST это о состоянии (что говорит о блокирующем факторе), то в контексте Socket - это о потоке.
Но это не точно. К сожалению или счастью опрос не говорит о том как думают респонденты.
источник

ГФ

Герман Филатов... in NodeUA - JavaScript and Node.js in Ukraine
Arthur
О, кайф
А можно объяснить мне почему REST API плохо?
плохо для фронта)кек
источник

IK

Igor Karpiuk in NodeUA - JavaScript and Node.js in Ukraine
Алексей Попов
Архитектор кладёт кирпич? Очень странно было бы
так працює наша країна
источник

AZ

Alexander Zakharov in NodeUA - JavaScript and Node.js in Ukraine
Кому интересно сравнение производительности и утилизации ресурсов mobile платформы на Native (Kotlin/Swift) vs Flatter (Dart) vs ReactNative (JavaScript) https://habr.com/ru/company/vdsina/blog/509048/
источник

Т

Тёмыч in NodeUA - JavaScript and Node.js in Ukraine
Alexander Zakharov
Кому интересно сравнение производительности и утилизации ресурсов mobile платформы на Native (Kotlin/Swift) vs Flatter (Dart) vs ReactNative (JavaScript) https://habr.com/ru/company/vdsina/blog/509048/
О, почитаю, спасибо
источник

ДП

Дмитрий Прокопович... in NodeUA - JavaScript and Node.js in Ukraine
ID:0
Переслано от Timur Shemsedinov
Новости: В технологическом стеке Metarhia появилась библиотека metavm. Это маленькая обертка вокруг vm, позволившая не дублировать код в impress, config, metasql и в дальнейшем mtavm будет использоваться в metaschema и metacom.

https://github.com/metarhia/metavm

Кто хочет, можно заняться:
- тайпингами
- дополнительными тестами
- полифилом для фронта
- бета-тестированием
- ревью кода
- документацией и примерами

Часть из перечисленного уже есть, но в недостаточном объеме.
Блин, а где про неё почитать? я имею в виду про metasql... Скиньте ссылочку какую
источник
2020 October 26

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Дмитрий Прокопович
Блин, а где про неё почитать? я имею в виду про metasql... Скиньте ссылочку какую
да, пока нигде, только исходники есть, к релизу будут доки
https://github.com/metarhia/metasql
источник

VH

Vladyslav Holovko in NodeUA - JavaScript and Node.js in Ukraine
Хело, скажіть, будь ласка, як краще працювати з обробкою помилок/ексепшнів в n-tier архітектурі?
Ось я роблю REST api: router -> busines logic -> service -> call to some remote sevice
Наприклад якщо кліент запитує /api/v1/object/123, а віддалений сервіс поверне 404, мені теж треба повернути 404 але ж зі своїи синтаксисом.
Робити для кожного шару свій набір екскепшнів і робити rethrow MyServiceNotFoundException це типу правильна ізоляция, але це порушує сам сенс ексепшнів. Але якщо ловити усі ексепшні на топ-рівні роутера, це означае що він має знати implementation details. І якщо замість віддаленого сервіса я почну юзати базу, то треба бути правити роутер також...
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Vladyslav Holovko
Хело, скажіть, будь ласка, як краще працювати з обробкою помилок/ексепшнів в n-tier архітектурі?
Ось я роблю REST api: router -> busines logic -> service -> call to some remote sevice
Наприклад якщо кліент запитує /api/v1/object/123, а віддалений сервіс поверне 404, мені теж треба повернути 404 але ж зі своїи синтаксисом.
Робити для кожного шару свій набір екскепшнів і робити rethrow MyServiceNotFoundException це типу правильна ізоляция, але це порушує сам сенс ексепшнів. Але якщо ловити усі ексепшні на топ-рівні роутера, це означае що він має знати implementation details. І якщо замість віддаленого сервіса я почну юзати базу, то треба бути правити роутер також...
NotFoundException должен быть абстрактным и может генерипрваться как обращением к api, так и к базе. Можно сделать его на уповне паттерна стратегия, у которого несколько реализаций, а ошибке все реализации одинаковые дают.
источник

VH

Vladyslav Holovko in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
NotFoundException должен быть абстрактным и может генерипрваться как обращением к api, так и к базе. Можно сделать его на уповне паттерна стратегия, у которого несколько реализаций, а ошибке все реализации одинаковые дают.
Це означає що на рівні сервісу який працює з базою/апі я маю зловити specific exception і зробити з нього відповідний інстанс «абстрактного» NotFound який в свою чергу я ловлю на рівні роутера, так?
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Vladyslav Holovko
Це означає що на рівні сервісу який працює з базою/апі я маю зловити specific exception і зробити з нього відповідний інстанс «абстрактного» NotFound який в свою чергу я ловлю на рівні роутера, так?
да
источник

VH

Vladyslav Holovko in NodeUA - JavaScript and Node.js in Ukraine
Дякую!
источник

ЕХ

Егор Хильченко... in NodeUA - JavaScript and Node.js in Ukraine
добрый день, у кого-то был опыт использования .dll библиотек в ноде?)
источник

IH

Ilya Human in NodeUA - JavaScript and Node.js in Ukraine
Привіт, підкажіть плз
Є монгодб колекція юзерів, робиться запит з ключовими словами по яких треба знайти юзерів і вивести їх кількість у колекції
Якось можна об'єднати такий пошук, щоб не писати під кожний ключ db.collection.find({key: "value"}).count()
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
Не понятен вопрос - вы сейчас считаете по каждому ключевому слову отдельным запросом, а хотите для всех ключевых слов получить счетчики одним запросом да?
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
вот примеры https://stackoverflow.com/questions/23116330/mongodb-select-count-group-by
db.users.aggregate(
   {$match: {deleted: false}},
   {$group: {_id: "$status”, count: {$sum: 1}}}  
)
вернет количество пользователей для каждого статуса
источник

IH

Ilya Human in NodeUA - JavaScript and Node.js in Ukraine
Elena Sharovar
Не понятен вопрос - вы сейчас считаете по каждому ключевому слову отдельным запросом, а хотите для всех ключевых слов получить счетчики одним запросом да?
Так, тіпа закинути масив ключових слів в колекцію, та вивести кількість юзерів по кожному з них
источник

ES

Elena Sharovar in NodeUA - JavaScript and Node.js in Ukraine
ну вот с aggregate вам нужно наколдовать это как выше со статусами
источник

H

Heavy in NodeUA - JavaScript and Node.js in Ukraine
Ох, заморочился я, и сделал... Немного оффтоп, но все равно есть сходство с React и Redux. Возможно позже на js перепишу.
источник