@oop_ru

Страница 591 из 785
Google
f4rt~
29.03.2018
19:02:50
процессы?
хочется знать так ли я использую вещи, какой посыл в них вкладывали, разобраться в первоисточниках что бы дать себе ответ на эти штуки

Sergey
29.03.2018
19:03:28
ну то есть как и меня тебя интересует "почему я пишу на том на чем пишу, почему люди решили так делать и почему те кто делают по другому - меньшенство"

ну то есть - история развития языков программирования

f4rt~
29.03.2018
19:03:57
именно

ведь если считать это эволюцией, знать есть прогресс

а где он куда смотреть хз

Sergey
29.03.2018
19:04:17
ну так может быть сфокусироваться на сборе информации, без необходимости ее пока интерпритировать

ведь если считать это эволюцией, знать есть прогресс
весь граф идей сделать, кто когда от кого отсоединился, кто от кого идей взял

f4rt~
29.03.2018
19:04:49
мб я потому и не сделал каких-то своих выводов, недостаточно данных :)

Sergey
29.03.2018
19:04:54
какие факторы влияли на выбор тех или иных подходов

Mykola
29.03.2018
19:06:38
а цель какую ты ставишь?)
очень правильный вопрос!

Sergey
29.03.2018
19:07:13
очень правильный вопрос!
типичный вопрос типичного консультанта) так же как и ответ it depends

Mykola
29.03.2018
19:07:21
а вот и нет

Google
Mykola
29.03.2018
19:07:49
нет, ответ не так важен, как сам вопрос

ответа то мы не знаем, но вопрос есть

f4rt~
29.03.2018
19:08:17
не знаю смогу ли донести мысль на странном примере, но в Южном парке была серия, когда "создатель унитазов" на самом деле подразумевал их использование не в ту сторону, вот не хотелось бы узнать что по итогу венец творения каких-то моих интеллектуальных возможнойтей был не верно интерпретирован :) http://www.sp-fan.ru/episode/1601/

Mykola
29.03.2018
19:11:21
десять лет назад академик Редько, в свое время основавший кафедру теории программирования в институте кибернетики КНУ, рассказывал мне много важных вещей, которые я до сих пор пытаюсь осознать

например о "целесообразности", принципе необходимой достаточности, и самом главном принципе программирования: "принципе сохранения инвестиций"

оно звучит как что-то сильно далёкое от математики, но я все больше понимаю, что это просто мы далёкие от математики)

я на 5-м курсе ходил на его спецкурс для второкурсников, и пытался что-то понять из его слов

я приходил и рассказывал, что ооп - фигня, приводил аргументы, 10 лет назад

а он делал странные выводы

он не говорил, что ооп фигня, а он говорил что-то типа "вот видите - закон сохранения инвестиций в действии"

и я просто списивал это на его преклонный возраст

70 лет, не шутки

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

можно фигачить говнокод, а можно вложить ум и фигачить красивый код, лучше, быстрее, легче поддерживать, меньше тратить денег на разработку получая лучший продукт

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

Mykola
29.03.2018
19:25:11
угу, врубаешься

Sergey
29.03.2018
19:25:38
да но мне как... недалекому программисту придется инвестировать в математику что бы разобраться в программировании.... хотя думаю это всеравно будет эффективнее

просто с мотивацией будут проблемы

Mykola
29.03.2018
19:26:07
тут надо читать хорошую книжку

Google
Mykola
29.03.2018
19:26:37
"Любовь и математика: сердце скрытой реальности"

для мотивации и для изменения хода мыслей радикально в другую сторону

Gio
29.03.2018
20:16:14
Спасибо, почитаю

Название книги вызыващее. Почти как, "Гарри Поттер и методы рационального мышления" :D Кстати, тоже хорошая книжка

Bohdan
30.03.2018
07:12:50
минутка пятничной фигни https://medium.com/@caspervonb/a-brief-totally-accurate-history-of-programming-languages-cd93ec806124

Mykola
30.03.2018
07:54:49
нравится

Sergey
30.03.2018
08:17:02
Bohdan
30.03.2018
08:17:23
да но.... история то не линейная) в этом вся сложность)
ну то так, именно что пятничный пост с шутейкой про электрон и паттерны в джаве

Sergey
30.03.2018
08:17:42
не, пост годный) я на него натыкался как-то

Mykola
30.03.2018
09:05:44
я бы дополнил, там еще много весёлого

Артур Евгеньевич
30.03.2018
13:52:03
Здравствуйте уважаемые ООП разработчики. Пишу вам со следующим вопросом - как вы относитесь к тому, чтобы инджектить коннекшн к БД в констурктор сервиса? Я пока вижу проблему двух стульев: Если инджектим - то тереям стэйтлесс и иммутабельность, сервис становится зависим от внешней байды Если неинджектим - то приходится дергать коннекшн перед каждым методом из локатора, или еще откуда то + дубляж кода(котоырй можно убрать вынеся получение коннекта в приватный метод) Имею ввиду сервисы работающие с бд и реализующие интерфейс мапперов или репозиториев например

