Search
Write a publication
Pull to refresh
2
0
Сергей Синельников @ssergs

.Net SeniorDeveloper/TeamLead

Send message

Перехватчики выглядят заманчиво, но привязывать их через файл и номер строки - это скорее для програм работающих с кодом, а не для реальной жизни. А то Enter поставил и "привет".
Можно ли через перехватчик вызвать код, который перехватили? (сделать обвертку)

Спасибо за интересное и полезное решение. Даже один IsEnabled уже стоит того, чтобы использовать подобный подход и не вычислять строку не зависимо от уровня логгирования. Или я ошибаясь и библиотеках логгирования тоже есть подобный механизм позволяющий не вычислять интерполяционные строки для не соответсвующего уровня?

На картинке жидкость в клапане теслы почему-то движется более активно в обратном направлении - слева направо (хотя тут макимум сопротивления), а должно быть наоборот справа налево (тут минимум сопротивления). Может я чего-то не понимаю?

Эти же деньги вернуть детям напрямую и объяснить дикость ситуации (если учатся, то уже достаточно сознательные). Наказание должно быть соответствующим и неизбежным кто бы косвенно не был втянут.

Думаю, что в предоставленной вами реализации, вектор значений косвенно содержит ключевые точки. В любом случае характеристик там должно быть больше. Спасибо!

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

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

>>Hyundai Motor будет использовать SiC-чипы производства Infineon в своих EV следующего поколения. Считается, что эти чипы позволяют увеличить запас хода автомобиля более чем на 5% по сравнению с кремниевыми.

Т.е. существующие чипы настолько много жрут эликтричество?

Напомнило фильм "Черная дыра", одно время хотелось даже реализовать то, как существа видели звуком, интересно — да применения этому практически нет, камеры дешевле


Заголовок спойлера

image

1) все зависит от сроков сдачи проекта — тут спору нет. Но я не вижу проблемы вынести в отдельную библиотеку бизнес логику и оставить контроллер чистым сразу. Не думаю, что разраб съэкономит много времени, если будет сразу в контроллер писать. А приучить себя к чистому коду лучше сразу (в разумных приделах срока проекта).
2) +
3)


Проверить что сумма больше/меньше пороговых значений — это интерфейсная часть.
if (!ModelState.IsValid) вполне себе жизнеспособен на контроллере

да, если такая же валидация (или расширенная) продублирована в сервисе логики, иначе прямой вызов этого сервиса может приводить к проблеме из-за отсутсвия части валидации.
4) абстаркции ради абстракций делать не нужно. За чистый контроллер Вам скажут все спасибо в будущем. Еще ни разу не видел восторга от коллег, когда они встречали код напрямую в контролле.

Причины по которым нужно делать контроллер тонким:


  1. Правило — валидация должна быть только в сервисе бизнес логики. Валидация должна быть расположена в одном месте и выполняться один раз. Зачастую валидацию делают единажды в контроллере/фильтре и пропускают в сервисе бизнес логики, что чревато отсутствием валидации при вызове сервиса бизнес логики напрямую. Бывает, что валидацию дублируют в фильтре/контроллере и в сервисе бизнес логики, что избыточно.
  2. Юнит тестирование должно покрывать сервис бизнес логики, включая валидацию. Это уменьшит количество и упростит автоматизированные тесты для контроллера. По большому счету автоматизированные тесты будут сфокусированы более на HTTP уровнь.
    Правило — юнит тесты должны покрывать всю бизнес логику
  3. гибкость при подходе с тонким контроллером — все сервисы и логика может быть вынесена в отдельную бибилиотеку и переиспользована.
    Правило — бизнес логику (включая валидацию, маппинг) можно и нужно вынести в отдельную библиотеку и переиспользовать по необходимости (в тестировании например)
  4. централизация обработки ошибок — это мимимум, который должен быть всегда. Так будет легче тестировать обработку ошибок. Код в одном месте — читаемость выше.
    Правило — Не нужно писать try/catch в каждом методе контроллера (это делается крайне редко). Используй централизованный обработчик ошибок
Была бы интересна статисика о том какие болезни в комбинацией с короновирусом дают летальный исход. Очевидно, что если есть проблемы связанными с легкими, то тут высока вероятность, что будут проблемы вплоть до летального исхода. Но хотелось бы этот список расширить или узнать по статистике. Аллергия, ВИЧ + короновирус, есть ли статистика?
Согласен — небольшие плюсы, но они не перевесят достоинства прямого доступа к списку зависимых сущностей. А так приходится дополнительные Include и Select писать.
Мне нравится EF Core, но не понятно почему одну из самых важных фич оставляют на потом :(. Такое чувство будто гонятся за количеством фич
Отсутствие нормальной реализации связи многие ко многим — огромное неудобство, граничащее с невозможностью использования EF Core. Лучше бы сконцентрировались на реализации этой фичи
Очень жаль, что нет возможности. Настройка «не хранения»/«хранения» файлов в корзине была бы для многих очень полезной. Например, при удалении файлов больших размеров, я не хотел бы их хранить в корзине.
Появилась ли возможность удалять файлы безвозвратно, без корзины?
Понравился dbForge SQL Complete, особенно «Code Completion». Стоящая вещь, спасибо.

Information

Rating
Does not participate
Location
Батуми, Аджария, Грузия
Date of birth
Registered
Activity