metaclass: (Default)
[personal profile] metaclass
Удар головой о стенку, обитую войлоком
"Хочу строгой типизации"
Удар головой о стенку, обитую войлоком
"Хочу автоматический вывод типов"
Удар головой о стенку, обитую войлоком
"Хочу метапрограммирование"
переход к началу.

Альтернатива:
для объекта Config регистрируется TypeDescriptionProvider, который создает и возвращает CustomTypeDescriptor, который из ServiceProvider достает XmlConfigProvider, загружает из него список кастомных свойств объекта, для каждого из них генерит ConfigPropertyDescriptor, добавляя к нему CategoryAttribute,DisplayNameAttribute,DescriptionAttribute,иногда TypeConvertorAttribute и ChoiceDescriptionAttribute, указав для них ChoiceConverter, который возвращает StandardValuesCollection, исходя из ChoiceDescriptionAttribute, найденного в TypeDescriptorContext.

Это всего лишь показ объекта в user-friendly виде с локализованными именами пропертей и динамически меняющимся их списком в PropertyGrid.

PS: А тут еще [livejournal.com profile] max_posedon всякую завлекаловку с LVEE про линуксы и железо пишет. Хоть ты точно, на линукс и какой-нибудь трэшак типа руби с питоном пересядь, чтобы этого дотнета с его гирляндами типов никогда не видеть. Или вообще на low-level работу с железом, там уж ТОЧНО НИКОГДА не придется писать что-нить вроде IServiceProviderFactoryOfProviderForServiceProviderFactoryFacade.

Date: 2009-07-07 06:01 pm (UTC)
From: [identity profile] blackyblack.livejournal.com
Ну здрасьте. Декомпозиция разная бывает и альтернативы есть.
Лично я произвожу декомпозицию сначала процедурную, а по мере взросления проекта разбиваю задачу на модули, которые вовсе не обязаны быть объектами.

Date: 2009-07-07 06:22 pm (UTC)
From: [identity profile] metaclass.livejournal.com
У меня вся первичная информация представлена в виде не столько объектов, сколько записей, или даже ADT. Потом это все приходится делать в виде объектов, другого в ООП языках как бэ не предусмотрено. Всякий там ввод данных юзерами и тому подобное.

А вот всевозможные запросы-отчеты-расчеты-ведомости используют функциональную декомпозицию, на нее они ложатся гораздо лучше.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 25th, 2025 02:33 am
Powered by Dreamwidth Studios