Есть комиксы? Comicster!
Сегодняшнее сообщение я посвящу одной особенности прошлого проекта «Думаете NuGet предназначен только для Visual Studio (или IDE)? Подумайте еще раз…», но не всему ему. А целое зачастую больше, чем сумма составляющих...
Comicster – это свободно доступная программа для Windows, спроектированная для ведения каталога журналов комиксов. Она хранит информацию об издателях, коллекциях репринтных историй (trade-paperbacks), заголовков, одиночных выпусков, персонажей и создателей.
Интересной и клёвой особенностью Comicster является встроенная расширяемость. Хотите расширить или добавить новую функциональность? Для это есть API…
Создание расширений для Comicster
Comicster использует NuGet и MEF для подключения дополнительных программных модулей третьих фирм. В статье мы рассмотрит различные аспекты Comicster и то, как можно написать собственные плагины.
Вы должны быть знакомы с Microsoft .NET Framework и Microsoft Visual Studio. Расширения для Comicster можно писать на любом из .NET-языков (C#, VB.NET, и т. д.). Мы будем писать примеры на Visual C#. Расширения можно создавать и с использованием свободной редакции Visual Studio Express. Фактически Comicster был написан с помощью Visual Studio C# Express.
Чтобы научиться создавать расширения обложек для Comicster, обратитесь к статье базы знаний «Как создать обложку?»
Обзор разработки
Приведенный ниже обзор десяти шагов разработки обеспечит вам быстрое и простое понимание как кодировать, собирать, тестировать и опубликовать свой плагин для Comicster.
Этап проектирования и разработки
- Создать новый проект типа «Class Library» в Visual Studio и добавить ссылку на Comicster.Core.DLL
- Запрограммировать плагин, реализуя предложенные интерфейсы
- Собрать библиотеку
- Упаковать библиотеку и другие зависимые файлы в пакет nupkg
Этап тестирования
- Скопировать файл nupkg в локальную папку пакетов в «My Documents\Comicster\Packages»
- Если у вас есть прежние версии пакета nupkg, удалите все ранее установленные версии плагина из папки установки расширений «My Documents\Comicster\Extensions»
- Запустите Comicster
- Щелкните пункт меню «Tools|Extensions» и установите плагин
- Полностью протестируйте функциональность плагина
Этап размещения
- Поместите файл nupkg на Comicster.net
Да, вы можете не только расширять его, но и использовать NuGet. Реально использовать его. Пакет имеет собственный менеджер расширений «Extension Manager», управляемый NugGet!
Расширения Comicster
Добавьте функциональность в Comicster с помощью интегрированного менеджера расширений!
Сервер Nuget тоже используется!
Снимок решения (да, вы не только получаете потрясающий проект, но и все исходники к нему).
Если вы ищете недорогой способ каталогизировать коллекцию комиксов, примеры, добавляющие расширяемость программам, которые вы пишете, глядя на встроенную в NuGet поддержку пакетов, или если вы захотите увидеть возможности, подобные «Extension Manager» или просто решите почитать занимательный код, я полагаю, что этот проект может представлять для вас интерес…
Вот несколько ссылок, которые могут оказаться полезными: