Содержание
- 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. Скачать презентацию



























Разработка одностраничного сайта для регистрации абитуриентов ГАПОУ СМПК
Глобальная сеть и интернет
Повторяем возможности графического редактора
Презентация на тему Двоичное кодирование символьной информации
Перспективы развития и применения информационно-правовых систем
Введение в теорию информации
powerpointbase.com-1018
IPC (inter-process communication), обмен данными между потоками одного или разных процессов
Хранение информации. Передача информации
Язык программирования SASS
Разработка системы приема заявок на проведение работ по ремонту компьютерного оборудования
Booking.com
Элементы комбинаторики, теории множеств и математической логики. Операции импликация, эквиваленция
Юридическая компания Астрея. Кейс
Анимация смены слайдов. Microsoft PowerPoint
Создание мультимедийной презентации В рамках создания тематического учебного проекта
Программирование на языке Python
Interneta pakalpojumu izmantošanai nepieciešamais aprīkojums un izplatītākie pakalpojumu veidi
Файлы и папки. Ваши данные на компьютере
Устройства Памяти компьютера
Создание гиперссылок
Построение карт и оценка точности структурных построений
Нетикет, или правила хорошего тона в цифровом пространстве – онлайн-конференциях (вебинарах)
Создание компьютерной игры – визуальная новелла
Врач рядом
Представление данных в текстовом формате. Информационные технологии
Добро пожаловать в мир AVON
Единая платформа электронных сервисов для образования