private/internal методы и классы в .NET
Dec. 11th, 2012 01:04 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
А вот скажите, почему у авторов гопнета так популярно делать классы и методы недоступными для разработчиков?
Сейчас сижу, например в ILSpy и делаю обертку над ServiceController, потому что нельзя без ловли исключений узнать, существует ли сервис, а конфигурацию сервиса так и вообще никак прямо узнать нельзя. При этом все полезные методы и классы (нативный интероп итд) сугубо приватные или внутренние.
Сейчас сижу, например в ILSpy и делаю обертку над ServiceController, потому что нельзя без ловли исключений узнать, существует ли сервис, а конфигурацию сервиса так и вообще никак прямо узнать нельзя. При этом все полезные методы и классы (нативный интероп итд) сугубо приватные или внутренние.
no subject
Date: 2012-12-11 10:07 am (UTC)no subject
Date: 2012-12-11 10:12 am (UTC)no subject
Date: 2012-12-11 10:40 am (UTC)no subject
Date: 2012-12-11 10:43 am (UTC)no subject
Date: 2012-12-11 10:57 am (UTC)no subject
Date: 2012-12-11 11:19 am (UTC)no subject
Date: 2012-12-11 06:13 pm (UTC)no subject
Date: 2012-12-11 06:22 pm (UTC)no subject
Date: 2012-12-11 06:27 pm (UTC)По моему, как обходной вариант - заебись.
no subject
Date: 2012-12-11 10:29 am (UTC)no subject
Date: 2012-12-11 10:35 am (UTC)no subject
Date: 2012-12-11 10:37 am (UTC)сундукиклассы от внешнего мира, как гуры рекомендуют. Явисты глядят на смолток традиции, "давайте оставим если можно, вдруг пригодится" -- закрыты обычно только секурити методы.Лично мне сишное прошлое предыдущего автора кода становится ясно видно по характерным подходам.
no subject
Date: 2012-12-11 10:40 am (UTC)no subject
Date: 2012-12-11 10:58 am (UTC)no subject
Date: 2012-12-11 06:15 pm (UTC)no subject
Date: 2012-12-11 11:07 am (UTC)no subject
Date: 2012-12-11 11:29 am (UTC)Обычно "приватизируют" ради совместимости - чтобы потом спокойно менять в следующих версиях, а кто полез хакать - сам дурак.
no subject
Date: 2012-12-11 11:40 am (UTC)no subject
Date: 2012-12-11 12:33 pm (UTC)no subject
Date: 2012-12-11 12:43 pm (UTC)no subject
Date: 2012-12-11 01:17 pm (UTC)no subject
Date: 2012-12-11 01:58 pm (UTC)no subject
Date: 2012-12-11 02:41 pm (UTC)no subject
Date: 2012-12-11 03:04 pm (UTC)no subject
Date: 2012-12-11 11:36 am (UTC)отдельного разговора требует принцип "make all classes final by default", по которому в свое время проехался nikitonsky.
no subject
Date: 2012-12-11 11:38 am (UTC)no subject
Date: 2012-12-11 11:38 am (UTC)no subject
Date: 2012-12-11 11:41 am (UTC)no subject
Date: 2012-12-11 12:22 pm (UTC)no subject
Date: 2012-12-11 12:42 pm (UTC)no subject
Date: 2012-12-11 12:43 pm (UTC)no subject
Date: 2012-12-11 12:50 pm (UTC)no subject
Date: 2012-12-11 12:11 pm (UTC)индусыюзеры. Значит на это нужно писать доку в мсдн, нужно продумать 100500 безумных способов которыми юзер заюзает эти методы, нужно отвечать на вопросы про них в social.ms.com и т.д.И что, неужели в этих ваших скалах в стандартной либе всё наружу торчит?
no subject
Date: 2012-12-11 12:31 pm (UTC)В кложуре, слава богу, либо все что нужно доступно, либо автор на ирц сидит, либо оно заключается в паре строчек, которые можно и у себя одноразово сохранить.
no subject
Date: 2012-12-11 12:38 pm (UTC)no subject
Date: 2012-12-11 01:22 pm (UTC)no subject
Date: 2012-12-11 01:07 pm (UTC)no subject
Date: 2012-12-11 01:16 pm (UTC)no subject
Date: 2012-12-11 06:17 pm (UTC)no subject
Date: 2012-12-11 12:12 pm (UTC)Попробуйте DotPeek от jetbrains.
no subject
Date: 2012-12-11 12:13 pm (UTC)А так бы как унаследовался бы, прикрутил бы сбоку кэшер позиций в значений в массиве...
no subject
Date: 2012-12-11 12:49 pm (UTC)no subject
Date: 2012-12-11 02:03 pm (UTC)no subject
Date: 2012-12-11 02:04 pm (UTC)no subject
Date: 2012-12-13 04:31 am (UTC)no subject
Date: 2012-12-13 08:13 am (UTC)