Roman
30.03.2018
13:55:28
Здравствуйте уважаемые ООП разработчики. Пишу вам со следующим вопросом - как вы относитесь к тому, чтобы инджектить коннекшн к БД в констурктор сервиса? Я пока вижу проблему двух стульев: Если инджектим - то тереям стэйтлесс и иммутабельность, сервис становится зависим от внешней байды Если неинджектим - то приходится дергать коннекшн перед каждым методом из локатора, или еще откуда то + дубляж кода(котоырй можно убрать вынеся получение коннекта в приватный метод) Имею ввиду сервисы работающие с бд и реализующие интерфейс мапперов или репозиториев например
По мне так лучше заинжектить. Ну типа смысл завязываться на локатор? Это ж тогда тестить геморройнее. А если оно получает конекшон стринг в конструкторе - то всё нормально, так как работа с базкой-ответственность этого сервиса. А если он не знает как в неё сходить.. то нафиг он такой вообще на свет родился (был инстанциирован)?)

Evgeniy
30.03.2018
13:57:39
пусть это будет мутабельным и а имутабельнео все остальное)))

грубо говоря никуда не деться от мутабельности при разработке

а также часть кода можно делать имутабельной

и будет место где дергается мутабельная штука возвращается результат (который имутабельный) и дальше работает в имутабельных штуках

Артур Евгеньевич
30.03.2018
14:06:32
каким образом ты теряешь стейтлесс и имутабельность в случае с инжектом и не теряешь в случае с локатором?
Коннекшн может оборваться из за ряда причин + в каких то окружениях может быть недоступен

Google
Aleh
30.03.2018
14:08:04
Коннекшн может оборваться из за ряда причин + в каких то окружениях может быть недоступен
как локатор решает проблему того, что коннекшн может оборваться

Aleh
30.03.2018
14:17:47
Артур Евгеньевич
30.03.2018
14:18:09
что значит забыть дернуть метод получения?
ну если мы не инджектим коннекшн, нам нужно его перед каждым запрсом к базе дергать

Evgeniy
30.03.2018
14:29:14
так у тебя он один раз создаться

и везде будет экземпляр одного и того же класса возвращаться

не будет пересоздаваться подключение же каждый раз

Roman
30.03.2018
14:38:29
не будет пересоздаваться подключение же каждый раз
Ну зависит от того что а приложение

У меня вот в C# каждый раз будет.

Evgeniy
30.03.2018
14:38:54
а смысл создавать кучу разных коннектов?

Roman
30.03.2018
14:38:58
Только там под капотом есть конекшон пул и по факту соединение рваться не будет

Ну то бишь Managed-обёртка задиспоузится и освобид память, а под капотом соединение всё ещё отркытым будет, если процесс живой. Чтоб накладные расходы уменьшить.

Артур Евгеньевич
30.03.2018
14:42:44
не будет пересоздаваться подключение же каждый раз
оно и сейчас не пересоздается, там не сервис локатор на самом деле, а коннекшн фактори, в которой пул соединений

Viktor
30.03.2018
15:44:54
есть задача, организовать пайплайн fetch>validate>covert>export для данных из нескольких источников. Типы данных разные, соответственно и валидаторы, конвертеры и експортеры зависят от типов. Изначально написал так, сделал обертки для данных по одному интерфейсу. Експортерами по очереди вытягиваю данные, врапаю их обертками и запихиваю в очередь. Потом фабрикой по типу данных тащу правильный валидатор и валидирую, результат валидации будет пара- (данные, месадж)его опять ложу в очередь. Если все ок и в кюшке только валидные данные, то из пар вытягиваю данные и запихиваю в кюшку. Конвертер и експортер работают аналогично, то есть имеют фабрику и по типу реализацию подсовывают. Вопрос, в правильном ли направлении думаю. Код на джава и он мягко говоря неприятный, куча кастов и инстанс оф в фабриках =(

pew
30.03.2018
19:29:13
я, например, знаю, что монада - это моноид в категории эндофункторов



Hell
30.03.2018
19:32:02
я, например, знаю, что монада - это моноид в категории эндофункторов
вы так говорите, как будто функторы высшего порядка ортогональны

pew
30.03.2018
19:32:22
M
30.03.2018
20:04:12
Привет. Подскажите как можно сделать нагрузочное тестирование веб приложения, да так, чтобы сэмулировать некоторый юзкейс пользователя, например: авторизация, создание сущности, получение списка сущностей.

Google
Bohdan
30.03.2018
20:07:04
wrk вроде для этого используют, не?

Sergey
30.03.2018
20:07:14
это как e2e тесты но только их можно запусктаь много много на одно приложение

wrk вроде для этого используют, не?
ммм... не, ну там можно на lua замутить, но.... проще jmeter какой

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

M
30.03.2018
20:08:07
Я о том, что может какие-то есть удобные под это дело инструменты.

da horsie
30.03.2018
20:08:43
https://www.google.com/search?q=load+testing+tools

тысячи их

Sergey
30.03.2018
20:08:49
сложная там часть все же тестовые данные запилить + более-менее реалистичное распределение нагрузки замутить

а написать - это любой QA осилит

Andrey
30.03.2018
20:13:23
Используем jmeter, пока не сталкивались с тем что что-то не смогли с его помощью запилить в плане сценария нагрузки

Alan
30.03.2018
20:30:28
он как раз враппер над jmeter

Страница 591 из 785