Upload
-
View
274
Download
1
Embed Size (px)
DESCRIPTION
Презентация с доклада на SPDay 14.12.2013. В докладе описываются приемы и инструменты контроля качества кода решений SharePoint, как для заказчика, так и для подрядчика.
Citation preview
SharePoint Code QualityСтанислав ВыщепанSharePoint MVP
Обзор
Проблемы с качеством решений SharePoint• Контроль качества на стороне клиента• Контроль качества на стороне разработчика
Довольны ли вы качеством решений?• Кто из вас доволен качеством сторонних решений?• Кто из вас считает качество своих решений достаточно хорошим?
Почему возникают проблемы?
• В SharePoint окружение изменчиво и непредсказуемо• Решения в SharePoint не изолированы друг от друга• Нигде не написано как делать правильно• SharePoint чертовски сложен
Как это влияет на потребителей
• Нестабильность фермы и потеря функционала• Падение производительности• Сложности при апгрейде
Как это влияет на разработчиков?
• Высокие затраты на развертывание• Больше переработок• Больше затрат на тестирование с меньшим результатом• Сложность поддержки
Как повышать качество?
• Тестирование• Ручное – только функциональные сценарии• Нагрузочное – только быстродействие• Автоматическое – дорого
• Анализ решений (инспекции)• Вручную – требуется квалификация• Автоматически – выявляет не все проблемы
Что дальше?
Проблемы с качеством решений SharePointКонтроль качества на стороне клиента• Контроль качества на стороне разработчика
Кто заинтересован
Ферма не упадет?
Администратор
Как будем поддерживат
ь и апгрейдить?
Архитектор
Нельзя просто взять и проверить решение
Решение SharePoint – черный ящик
Внутри ящика
• .NET код
• XML файлы: Манифесты, Фичи, Типы, Поля, Шаблоны…
• HTML/ASPX/ASCX/CSS/JS/XSLT
• Ресурсы: картинки, шаблоны документов
• … и еще 100500 других «мелких деталей»
ДемоВнутри ящика
SPCAF приходит на помощь
Кто все эти люди?
Проверяет решение с помощью ~330 правил
Визуализирует связи между частями решения
Считает метрики кода и артефактов
Делает отчет об архитектуре решения
ДемоSPCAF
Что дальше?
Проблемы с качеством решений SharePointКонтроль качества на стороне клиентаКонтроль качества на стороне разработчика
SPCAF в процессе разработки
• Работает прямо в Visual Studio• Работает небыстро, надо запускать отдельно
• Интегрируется с системой сборки• Готовый компонент для TFS• Command-Line Utils для других систем
Кто заинтересован
Код содержит ошибки?
Разработчик
Код работает?Код
поддерживаемый?
Проблем не будет?
Технический руководитель
ДемоSPCAF в Visual Studio
Проблемы
• SPCAF не ориентирован на разработчиков• Правила часто ругаются на «хороший» код• SPCAF стоит 2500EUR• Но есть бесплатный SPCop
SPCAF Contrib
• Библиотека правил для SPCAF• https://spcafcontrib.codeplex.com/• 33 правила специально для разработчиков• По состоянию на вчера
• Бесплатно работает в SPCOP
ДемоSPCAF Contrib
Разница между хорошим и плохим кодом
Дополнительные инструменты
• Resharper• VisualStudio Code Analysis \ FxCop• StyleCop• SharePoint Software Factory• SharePoint Solution Deployer
ДемоДополнительные инструменты
Заключение
Проблемы с качеством решений SharePointКонтроль качества на стороне клиентаКонтроль качества на стороне разработчика
Ссылки
• http://www.spcaf.com/support/downloads/• https://spcafcontrib.codeplex.com/• https://spsf.codeplex.com/• https://spsd.codeplex.com/• https://stylecop.codeplex.com/• http://www.jetbrains.com/resharper/
Вопросы?Станислав ВыщепанSharePoint [email protected]://gandjustas.blogspot.com@gandjustas