@nodejs_ru

Страница 1985 из 2748
Сергей
09.05.2018
18:17:04
Почему?)
Потому что нехватает концепций

dima
09.05.2018
18:17:06
Почему?)
тупой вопрос

Сергей
09.05.2018
18:17:10
И медленно

Google
Denis
09.05.2018
18:17:49
А в си хватает концепций? Там тоже ООП пишут иногда

То что медленно это да, но v8 вроде шагает в сторону чтобы ООП было получше

Побыстрее вернее

Саня
09.05.2018
18:21:19
А в си хватает концепций? Там тоже ООП пишут иногда
у ООП куча недостатков.. классы сложнее рефакторить, из них не получится просто так выдрать функцию и перетащить ее в другой класс, т.к. эти функции часто завязаны на куче внутренних методов и переменных

любая хорошая книга по ооп советует использовать как можно меньше классов)

Саня
09.05.2018
18:22:34
Это не мне объяснять нужно, а чуваку, к которому обратился Сова.
я лишь попытался ответить на твой комментарий

Котяй Негодяй
09.05.2018
18:22:54
Саня
09.05.2018
18:23:56
мне приходилось модифицировать пару хорошо написанных на ООП языках библиотек.. больше не хочу)) но возможно я чего-то сильно не понимаю)

Denis
09.05.2018
18:25:43
у ООП куча недостатков.. классы сложнее рефакторить, из них не получится просто так выдрать функцию и перетащить ее в другой класс, т.к. эти функции часто завязаны на куче внутренних методов и переменных
Так нужно писать абстрактные классы на каждое бизнес правило, и делать так чтобы вся система хавала абстрактные классы, а реализации уже какие угодно писать. Нужна новая? Ок, написал новую. Если тебе требуется выдирать методы из классов значит ты неправильно мыслишь в рамках ООП парадигмы

Основная задача ООП собственно не в том чтобы отражать какие-то РЕШЕНИЯ, а в том чтобы выражать ПРАВИЛА, а затем в их рамках делать че угодно

Дмитрий
09.05.2018
18:28:11
> Так нужно писать абстрактные классы на каждое бизнес правило Чудовищно

Google
Denis
09.05.2018
18:29:49
У меня не часто такое возникает, я хз че за код ты пишешь такой

Если возникает то я считаю это проебом

Denis
09.05.2018
18:30:17
Что-то не углядел наперёд

Саня
09.05.2018
18:30:39
углядеть наперед - это утопия

Denis
09.05.2018
18:30:54
Спек тесты это чудовищно?

Дмитрий
09.05.2018
18:31:11
Если возникает то я считаю это проебом
Это стандартный так по рефакторингу

Дмитрий
09.05.2018
18:31:40
Суть спек тестов ровно такая же
Нет, ты гонишь. Абстрактные классы просто не нужны для того что ты из них делаешь

Саня
09.05.2018
18:32:09
Суть спек тестов ровно такая же
суть тестов не допускать ошибок, в т.ч. при рефакторинге

В идеале один, да?
в идеале без них)

по крайней мере, ситуации, когда человек говорит надо все переделать заново, на мой взгляд в ООП всьречаются чаще

Denis
09.05.2018
18:34:05
Нет, ты гонишь. Абстрактные классы просто не нужны для того что ты из них делаешь
Ну я просто задвигаю примерно ту телегу что задвигает дядя боб, его взгляд на ООП мне нравится, и пишу я так редко, но пишу когда нужна гибкость

Andrey
09.05.2018
18:34:51
Привет местным. Подскажите где я обосрался, пожалуйста. Есть скрипт, который валится на восьмой ноде, но нормально работает на шествой. https://travis-ci.org/XaveScor/flow-typed/jobs/376952785 https://travis-ci.org/XaveScor/flow-typed/jobs/376952784 Так как segmentation fault, то я подозреваю, что я криво сохраняю файлы. Сохранение файлов описано вот тут https://github.com/XaveScor/flow-typed/blob/upgrade-download-flow/cli/src/lib/binaries.js#L83 Где может быть косяк?

