Your SlideShare is downloading. ×
0
Решения сообщества для         Качай

SharePoint
        Обзор и рекомендации
                               Исправляй
   ...
Баум Виталий
Старший SharePoint разработчик Conteq Ltd
http://butaji.ru
План доклада
• Обзор доступных решений
• Установка и настройка
• Работа с решениями
Где искать решения?
• Тестирование проектов ISV
• Сообщества разработчиков
Категории решений
•   Разработка
•   Диагностика
•   Тестирование
•   Развертывание
•   Элементы управления
•   Шаблоны уз...
Разработка
Разработка: SPVisualDev
Сайт: http://spvisualdev.codeplex.com/
Преимущества:
• Удаленная разработка
• Несерверная ОСь
• Си...
Разработка: WSPBuilder
Сайт: http://wspbuilder.codeplex.com/
Преимущества:
• Стандарт прозрачной сборки решений
• Расширен...
Разработка: Installer
Сайт: http://sharepointinstaller.codeplex.com/
Преимущества:
• Стандарт для упаковки решений
Разработка: U2U CAML
Сайт: http://u2u.be/Res/Tools/CamlQueryBuilder.aspx
Преимущества:
• Составление запросов
• Удаленные ...
Разработка: Reflector
Сайт: http://www.red-gate.com/products/reflector/
Преимущества:
• Просмотр реализации
• Опасно для н...
Разработка: CAML.NET
Сайт: http://code.msdn.microsoft.com/camlintellisense/
Преимущества:
• Intellisense для CAML
Разработка: CKS
Сайт: http://cksdev.codeplex.com
Преимущества:
• Аьлянс разработчиков с большим
  количеством productivity...
Разработка: Imtech
Сайт: http://blog.mastykarz.nl/tools/
Преимущества:
• Большой набор утилит для разработки
• 2010: Layou...
Разработка: WSS3WF
Сайт: http://wss3workflow.codeplex.com/
Преимущества:
• Шаблоны для форм рабочих процессов
  WSS
Разработка: SPDActivities
Сайт: http://spdactivities.codeplex.com/
Преимущества:
• Отправка письма с вложением
• Запуск др...
Диагностика и тестирование
Диагностика: Perfomance
Сайт: http://features.codeplex.com/
Преимущества:
• Настрока web.config (ajax, silverlight)
• Набо...
Диагностика: FxCop Rules
Сайт: http://sovfxcoprules.codeplex.com/
Преимущества:
• Анализ Best Disposal Practices
• FxCop
•...
Диагностика: SPManager
Сайт: http://spm.codeplex.com
Преимущества:
• Исследование объектной модели
• Внесение интерактивны...
Элементы управления
Компоненты: SmartTools
Сайт: http://smarttools.codeplex.com/
Преимущества:
• Пример разработки элементов
  управления
• Au...
Компоненты: iLove SP
Сайт: http://ilovesharepoint.codeplex.com/
Преимущества:
• PowerWebPart
• PowerShell Scripts
• Lookup...
Компоненты: lekman
Сайт: http://lekman.codeplex.com/
Преимущества:
• SharePoint Cache Dependencies
• Unit-tests base-class
Компоненты: Discussion
Сайт: http://mossdiscussion.codeplex.com/
Преимущества:
• Поле «обсуждения»
• Социальная активность
Компоненты: ToolBasket
Сайт: http://sptoolbasket.codeplex.com/
Преимущества:
• Поле рейтинга
• Поле подстановки
• Дизайнер...
Компоненты: jPoint
Сайт: http://jpoint.codeplex.com/
Преимущества:
• Клиентская модель для SharePoint на
  jQuery
Компоненты: Search
Сайт: http://sct.codeplex.com/
Преимущества:
• Веб-части поиска
Компоненты: CKS
Сайт: http://cks.codeplex.com/
Преимущества:
• Авторизация на формах (FBA)
• Шаблоны UG
• Кастомизация Wik...
Компоненты: PKS
Сайт: http://pks.codeplex.com
Преимущества:
• Работа с аудио
• Видео
• Презентации
• Социализация
Компоненты: RIC
Сайт: http://ric.codeplex.com/
Преимущества:
• Реализация портала на MOSS для
  академических нужд
• «Соци...
SPRequest
SPRequest
•   Обертка для неуправляемого кода
•   Каждый SPSite имеет свой SPRequest
•   OWSSVR.DLL (IIS ISAPI)
•   /_vti_...
SPRequest
• “Potentially excessive number of SPRequest
  objects (10) currently unreleased on thread
  23. Ensure that thi...
