Содержание
- 2. План Качество Какие способы достичь качества Качество кода в аспекте проектирования Принципы ООП/ООД Метрики кода NDepend
- 3. Зачем качество?
- 4. Холиворная тема
- 5. “Железный треугольник” Железный треугольник, или треугольник менеджмента. Его смысл в том, что ограничения на объём работ,
- 6. “Железный треугольник” Качественное ПО получается в результате баланса между объемом работ, сроками и бюджетом Качество http://www.intuit.ru/department/se/msd/4/3.html
- 7. К чему эти треугольники?
- 8. Ценности качественного кода
- 9. Какие есть способы? Организационные XP (eXtreme Programming) Code review Project management, methodology, Utilities: StyleCop, FxCop, Code
- 10. Какие есть способы? Внешние – программистские практики Парное программирование Статический анализ кода Code review , Unit-tests,
- 11. Сode Review Организационные способы
- 12. Статический анализ кода StyleCop, FxCop, Code Analysis, Ndepend Цель автоматизировать review кода и обратить внимание на
- 13. Методологии и управление Управление проектом напрямую влияет на результаты и удовлетворенность от работы Хаотическое управление =
- 14. Extreme programming Парное программирование Всесторонний code review Юнит-тесты на весь код (TDD) YAGNI, не пишем того,
- 15. Обучение Никакие утилиты стат. анализа не заменят людей Позволяет писать качественные код Повышает коммуникации Улучшает команду
- 16. Юнит-тесты, TDD Юнит-тесты – позволяют контролировать соответствие кода задуманному поведению. ТDD – подход к написанию кода
- 17. Рефакторинг Технические способы
- 18. Защитное программирование Defensive programming Использование ассертов (asserts) Использование контрактов кода (code contracts) Ассерты или контракты как
- 19. Технический долг К его появлению приводит быстрая и бездумная разработка Когда мы понимаем, что можем написать
- 20. Ценности, принципы и паттерны
- 21. Принципы ООП/ООД Принципы SOLID Принципы GRASP KISS = Keep it simple DRY = Don’t repeat yourself
- 22. Метрики кода Это количественные показатели, которые можно измерить и которые могут дать представление о качестве кода
- 23. NDepend. Dependency graph
- 24. NDepend. Dependency graph
- 25. Ndepend. Dependency matrix
- 26. Ndepend. Metrics view
- 27. CQL Query Explorer
- 28. NDepend. CQL SQL подобный синтакс Запросы к базе кода (code base), чтобы полу- чить метрики SELECT
- 29. Метрики
- 30. Coupling Efferent coupling (Ce): внутренняя связанность, число типов внутри сборки, которые зависят от типов из вне
- 31. Instability (I) Instability (I): отношение внутренней связанности(Ce) к общей связанности, индикатор устойчивости к изменениям. I =
- 32. Abstractness (A) Abstractness (A): абстрактность, отношение числа внутренних абстрактных типов к числу внутренних типов. A=0 –
- 33. Relational Cohesion (H) Relational Cohesion (H): относительная сцепленность, среднее число внутренних отношений на тип: H =
- 34. Coupling, Cohesion, Abstractness and Instability metrics on example Се = внутренняя связанность, Са – внешняя, I
- 35. Lack of cohesion (LCOM) Принцип SRP утверждает, что класс должен иметь не более чем одну причину
- 36. Cyclomatic Complexity (CC) Число следующих выражений в методе: if, while, for, foreach, case, default, continue, goto,
- 37. Distance from main sequence: zone of pain and zone of uselessness Main sequence в терминах NDepend,
- 38. Cсылки и источники Msug http://msug.vn.ua/Posts/Details/4199 - NDepend http://msug.vn.ua/Posts/Details/4221 - GRASP NDepend http://www.ndepend.com/ http://www.ndepend.com/GettingStarted.aspx Метрики NDepend http://www.hanselman.com/blog/content/binary/NDepend%20metrics%20placemats%201.1.pdf
- 40. Скачать презентацию





































МаркетингПочему маркетинг? Почему именно сейчас?Факторы и секреты успеха
Мешочек для хранения работ
Анри де Тулуз-Лотрек. Жизнь и творчество Маленького гения
Проект «Нептун в гостях у Атланта»
РЕАЛИЗАЦИЯ ПРОЕКТА
Фотодело. Работа Свиридовой Анастасии
Банковская система
Презентация на тему Чарушин "Страшный рассказ"
Проблемы продвижения донорства крови
Внимание, переезд!
Рисунки Кучеровой Ксении, 13 лет
ASP.Net
Технологический процесс приема,обработки,выдачи переводов
Калянов Георгий Николаевич д.т.н., проф., зав. лаб. ИПУ РАН, зав. каф. МФТИ
Неоднозначность массовой культуры
Сеть блинных Блинофф
Фразеологизмы. Употребление в речи
Circus
Многообразие организмов
Стратегическое моделирование в маркетинге
Реклама – двигатель торговли
PhitoЛайн. Бизнес-проект
Этика и этикет (4 класс)
Презентация на тему Полоролевое развитие детей старшего дошкольного возраста
Радиоавтоматика. Лекция 14
Устройство компьютера
Тайм менеджмент
РЫНОК ФИНАНСОВЫХ УСЛУГ: СТЕРЕОТИПЫ ПОТРЕБИТЕЛЬСКОГО ПОВЕДЕНИЯ