Denis
09.05.2018
18:40:46
допустим, у тебя есть абстрактный класс и несколько реализаций. ты хочешь что-то поменять и тебе приходится меня все - и классы и реализации
Это проблема, да, но абстракции на то и абстракции, что ты пытаешься в них выделить тот минимум который позволит тебе их менять очень редко, а в лучших сценариях — никогда. Если бы всё в мире было бы гладко мы бы тут не сидели не мусолили, понимаешь?) То что ты на раннем этапе можешь покрыть всё абстракциями и писать всё что именно сейчас требуется, а потом без боли сменить бд например или протокол это большой плюс такого подхода, не всегда это нужно, но суть в том что задачи и условия разные, и к каждой нужно подходить без фанбойства в виде «классы это хуево пиздец»

Саня
09.05.2018
18:52:35
Это проблема, да, но абстракции на то и абстракции, что ты пытаешься в них выделить тот минимум который позволит тебе их менять очень редко, а в лучших сценариях — никогда. Если бы всё в мире было бы гладко мы бы тут не сидели не мусолили, понимаешь?) То что ты на раннем этапе можешь покрыть всё абстракциями и писать всё что именно сейчас требуется, а потом без боли сменить бд например или протокол это большой плюс такого подхода, не всегда это нужно, но суть в том что задачи и условия разные, и к каждой нужно подходить без фанбойства в виде «классы это хуево пиздец»
ООП - это все лишь вопрос как организовать хранение методов. допустим у тебя есть абстрактный класс животное и два метода жрать() и спать(). и есть два класса кошка и собака. жрут спят они по-своему. потом приходит заказчик и говорит нам нужен котопес, который жрет как собака, а спит как кот и все, пиздец твоей архитектуре, тебе придется создавать какую-нибудь фабрику животных. а если у тебя есть методы жратьКакКот() спатьКакКот() жратьКакСобака() и спастьКакСобака(), то ты из них можешь собрать любую комбинацию котопса без проблем..

Google
Stas
09.05.2018
19:02:14
Ну вообще если я не ошибаюсь, ты делаешь родителю общие методы, а различные соответственно не делаешь. И если у тебя стоит задача использовать метод родителя, но вдруг он оказался другим, то его можно переопределить. Это просто из ООП, к джсу отношения это не имеет.

каждый из нас его реализует))
Это я так, пошутил, в принципе мы все животные)

Denis
09.05.2018
19:03:21
ООП - это все лишь вопрос как организовать хранение методов. допустим у тебя есть абстрактный класс животное и два метода жрать() и спать(). и есть два класса кошка и собака. жрут спят они по-своему. потом приходит заказчик и говорит нам нужен котопес, который жрет как собака, а спит как кот и все, пиздец твоей архитектуре, тебе придется создавать какую-нибудь фабрику животных. а если у тебя есть методы жратьКакКот() спатьКакКот() жратьКакСобака() и спастьКакСобака(), то ты из них можешь собрать любую комбинацию котопса без проблем..
Хороший аргумент, мне нравится. В таком подходе только может случиться проблема b) когда приложение разрастется, а потом те её выгребать. И пример с животными в реальном мире не работает, есть куча статей на тему что не надо так ООП учить ибо заставляет неправильно думать что есть абстракция))



Саня
09.05.2018
19:03:43
Это я так, пошутил, в принципе мы все животные)
а еще наше днк на 96% совпадает с днк банана)) тоже интерфейс банана наследовать надо?))

Andrey
09.05.2018
19:03:48
попробуй удалять node_modules перед тестами
Это ci. Там машина по определнию пустая.

Stas
09.05.2018
19:12:37
а еще наше днк на 96% совпадает с днк банана)) тоже интерфейс банана наследовать надо?))
проще сделать наследование от обезьяны, предлагаю завершить флуд)

Саня
09.05.2018
19:13:28
проще сделать наследование от обезьяны, предлагаю завершить флуд)
на мой взгляд это не флуд, а нормальное обсуждение)

Denis
09.05.2018
19:15:11
Ну точно лучше чем обсуждения че выбрать коа или экспресс)

Morsik
09.05.2018
19:22:07
локально тесты работают только со 2 запуска

после очистки .flow-bins-cache

@XaveScor увеличение таймаута до минуты помогает (в runTests-test.js) (локально опять же)

