Если вы хотите внести некоторые изменения в свое приложение, реорганизовав его и разделив на части, рассмотрите все это.
Пользовательские элементы управления получают собственную сборку элемента управления
Определенно создавайте сборки для любых пользовательских элементов управления, которые вы разрабатываете. Вы можете не только воспользоваться автономными элементами управления и дополнительным использованием в текущих и будущих проектах, но и
- использовать стили управления по умолчанию
- использовать с ними функцию кэшированной сборки
- делиться компонентами с другими проектами
- инвестируйте в свой основной код и элементы управления, вместо того, чтобы вкладывать средства в очистку логики приложения (например, если вы используете статический анализ или анализ стилей) - проводите время там, где это окажет наибольшее влияние
Рассмотрим динамическую загрузку новых сборок
Существует несколько методов, доступных для динамической загрузки дополнительного кода в домен вашего приложения, возможно, можно абстрагировать редко используемые части вашего приложения и использовать его для загрузки этих компонентов. Это более сложное и сложное приложение, но оно может улучшить производительность при запуске.
Потребуется время, чтобы разбить код на другие сборки, когда вы смотрите на большое приложение, и его тестирование может оказаться сложной задачей. Но вы можете получить «подстраницы» и части своего приложения, загружаемые только по мере необходимости.
Потратив время на разработку системы для загрузки новых функциональных возможностей и компонентов вашего приложения, а также на разработку этой инфраструктуры, может потребоваться время для правильной работы. Обычно это использует AssemblyPart для загрузки новой сборки, в которую вы можете отразить, и для создания новых объектов.
Объединенные словари ресурсов
Словари ресурсов позволяют хранить стили, шаблоны элементов управления и другие ресурсы как за пределами страниц, так и за пределами вашего App.xaml.
Кэшированные сборки
Перейдя в Silverlight 3, вы можете использовать функцию кэшированных сборок *1036* для хранения отдельных сборок вне вашего .Xap, рядом с вашим сервером - и в качестве бонуса, эти сборки будут кэшироваться на машина довольно давно.
Ресурсная диета
Действительно ли вы используете все свои графические ресурсы, XAML, элементы управления, строковые ресурсы и т. Д., Которые хранятся в вашем файле XAP? Время от времени проверяйте его и убедитесь, что вы получаете максимальную отдачу от своего байта.
Заставка
Если вы сначала просто пытаетесь улучшить производительность (время загрузки) для своего приложения, подумайте о создании заставки. Образцы Silverlight Toolkit имеют один - это простая страница Silverlight, которая загружается и отображается во время загрузки .Xap.
Удаленная графика
Вместо того, чтобы включать ресурсы изображений прямо в ваше приложение / XAP, перенесите ваши изображения на CDN или сервер, чтобы их можно было загружать только по мере необходимости. Это часто хорошая и быстрая победа.
Упростите ваше приложение
Убедитесь, что он действительно нужен для XAML, для графики и т. Д. Возможно, это можно упростить!