Your SlideShare is downloading. ×
Genome
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Genome

329
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
329
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1.  Каждый раз приходится заново решать одни и те же задачи? "Копипастите" из проекта в проект? Приходится повсюду использовать наборы узкоспециализированных библиотек? (из разряда log4net, unity, nunits, ...) Даже небольшие фантазии заказчика отражается головной болью и большими изменениями? Изменения в одном месте влекут за собой проблемы в других местах проекта? Мечтаете об архитектурных решениях?
  • 2. Хватит это терпеть!
  • 3. Решение: Genome – программная компонентная платформа
  • 4.  программная платформа широкого назначения интегрируется во все слои приложения разработан на .NET 4 (Client profile)  портирован под Silverlight 4 проект стартовал осенью 2008г распространяется по лицензии LGPL:  с открытым исходным кодом  бесплатный  можно использовать для разработки коммерческого ПО принцип компонентной системы  каждая подсистема обособлена  зависимость подсистем организована в древовидном порядке, корнем этого дерева является Ядро
  • 5.  Внедрение зависимостей  Регистрация в реестре объектов  Извлечение объектов по идентификатору, типу или интерфейсу Каталогизация объектов  Размещение объектов в реестре в отдельных категориях  Извлечение коллекции объектов по идентификатору категории или типу объектов Идентификация и обобщение реализаций  Выделение типов реализаций и объектов реализаций.  Идентификация объекта реализации путём реализации специального интерфейса или подключения композитной части Композиция объектов  Принцип композитного(составного) объекта.  Представление композитного объекта в коде как единой сущности Возможность декларативного способа предоставления механизмов Абстракция графического пользовательского интерфейса
  • 6.  Широкие возможности использования паттерна ‘Команда’ Гибкая система конфигурирования  Обработчики конфигурационных данных.  Поддержка многофайловых конфигурационных файлов. Журналирование  Поддержка различных целевых адресатов (файл, консоль, Trace - ‘из коробки’)  Поддержка различных форматов лог-файлов (текстовый, бинарный - ‘из коробки’) Расширяемость  Возможность расширения практически любой подсистемы и механизма платформы. Средства тестирования  Объекты: Заглушки, Моки, Шпионы  Инфраструктура тестирования нацелена на подход AAA (Arrange Act Assert) Набор вспомогательных утилит  Утилита для чтения логов  Утилита для unit-тестирования
  • 7.  Классы «на каждый день»  Разнородный набор полезных классов  Расширения платформы для объектов Интерфейсы платформы  Основополагающие общие интерфейсы платформы (Например: поставщики объектов, фабрики и т.д.)  Некоторые реализации этих интерфейсов Внутренние классы платформы  Закрытые классы, инкапсулирующие внутренние основополагающие механизмы платформы
  • 8. Ядро wikiЯдро– базовая частьплатформы, выполняет и контролируетосновополагающие платформенныепроцессы приложения. Ядро содержитнабор внутренних механизмов, а так жекомпоненты сквозногофункционала, которые используются вовсех слоях приложения.
  • 9. Реестр wiki Каталогизация объектов (объединение в категориях) Внедрение зависимостей (возможность извлекать зарегистрированные объекты по идентификационным данным)
  • 10. Фабрика ядра wiki Создание объектов Возможность определять инициализирующие действия над всеми объектами конкретного класса или при создании конкретного объекта Гибрид внедрения зависимости и абстрактной фабрики Конвейерный принцип создания и подготовки объекта
  • 11. Система логирования wiki Ведение логов Перенаправление и распределение лог-сообщений
  • 12. Мета система wikiМета система предназначена дляподдержки декларативного способаиспользования различных механизмов.Основной идеей этой системы являетсяиспользование атрибутов в качествеинициаторов служебныхпроцессов, связанных с помеченнымитипами или членом типа.
  • 13. Система композиции wikiСистема композиции позволяет создаватькомпозитные объекты и работать с ними.Композитные объекты представляютсобой составной объект, части которогоравнозначны и объединены центральнымобъектом-композитором.Система композиции позволяетконструировать такие объекты и работать сними как с единым объектом.
  • 14. Система команд wikiНабор средств, связанных среализацией и использованиемпаттерна «Команда» Командаинкапсулирует выполнение конкретнойлогики. Позволяет таким образомабстрагироваться от конкретныхреализаций.
  • 15. Система конфигурации wikiПредназначена для настройкиприложения после его запуска всоответствии с файлом конфигурации.Конфигурационные данные могутнаходиться как в недрах app.config, так и вотдельном файле.
  • 16. Система ГИП wikiПредоставляет механизмы дляграфического представления данных иведения диалогов с пользователем.Система скрывает реализациюиспользуемой графической системы отклиентского кода. Представлениеинформации организуется с помощьюпаттерна проектирования MVVM.
  • 17. Система реализаций wikiСовокупность механизмов обобщения иидентификации реализаций. Суть системызаключается в выделении общихпризнаков объектов реализаций в объект-тип. Этот объект-тип так же являетсяфабрикой объектов реализации.
  • 18.  Типы приложений:  Десктоп приложения  Веб-приложения  Win службы  Каркасы приложений  Специализированные платформы Слои приложения:  Графическоий пользовательский интерфейс  Бизнес-логика  Сквозной функционал Окружение  Основная версия ▪ ОС: Windows подробнее ▪ .NET Framework 4(Client profile) и более  Silverlight-версия ▪ Silverlight 4 и более подробнее ▪ ОС: Windows, Macintosh (Intel-based)
  • 19.  E-Mail: genome.sdk.net@gmail.com Сайт: http://genome-sdk.net Wiki: http://kenai.com/projects/genome-sdk/pages/Home_ru Баг трэккер: http://kenai.com/projects/genome-sdk/pages/Home_ru Блог: http://genome-sdk.blogspot.com/ Форум: http://kenai.com/projects/genome-sdk/forums Исходники: http://kenai.com/projects/genome-sdk/sources Бинарники: http://kenai.com/projects/genome-sdk/downloads Лента новостей (twitter): http://twitter.com/#!/Genome_sdk