SPRequest
• HKEY_LOCAL_MACHINESOFTWAREMicro
  softShared ToolsWeb Server
  ExtensionsHeapSettings
• Создать ключ
  «SPRequ...
Дизайн, уменьшающий
 количество запросов
Меньшее количество запросов


 Web      Logic     Data
Меньшее количество запросов
public Costumer GetCostumerById(int id)
{
  Costumer costumer;
  using (SPWeb web = new SPWeb(...
Меньшее количество запросов
public Costumer GetCostumerById(int id,
              SPWeb web)
{
  return web.Lists["Costume...
Меньшее количество запросов
public string Title
{
     get
     {
         return GetCostumerById(id,
               SPCon...
Анализ ошибок
Нет магическим значениям
• Item[“Sttatus”] != Item[FieldIds.Status]
• web.Lists[“Costumers”] !=
     web.Lists[Lists.Const...
Best Disposal Practices
• http://msdn.microsoft.com/en-
  us/library/aa973248.aspx
Best Disposal Practices
public SPWeb MyWeb
{
     get
     {
           using (SPWeb web = new SPWeb(Url))
           {
  ...
Статическая типизация
Статическая типизация
•   Слабая типизация
•   Размазанная логика
•   Зависимости от объектов
•   Большое количество неявн...
Статическая типизация
• LINQ to SharePoint
• Все ограничения CAML
• Все прежние проблемы
Статическая типизация
• Business Connectivity Services
• Статическая типизация
• Стандартные практики .NET стека
Решения сообщества для SharePoint
Upcoming SlideShare
Loading in...5
×

Решения сообщества для SharePoint

1,203

Published on

Описание решений сообщества для SharePoint, а так же анализ и рекомендации по типичным ошибкам в проектах

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,203
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Решения сообщества для SharePoint"

  1. 1. Решения сообщества для Качай SharePoint Обзор и рекомендации Исправляй Пользуйся
  2. 2. Баум Виталий Старший SharePoint разработчик Conteq Ltd http://butaji.ru
  3. 3. План доклада • Обзор доступных решений • Установка и настройка • Работа с решениями
  4. 4. Где искать решения? • Тестирование проектов ISV • Сообщества разработчиков
  5. 5. Категории решений • Разработка • Диагностика • Тестирование • Развертывание • Элементы управления • Шаблоны узлов
  6. 6. Разработка
  7. 7. Разработка: SPVisualDev Сайт: http://spvisualdev.codeplex.com/ Преимущества: • Удаленная разработка • Несерверная ОСь • Синхронизация в реальном времени • Работа с пулом, GAC’ом • Интеграция с WSPBuilder
  8. 8. Разработка: WSPBuilder Сайт: http://wspbuilder.codeplex.com/ Преимущества: • Стандарт прозрачной сборки решений • Расширения для студии • Автоматизация сборки
  9. 9. Разработка: Installer Сайт: http://sharepointinstaller.codeplex.com/ Преимущества: • Стандарт для упаковки решений
  10. 10. Разработка: U2U CAML Сайт: http://u2u.be/Res/Tools/CamlQueryBuilder.aspx Преимущества: • Составление запросов • Удаленные и локальные запросы
  11. 11. Разработка: Reflector Сайт: http://www.red-gate.com/products/reflector/ Преимущества: • Просмотр реализации • Опасно для нервной системы
  12. 12. Разработка: CAML.NET Сайт: http://code.msdn.microsoft.com/camlintellisense/ Преимущества: • Intellisense для CAML
  13. 13. Разработка: CKS Сайт: http://cksdev.codeplex.com Преимущества: • Аьлянс разработчиков с большим количеством productivity решений
  14. 14. Разработка: Imtech Сайт: http://blog.mastykarz.nl/tools/ Преимущества: • Большой набор утилит для разработки • 2010: Layouts pages, SPMetal
  15. 15. Разработка: WSS3WF Сайт: http://wss3workflow.codeplex.com/ Преимущества: • Шаблоны для форм рабочих процессов WSS
  16. 16. Разработка: SPDActivities Сайт: http://spdactivities.codeplex.com/ Преимущества: • Отправка письма с вложением • Запуск другого рабочего процесса • Раздача прав • Проверка прав
  17. 17. Диагностика и тестирование
  18. 18. Диагностика: Perfomance Сайт: http://features.codeplex.com/ Преимущества: • Настрока web.config (ajax, silverlight) • Набор masterpage • Печать листов • Просмотр логов
  19. 19. Диагностика: FxCop Rules Сайт: http://sovfxcoprules.codeplex.com/ Преимущества: • Анализ Best Disposal Practices • FxCop • Visual Studio 2008 Team System Development Editions
  20. 20. Диагностика: SPManager Сайт: http://spm.codeplex.com Преимущества: • Исследование объектной модели • Внесение интерактивных изменений
  21. 21. Элементы управления
  22. 22. Компоненты: SmartTools Сайт: http://smarttools.codeplex.com/ Преимущества: • Пример разработки элементов управления • Autocomplete • Интеграция с jQuery
  23. 23. Компоненты: iLove SP Сайт: http://ilovesharepoint.codeplex.com/ Преимущества: • PowerWebPart • PowerShell Scripts • LookupField with picker
  24. 24. Компоненты: lekman Сайт: http://lekman.codeplex.com/ Преимущества: • SharePoint Cache Dependencies • Unit-tests base-class
  25. 25. Компоненты: Discussion Сайт: http://mossdiscussion.codeplex.com/ Преимущества: • Поле «обсуждения» • Социальная активность
  26. 26. Компоненты: ToolBasket Сайт: http://sptoolbasket.codeplex.com/ Преимущества: • Поле рейтинга • Поле подстановки • Дизайнер форм
  27. 27. Компоненты: jPoint Сайт: http://jpoint.codeplex.com/ Преимущества: • Клиентская модель для SharePoint на jQuery
  28. 28. Компоненты: Search Сайт: http://sct.codeplex.com/ Преимущества: • Веб-части поиска
  29. 29. Компоненты: CKS Сайт: http://cks.codeplex.com/ Преимущества: • Авторизация на формах (FBA) • Шаблоны UG • Кастомизация Wiki, Blog, School
  30. 30. Компоненты: PKS Сайт: http://pks.codeplex.com Преимущества: • Работа с аудио • Видео • Презентации • Социализация
  31. 31. Компоненты: RIC Сайт: http://ric.codeplex.com/ Преимущества: • Реализация портала на MOSS для академических нужд • «Социализация»
  32. 32. SPRequest
  33. 33. SPRequest • Обертка для неуправляемого кода • Каждый SPSite имеет свой SPRequest • OWSSVR.DLL (IIS ISAPI) • /_vti_bin/owssvr.dll
  34. 34. SPRequest • “Potentially excessive number of SPRequest objects (10) currently unreleased on thread 23. Ensure that this object or its parent (such as an SPWeb or SPSite) is being properly disposed. This object will not be automatically disposed.” • Не больше 8 SPRequest в потоке
  35. 35. SPRequest • HKEY_LOCAL_MACHINESOFTWAREMicro softShared ToolsWeb Server ExtensionsHeapSettings • Создать ключ «SPRequestStackTrace» DWORD равным 1 • «LocalSPRequestWarnCount» = 50
  36. 36. Дизайн, уменьшающий количество запросов
  37. 37. Меньшее количество запросов Web Logic Data
  38. 38. Меньшее количество запросов public Costumer GetCostumerById(int id) { Costumer costumer; using (SPWeb web = new SPWeb(Url)) { costumer = web.Lists["Costumers"] .GetItemById(id).ToCostumer(); } return costumer; }
  39. 39. Меньшее количество запросов public Costumer GetCostumerById(int id, SPWeb web) { return web.Lists["Costumers"] .GetItemById(id).ToCostumer(); }
  40. 40. Меньшее количество запросов public string Title { get { return GetCostumerById(id, SPContext.Current.Web); } }
  41. 41. Анализ ошибок
  42. 42. Нет магическим значениям • Item[“Sttatus”] != Item[FieldIds.Status] • web.Lists[“Costumers”] != web.Lists[Lists.Constumers]
  43. 43. Best Disposal Practices • http://msdn.microsoft.com/en- us/library/aa973248.aspx
  44. 44. Best Disposal Practices public SPWeb MyWeb { get { using (SPWeb web = new SPWeb(Url)) { return web; } } }
  45. 45. Статическая типизация
  46. 46. Статическая типизация • Слабая типизация • Размазанная логика • Зависимости от объектов • Большое количество неявных зависимостей и потенциаьлных ошибок
  47. 47. Статическая типизация • LINQ to SharePoint • Все ограничения CAML • Все прежние проблемы
  48. 48. Статическая типизация • Business Connectivity Services • Статическая типизация • Стандартные практики .NET стека
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×