Pull to refresh
0
0
Send message
Или вот смотри отличный пример придумал, играешь ты в КС или танки или еще во что нибудь, напряженная борьба, сидишь потеешь и тут сервер падает, всех нафиг выкидывает из игры, ок логинишься играешь дальше и через 15 мин сервер опять падает, и новость на сайте: «Вот так и так мы превысили критический онлайн так что сервера будут падать, но вы не переживайте у нас включен restart always так что через 2-3 мин после падения они снова будут подниматься, наш тех. дир. VolCh убедил нас что это самая правильная логика работы серверов, через недельку мы купим новое железо а пока терпите. „

Надеюсь такой пример убедит тебя что ты говоришь полную ерунду)
>Не не всё остальное. Например именование переменных, декомпозиция на функции/методы, единственная ответственность — пока нет сильного ИИ, никакой линтер не скажет, что переменную лучше назвать amount, а не sum или count.
Ну и что в этих кейсах ты выкидываешь?
Есть вообще хоть один плюс от того что процесс падает?
>В лог и так запишется необработанное исключение.
Кто его запишет если все упало? Да еще и с бектрейсом без которого эксепшен практически бесполезен.

>А процесс перезапустится, если указать что-то типа restart always
Я бы посмотрел на тебя если бы у тебя базы данных падали и запускались по restart always
>которые обрабатываются так, что никто о них не знает.
Просто не надо их обрабатывать так что бы об этом ни кто не знал) в чем проблема? письмо на почту сложно отправить или в лог записать хотя бы?

>Если это примерно то же самое, то это просто автоматизированное детектирование явной грязи в коде.
Так и есть, а все остальное как ты сам сказал это алгоритм и к оценки идеальности кода не имеет отношения.
>Эту ошибку нельзя просто проглотить и замолчать
А еще есть такая штука называется электронная почта, туда можно слать письма с возникшими эксепшенами.

Тут 2 варианта
1) забиваешь на эксепшены и тебе в 5 утра звонят с криками у нас нихрена не работает, все упало, сделай что нибудь мы кучу бабок просираем.
2) пилишь обработку эксепшенов, по ночам сервер ловит хайлоад и разгребает столько сколько позволяют ресурсы, пока ты смотришь эротические сны, а утром ты приходишь на работу, делаешь себе кофе, читаешь отчеты об ошибках, смотришь графики и со всем этим идешь к босу просить денег на новое железо.
Давай рассмотрим реальную ситуацию, вот стоит у тебя задача построить некую систему реального времени, например систему мониторинга, ты можешь неделю думать как и что тебе сделать, попробовать что нибудь написать, потом еще неделю на осознание того что твое решение нифига не подходит по требованиям да же в теории… или можешь вспомнить про лямбда и каппа архитектуры и у тебя в голове готовая схема ключевых элементов системы, надо только конкретные детали додумать. Или ты можешь сейчас на ура выдать пару альтернатив лямбда и каппа архитектурам, после минуты раздумий, которые лучше подойдут под эту конкретную задачу? Очень интересно было бы послушать.
>Тебе дают квадратное уравнение, а у тебя в голове «2 + 3»
Так паттерны это и есть квадратные уравнения, это шаблон, можешь взять его частично, можешь дополнить…
>это ты как программист должен такие шаблоны выдавать на ура после минуты раздумий
любую архитектуру надо проверять на опыте и делать выводы, паттерны это то что уже проверено и известны плюсы и минусы.
>т.е. идём по пути задача -> решение
все верно
>а не бегать с десятком шаблонов «в какую бы задачу их воткнуть».
так же как и не решать все задачи через квадратные уравнения, это проблема ограниченного кругозора а не паттернов, причем тут они вообще?
>Люди потеряли смысл паттернов — от того и городят то, что и написано в заголовке статьи — переусложнённое ПО.
не понимаю о чем ты и где ты нашел хоть что то сложное в паттернах, он как раз и помагают не усложнать, это простые удачные решения часто встречающихся задач.
>когда new не смог память выделить
Точно такой же стандартный сценарий как и некорректный запрос. В случае если это некий сервер и ему не хватает памяти для очередного подключения можно просто вернуть ошибку подключения с соответствующей информацией, и не надо ни какие дампы анализировать, сразу всем будет понятно что произошло, а сервер спокойно продолжит работу.
На прошедшем pgday вот этот чел http://pgday.ru/ru/2016/speakers/28 рассказывал что у них все построено на микросервисах, один микросервис переписывается командой с 0 за неделю и при таком раскладе совершенно пофиг на чем он написан, хоть на хаскеле, зато разработчики ни чем не ограничены в выборе технологий и могут спокойно набираться опыта и расти в профессиональном плане.
>2. Не применяйте методики только потому, что кто-то очень много о них говорит.
А когда их нужно применять?

>Сначала идёт задача и её понимание, и только потом, МОЖЕТ БЫТЬ, после того как придумано решение, его можно «стандартно» решить шаблоном, да и то, если этот шаблон нужен.
Так сказал как будто паттерны проектирования что то плохое, это архитектурные решения проверенные временем, ну относительно проверенные. Они не могут быть нужны или не нужны, они или подходят для задачи или не подходят.
>Там могут быть ненужные по ТЗ обработки исключительных ситуаций, например :)
Если в ТЗ чего то нету, а ты понимаешь что это нужно, надо написать манагерам и уточнить. Ни кто в серьезном проекте не забивает на отказоустойчивость софта.

>А линтерам, которые сами чистят код, я бы точно не доверился.
не тупи, они показывают ошибки и ты сам решаешь что с ними делать.
>Да. Посмотрите, например, лекции Гугла. Там так прямо и говорят — если падает, то пусть уже падает.
Подозреваю что вы не понимаете о том что там говорят.
Сами то будете пользоваться например веб сервером который падает от любого некорректного запроса?
>2) код сам по себе не решает задачу, её решает алгоритм в нём реализованный, код может быть идеальным, а алгоритм — нет.
Так код это и есть алгоритм записанный на определенном языке, что там может быть лишнего? неиспользуемая переменная? Чистить такие вещи задачи линтера, им только ленивый не пользуется. Получается мы живем в мире идеального кода)
>Неэффективность можно выбросить
Это уже эзотерика какаято
Бредовый тезис.
Например код который не обрабатывает исключительные ситуации идеален? Или что ты выкинешь из когда который сам по себе не эффективно решает задачу, требует больше ресурсов чем нужно? Что бы ты выкинул из сортировки пузырьком?

Information

Rating
Does not participate
Registered
Activity