Pull to refresh
8
0.1

Программист

Send message

.NET CLI — Зачем загружать все родительские сборки при загрузке сборки

Level of difficulty Medium
Reading time 6 min
Views 2.3K

В CLR есть особенность, что при загрузки сборки через Assembly.Load или через Assembly.ReflectionOnlyLoad, загружаются все сборки по мере запроса. В отличии от констант и их типов, они заранее копируются в дочернюю сборку и больше не зависят от родительской сборки. Но в определённых случаях типы констант не копируются в дочернюю сборку и их изменение может сломать работу приложения, несмотря на то, что тип константы не должен этого делать. Эта статья Вам поможет разобраться в каких случаях это может произойти и почему так происходит.

Читать далее
Total votes 5: ↑5 and ↓0 +5
Comments 35

Модульная архитектура — анализ зависимостей

Level of difficulty Hard
Reading time 4 min
Views 1.8K

Как построить диаграмму зависимостей библиотек и посмотреть какие публичные объекты используются в зависимых библиотеках

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

Так-же, в случае если Common библиотеки собираются в отдельном решении - может быть полезно узнать - а какие публичные объекты из Common библиотек используются в других проектах или часть из этих публичных объектов уже не используется и их можно спокойно удалять или менять уровень видимости.

Читать далее
Rating 0
Comments 0

Модульная архитектура и многоразовый код

Reading time 15 min
Views 28K


Меня всегда интересовала разработка многоразового и целостного кода. Но проблема многоразового кода начинается на этапе переноса в другую инфраструктуру. Если приложение расширяется плагинами, то плагины пишутся под конкретное приложение. А что если вынести логику приложения в плагин (далее — модуль), а интерфейс приложения из управляющего звена превратить в управляемый модулем компонент. На мой взгляд, самая главная задача в подобном сценарии, упростить базовые интерфейсы до минимума и дать возможность переписать или расширить любой фрагмент всей инфраструктуры в отдельности. Если интересно, что вышло из идеи модульного кода, то добро пожаловать под кат.
Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Comments 16

ASP.NET и сжатие клиентского кода

Reading time 8 min
Views 4K
Со времён MSIE4 и блокнота, Я люблю комментировать написанный код. Но одно дело, когда проект создаётся для себя, или при компиляции комментарии не попадут конечному пользователю. И совсем другое дело, когда написанные комментарии могут попасть конечному клиенту. Во первых, они ему не нужны, а во вторых, в комментариях может содержаться некий текст, который может подвергнуть опасности этот или другой проект. И в третьих, содержимые в клиентском коде (HTML, JS, CSS) комментарии, даже в сжатом виде, создают паразитный трафик.
Изучая такой код иногда можно натолкнуться на интересные вещи. Вот, к примеру, один из кусков комментариев на одном всеми известном сайте:
Читать дальше →
Total votes 12: ↑7 and ↓5 +2
Comments 68

Information

Rating
3,277-th
Location
Исламабад, Пакистан, Пакистан
Registered
Activity