Andrey
09.05.2018
19:32:13
Спасибо, буду копать дальше.

Morsik
09.05.2018
19:32:47
Она неленивая)
ленивая, он бинарники загружает во время тестов непосредственно перед запуском

Google
Morsik
09.05.2018
19:41:56
@XaveScor а почему ты выпилил стрим-бейзед загрузку бинарников?

Andrey
09.05.2018
19:42:11
Где выпилил?

Morsik
09.05.2018
19:43:02
Где выпилил?
у тебя же ветка upgade-download-flow?

Morsik
09.05.2018
19:44:04
ок, я вижу что ты загружаешь целиком body как buffer и запихиваешь в yauzl

Andrey
09.05.2018
19:45:49
Да, я хочу распаковать зипник в памяти.

Admin
ERROR: S client not available

Morsik
09.05.2018
19:46:48
думаешь будет быстрее? (хотя это стоит бенчмаркать)

Andrey
09.05.2018
19:47:08
Нет, мусорки в файловой системе не будет.

+ код проще.

Morsik
09.05.2018
19:47:42
Нет, мусорки в файловой системе не будет.
ее и так нет, до этого на лету анзипил

Andrey
09.05.2018
19:48:07
До этого он писал на диск зипник, распаковывал и удалял.

Morsik
09.05.2018
19:48:12
а, да, ты прав

так может стоит сразу переписать на fetch -> zlib -> writeStream?

Andrey
09.05.2018
19:51:51
Может. Надо взглянуть. Спасибо.

Morsik
09.05.2018
19:53:42
Может. Надо взглянуть. Спасибо.
а, я понял, там же директория а не один файл, не прокатит

Yura
09.05.2018
21:07:46
Добрый вечер! Подскажите нубу, как на одном сервере развернуть с помощью pm2 второе приложение? (Сайт). Че делать, чтобы сервак не положить и чтобы второй апп поверх первого не написать?

Cenator
09.05.2018
21:09:14
конфиг напиши и стартани

Denis
09.05.2018
21:11:15
Добрый вечер! Подскажите нубу, как на одном сервере развернуть с помощью pm2 второе приложение? (Сайт). Че делать, чтобы сервак не положить и чтобы второй апп поверх первого не написать?
Тебе не даст развернуть 2 сервера на 80/443 порту, запускай один на 3000 второй на 3001, а потом нжинксом проксируй нужны урлы на соответствующие порты

Yura
09.05.2018
21:26:27
конфиг напиши и стартани
ecosystem.config.js имеется в виду? А можно поразвернутей?

Google
Cenator
09.05.2018
21:30:16
ecosystem.config.js имеется в виду? А можно поразвернутей?
Да, стартуй как обычные 2 нодовских аппы

Из разных папок

Yura
09.05.2018
21:34:02
А для этого нужно сначала зайти на сервак и создать папку, чтобы закинуть все файлы нового аппа? И тогда уже стартануть?

И в конфиге указать разные репозитории, хосты и тд?

Пост-деплой нужно менять? Они в обоих файлах должны различаться, да?

Сорян за вопросы, я просто совсем нуб, с деплоем помогал друг и в принципе он эту фигню всю делал, а сейчас хочу сам попробовать

Cenator
09.05.2018
21:35:58
Я бы не деплоил через пм2

Только старт

Maxim
09.05.2018
21:43:00
Парни, всем привет!

Подскажите пожалуйста, что делают на web сокетах и что бы такого написать на этой технологии чтобы понять как это работает?

Александр
09.05.2018
21:49:51
Только начал изучать ноду, но сразу возник вопрос, какую изучать бд? Так как с бд я незнаком, то пошел читать по этому вопросу в интернет, где одни советовали монгу, а другая половина хаяла и советовала постгрес. Помогите решить вопрос?

Котяй Негодяй
09.05.2018
22:10:54
Насоветуйте орм для постгре.

Roman
09.05.2018
22:11:11
Sequelize

Dika
09.05.2018
22:11:38
knex

Morsik
09.05.2018
22:11:57
typeorm

Cenator
09.05.2018
22:15:42
knex
Не орм

Страница 1985 из 2748