Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

А как такая хрень вообще происходит?

2378  1 2 3 4 5 6 7 все
alex445 коренной житель26.01.23 16:07
NEW 26.01.23 16:07 
в ответ Murr 26.01.23 10:19

Если оставлять кучу старого лапшекода, не обновляя на новые подходы, то сойдёт.

#21 
alex445 коренной житель26.01.23 16:26
NEW 26.01.23 16:26 
в ответ Программист 26.01.23 06:24, Последний раз изменено 26.01.23 16:27 (alex445)
Дальше ты переводишь все проекты на эту абстракцию и спокойненько работаешь еще 20 лет взяв еще 100500 заказов.

Где-то после этой фразы всё начинает идти не так, как в мечтах. Начинают появляться клиенты, которым нужно обязательно какая-нибудь распространённая ORM вместо вашего поделия, т.к. им неохота становиться зависимым от вас. А ещё через пару лет больше никто к вам за заказами не ходит, кроме всяких лохов. Ну и у вам остаётся лишь доить старых клиентов, если они ещё не поняли, что надо всё переписать на распространённые фреймворки.

#22 
AlexNek патриот26.01.23 19:28
AlexNek
NEW 26.01.23 19:28 
в ответ Программист 26.01.23 06:24
В результате у тебя появился несопровождаемый монстр с миллионом зависимостей

Через 20 лет появится в любом случае.

Вот недавно попался проект. Ни к одной строчке никаких претензий, всё по правилам. Но понять, как работает практически невозможно.

Так как для этого нужно знать как работает вся система в целом. Ну или хотя-бы раз увидеть как всё работает вместе.

#23 
Программист коренной житель26.01.23 20:12
NEW 26.01.23 20:12 
в ответ alex445 26.01.23 16:26
Начинают появляться клиенты, которым нужно обязательно какая-нибудь распространённая ORM вместо вашего поделия, т.к. им неохота становиться зависимым от вас.

Во-первых, от ORM тоже можно абстрагироваться тем же UnitOfWork.

Во-вторых, я совсем не уверен, что клиенту важно, работает ли под капотом EF или NHibernate или что-то другое. Какая БД под капотом - это важно, т.к. лицензии на SQLite и Oracle стоят разных денег :) И сами БД имеют разную производительность.

ORM - это инструмент. Ты говоришь автомеханику какими инструментами он должен пользоваться при починке твоей машины? :) Вот и тут тоже самое.

#24 
Программист коренной житель26.01.23 20:14
NEW 26.01.23 20:14 
в ответ AlexNek 26.01.23 19:28
Через 20 лет появится в любом случае.

Зависит от того, как создается и поддерживается код.

#25 
Murr патриот26.01.23 20:26
Murr
26.01.23 20:26 
в ответ Программист 26.01.23 20:12
Ты говоришь автомеханику какими инструментами он должен пользоваться при починке твоей машины? :)

------

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


И, кстати, да - уже лет 15-ть как надо интересоваться есть ли механика необходимые инструменты...безум

#26 
alex445 коренной житель26.01.23 20:31
NEW 26.01.23 20:31 
в ответ Программист 26.01.23 20:12
Во-первых, от ORM тоже можно абстрагироваться тем же UnitOfWork.

В нормальных ормах (EF) это уже давно встроено. Городить юнит над юнитом и прочие архитектурные излишества по огораживанию - нафиг.


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


))


Во-вторых, я совсем не уверен, что клиенту важно, работает ли под капотом EF или NHibernate или что-то другое. Какая БД под капотом - это важно, т.к. лицензии на SQLite и Oracle стоят разных денег :) И сами БД имеют разную производительность.

ORM - это инструмент. Ты говоришь автомеханику какими инструментами он должен пользоваться при починке твоей машины? :) Вот и тут тоже самое.

Лохам - да, неважно. Встречали вакухи, где надо знать распространённые фреймворки, а за знание нераспространённых в лучшем случае пропустят мимо ушей? Но могут и поржать.

#27 
alex445 коренной житель26.01.23 20:34
NEW 26.01.23 20:34 
в ответ Программист 26.01.23 20:14
Через 20 лет появится в любом случае.

Зависит от того, как создается и поддерживается код.

Программист, надеющийся, что за 20 лет всё поддерживается и обновляется - наивный лох.

#28 
alex445 коренной житель26.01.23 20:37
NEW 26.01.23 20:37 
в ответ Murr 26.01.23 20:26, Последний раз изменено 26.01.23 20:38 (alex445)
Может Я тебя удивлю, но в европах иногда встречается специфика - например, могут потребовать чтобы аккумулятор твоей автомашины зарядили током от определенной электростанции. спок

"У Мура своё кино" (С)

...где хаты от 12к в месяц, дома от 24.

#29 
Срыв покровов патриот26.01.23 20:39
NEW 26.01.23 20:39 
в ответ alex445 26.01.23 20:31
В нормальных ормах (EF) это уже давно встроено.

Можно пример, чего там в ЕФ встроено?

Лохам - да, неважно. Встречали вакухи, где надо знать распространённые фреймворки, а за знание нераспространённых в лучшем случае пропустят мимо ушей? Но могут и поржать.

К чему тут высер о вакухах?

речь же о заказчике, тут я с оратором выше согласен - они как правило и знать ни о каких ОРМах не знают.

