Приступая к работе над разработкой приложений

Статья основана на материалах Эли Шелдон (Eli Sheldon), первоначально опубликованных здесь.

С выходном нового Project появились две прекрасные области развития – приложения для  Office и приложения для SharePoint. Добавьте страницу с этим постом в закладки, чтобы всегда иметь под рукой ресурсы, необходимые для начала разработки собственных приложений, советы, основанные на часто задаваемых вопросах и идеи для разработки своих приложений.

Быстрый старт

Если вы не хотите тратить огромное количество времени на чтение статей и форумов, то важнейшим ресурсом для вас станет dev.office.com – здесь вы найдете всю документацию, инструменты и центры поддержки по разработке приложений для Office, SharePoint и Project.

Технически, все, что вам нужно для начала разработки приложений для Office, направленных на Project - это Блокнот (Notepad). Для получения некоторых инструкций, прочтите эту статью - в ней содержится информация по комплекту средств разработки приложений для Office и SharePoint.

Чтобы начать писать приложения для SharePoint, нацеленные на Project Web App (PWA), вам понадобится копия Visual Studio 2012, Набор инструментов разработчика Office, и Project 2013 SDK, который содержит все необходимые файлы по документации разработчика. Эта статья из Project 2013 SDK представляет собой законченное руководство для разработки.

Приложения Project для Office

Что представляет из себя приложение Project для Office? По существу, приложение для Office – это просто веб-страница, запускаемая в контейнере клиента Office, которая может связываться с другими клиентами Office посредством мощного нового API  JavaScript. В Project эти приложения представлены как панель задач, очень похожая на классический Инспектор Задач. Как пример приложений, на данный момент представленных в магазине, посмотрите Sensei's Project DashboardTM или Projility's ProjectWare ConnectTM.

Информацию о Project Apps для Office можно найти в Office SDK. Конечным продуктом, который вы создадите, будет файл XML, который называется манифест приложения и веб-страница, хранящая ваш контент или код.

Приложения Project для SharePoint

Что мы имеем ввиду под приложением Project для SharePoint? SharePoint 2013 представил новую расширяемую модель для поддержки экосистемы SharePoint Online. Приложение для SharePoint может принимать множество форм – веб-часть, настройка ленты, полностью измененная страница - и Project App для SharePoint - это просто приложение для SharePoint, которое включает в себя функциональность PWA. В нашем магазине приложений уже есть множество приложений, таких как Campana and Schott's Milestone Trend Analysis или Solvin's TrackTimesheet Go.

Информацию о приложениях для SharePoint можно найти в SharePoint SDK, а информацию об клиенсткой объектной модели Project (CSOM, новый API, используемый для поддержки наших приложений) можно найти в Project SDK. В конечном счете вы создадите пакет приложения, содержащий манифест приложения и весь ваш функциональный код. Существует несколько возможностей разработки и размещения, и приложение должно заработать и онлайн.

Донесите свое приложение всему миру

Как только ваше приложение готово, вы захотите опубликовать его в Магазине Office. Вы можете продавать его по установленной вами стоимости, или выпустить его бесплатно. Для начала вам нужно почитать эту документацию.  Чтобы посмотреть все приложения Project, которыми уже наслаждаются наши клиенты, посетите Магазин Office.

Если вы не хотите размещать свое приложение публично, вы можете просто распространить его обычными способами.

Часто задаваемые вопросы

В: Как я могу развернуть мои приложения из Visual Studio?

О: Если вы попытаетесь развернуть приложение на любой сайт Project Online, вы, скорее всего, получите ошибку "Сторонняя загрузка приложений невозможна для этого сайта." Чтобы подготовить сайт для развертывания приложения прямо из Visual Studio (что дает вам существенное преимущество избежать багов), следуйте этому руководству от Колина Филлипса, который использует PowerShell для включения важных функций.

В: Сколько времени занимает публикация приложений? Можно ли как-то ускорить этот процесс?

О: Как только вы соберетесь опубликовать свое приложение, вам нужно будет создать профиль продавца, поскольку этот процесс включает в себя некоторые процедуры подтверждения. Ваше приложение пока может быть не готово, так что можно создать профиль уже сейчас.

Как только вы отправите ваше окончательно готовое приложение, вы можете ожидать (но не рассчитывать 100 %) подтверждения около недели, в зависимости от текущей загрузки Наиболее частые ошибки связаны с несовместимым числом версий и другими базовыми метаданными. Непременно прочите политики проверки перед отправкой приложения!

В: Как я могу получить информацию из моего приложения Project для Office, не защищенного API JavaScript?

О: Вам нужно подключить PWA для кросс-проектной информации и информации, размещенной на SharePoint. К счастью, мы написали пост, детально описывающий, как это сделать!

В: У меня все еще присутствуют проблемы, связанные с токенами OAuth!

О: Здесь лучший друг для вас - Bing. Множество разработчиков разместили на разных форумах разъяснения на тему, что делать с различными проблемами, связанными с OAuth.

В: Мне нужна помощь Microsoft!

О: Наши форумы популярны и среди экспертов Microsoft, и среди сообщества разработчиков. Каждый раз, сталкиваясь с ошибкой, не стесняйтесь публиковать ее на наших форумах. Кроме того, ознакомьтесь с этими ресурсами:

  • Блог о программировании Project . Тут содержатся много статей которые помогут вам начать работу с различными типами разработки под Project.
  • Блог приложений для Office и SharePoint. Это основной блог статей для разработчиков, связанных с созданием приложений под Office и SharePoint и где будут публиковаться посты на тему разработки приложений под Project.
  • Блог Яна Кайлиса.  Ян любит писать о расширяемости Project и возможностях для наших партнеров.

Теперь у вас есть все необходимые инструменты и ресурсы для создания прекрасного приложения для Project. Надеемся вскоре увидеть вашу работу в Магазине!