Содержание
- 2. О чем Почему нужно бороться со сложностью Откуда берется Кто и как может с ней бороться
- 3. Управление сложностью каждый день Команда должна понимать и дописывать код (хотя бы в текущем проекте) Сложность,
- 4. «Протекание» и смешение уровней абстракции Неправильное именование Слабая связанность, сильная связность Отсутствие unit-тестов Не применяются SOLID,
- 5. Сложность предметной области Что мешает развитию системы, в которой в общем-то все неплохо Сложность, внесенная разработчиком
- 6. Желание решить задачу выше своих компетенций Недостаточное понимание задачи Чаще встречается у молодых разработчиков Оверинжиниринг
- 7. Желание использовать модный фрэймворк/подход Желание развить компетенции Чаще свойственно разработчикам среднего уровня Желание написать «классно»
- 8. Гибкий и качественный код Продуманные точки расширения Сложные алгоритмы Гений
- 9. CodeReview для всех Отдельный пункт CodeReview – «проверить понятность», Управление творческой энергией разработчика
- 10. Практики из SCRUM Не давать задачу «целиком» Force collective code ownership Коммуникации
- 11. DI/IoC AOP DDD и Enterprise-паттерны Асинхронность/многопоточность Обобщенные классы и алгоритмы Использование готовых компонентов Функциональный стиль …
- 12. IL Code Нативный код .NET Sources Nuget lib sources Common Code Module common code Business logic
- 13. Enterprise Locator Layer Service Repository Broker ActiveRecord Tier Bus Interceptor ServiceWrapper Adapter Microservices
- 14. Уровень классов
- 15. Уровень методов
- 16. Что делать? Написать как обычно «А не рано ли принимается решение»
- 17. #1 #2
- 18. Ограничение набора инструментов Знать возможности используемого фрэймворка Предпочитать встроенные инструменты Бюрократия при добавлении новых библиотек –
- 19. Непреодолимая сложность Требования к производительности Сложность предметной области Компромиссы и ограничения фрэймворка, библиотек и бизнес-требований
- 20. #1 Просто код
- 21. #1 Контекст
- 22. #1 Документация и комментарии
- 23. #2 Просто код
- 24. #2 Комментарии
- 25. Документация, комментарии Описание сложного алгоритма (возможно со ссылками) «Почему так» Контекст
- 26. Валидация графа Алгоритм Поиск «треугольников» Упрощение графа с использованием шагов: Убрать «петли» Сократить пути, относящиеся к
- 28. Изоляция/Инкапсуляция Сложность не отражается на публичных интерфейсах От сложности ничего не зависит Сложность сконцентрирована в одном
- 30. Скачать презентацию



























Создание нового листа и сохранение документа в Microsoft Word. Урок 2
Blue-ray. Варианты и размеры. Создание Blue-ray
Профессия моего папы инженер-программист
Ms word. Форматирование документа. Установка параметров шрифта и абзаца, создание границ
Защита информации. Безопасность информации. Математический аппарат
Разгони свой сайт. Кэширование
Сессия №5. Внешняя оптимизация
Алгоритмы и программирование
История развития вычислительной техники
Арифметические операции в 2-й системе счисления
С чего начать в IT
Компьютерное моделирование
Концептуальное и даталогическое проектирование баз данных
Геометрическое моделирование и компьютерная графика
Медиакоммуникации
Информационная безопасность
Чтение технической документации
Разработка информационной системы для коммерческой организации с помощью case-средств
,ІІС, що засновані на штучних нейронних мережах лекція № 5-1
«Что нам стоит сайт построить?!» Рекомендации по созданию сайта (интернет-ресурса) педагога в рамках конкурса профессионального
ГОСТ 19.002-80. Схемы алгоритмов программ. Правила выполнения
Начала алгоритмизации и программирования
Коммуникационное агентство ООО PR Partner. Практика
Файл и файловая система
Журнал “Дружба народов”
Поиск информации в сети. Интернет
Регистрация в личном кабинете Госуслуг на экзамен в ГИБДД
Глобальная компьютерная сеть Интернет. Тест