#30 
alex445 коренной житель26.01.23 20:42
NEW 26.01.23 20:42 
в ответ Срыв покровов 26.01.23 20:39, Последний раз изменено 26.01.23 20:44 (alex445)
речь же о заказчике - они как правило и знать ни о каких ОРМах не знают.

Только с таких наш брат и выживает.

#31 
Срыв покровов патриот26.01.23 20:53
NEW 26.01.23 20:53 
в ответ Программист 26.01.23 20:12
Во-первых, от ORM тоже можно абстрагироваться тем же UnitOfWork.

я может сейчас скажу очень не популярное мнение, но манал я уже все эти абстрагирования.

Есть у нас один такой проект, сделанный по методичке евангелистов - это полный П.

Нужна тебя новая функция GetCustomerById

Сначала ты добавляешь её в три интерфейса: IcustomerDistributedService, Icustomerservice и IcustomerRepository. Затем пишешь в трех местах реализацию.

Если есть mock repository и сервисы, то не забываешь дописать и там.


Далее - у customer появилось новое поле цвет ногтей. Объявляешь его в классе customer(он у нас соответствует таблице в БД), затем в Customer DataTransferObject, иначе ведь не православно Entity классы использовать в presentation layer.
Не забыть прописать присвоения в конвертации entity => DTO и обратно.


И надо было так упарываться?

#32 
Срыв покровов патриот26.01.23 20:55
NEW 26.01.23 20:55 
в ответ alex445 26.01.23 20:42

Брат твой коня в канаве доедает.
какой unitOfWork встроен в Entity Framework?

#33 
alex445 коренной житель26.01.23 21:00
NEW 26.01.23 21:00 
в ответ Срыв покровов 26.01.23 20:53
Если есть mock repository и сервисы, то не забываешь дописать и там.

А есть такая абстракция, которая за тебя напоминает, где ещё какая шняга должна быть дописана, чтобы я в голове всю эту канитель не держал?

#34 
Срыв покровов патриот26.01.23 21:05
NEW 26.01.23 21:05 
в ответ alex445 26.01.23 21:00

Есть, называется компилятор

#35 
alex445 коренной житель26.01.23 21:06
NEW 26.01.23 21:06 
в ответ Срыв покровов 26.01.23 20:55

Брат твой коня в канаве доедает.
какой unitOfWork встроен в Entity Framework?

Кто-то тут недавно хвастался, что с искуственным идиотом беседы ведёт. Первые же ссылки в Яндексе по "какой unitOfWork встроен в Entity Framework?" дают что-то подобное. Волчара позорный!


А это чтоб добить.


))

#36 
alex445 коренной житель26.01.23 21:07
NEW 26.01.23 21:07 
в ответ Срыв покровов 26.01.23 21:05
Есть, называется компилятор

Как вам помог компилятор "Если есть mock repository и сервисы, то не забываешь дописать и там."?

#37 
Программист коренной житель26.01.23 21:08
NEW 26.01.23 21:08 
в ответ Murr 26.01.23 20:26, Последний раз изменено 26.01.23 21:45 (Программист)
Может Я тебя удивлю, но в европах иногда встречается специфика - например, могут потребовать чтобы аккумулятор твоей автомашины зарядили током от определенной электростанции. спок

Да, ты меня удивил :) Я еще не видел, чтобы кто-то заряжал аккумуляторы на автосервисе :) Просто покупают новый, а старый сдают на утилизацию :)


И, кстати, да - уже лет 15-ть как надо интересоваться есть ли механика необходимые инструменты...безум

Не знаю в какой дыре ты живешь, но я никогда этим не интересовался :) Если нет инструментов, то просто говорят "мы не можему это починить" и все. Я про активно инструментарием механика не интересуюсь :)

#38 
alex445 коренной житель26.01.23 21:09
NEW 26.01.23 21:09 
в ответ Программист 26.01.23 21:08
Может Я тебя удивлю, но в европах иногда встречается специфика - например, могут потребовать чтобы аккумулятор твоей автомашины зарядили током от определенной электростанции. спок

Да, ты меня удивил :) Я еще не видел, чтобы кто-то заряжал аррумуляторы на автосервисе :) Просто покупают новый, а старый сдают на утилизацию :)

У семизнаков свои причуды. ¯\_(ツ)_/¯

#39 
Программист коренной житель26.01.23 21:22
NEW 26.01.23 21:22 
в ответ alex445 26.01.23 20:31
В нормальных ормах (EF) это уже давно встроено. Городить юнит над юнитом и прочие архитектурные излишества по огораживанию - нафиг.

Нафиг или нет, ты будешь говорить, когда один клиент начнет требовать EF, другой NHibernate и тебе придется дублировать код. А после дубля кода тебе сообщат об ошибке и эту ошибку тебе придется фиксить в 2-х местах... А разных ORM много.


Но я вас прекрасно понимаю.

Нихрена ты не понимаешь :) Ты просто дальше собственного носа не видишь :)


Лохам - да, неважно.

Лохи тут не причем. Заказчику надо, чтобы софт стабильно работал, его не интересует ни архитектура, ни используемый инструментарий. Собственно говоря, техническое задание - это набор фич и критериев приемки рачего кода. В ТЗ описывается "ЧТО" надо сделать, а не "КАК".


Встречали вакухи, где надо знать распространённые фреймворки, а за знание нераспространённых в лучшем случае пропустят мимо ушей? Но могут и поржать.

Не понимаю о чем ты говоришь. Кто над кем может поржать?

#40 
1 2 3 4 5 6 7 все