Пара общих вопросов !!!
От: Аноним  
Дата: 24.02.07 10:19
Оценка:
Всем привет. Есть пару общих вопросов.

1) Чего-бы почитать о компоновочных файлах(assembly)? Уже несколько раз возникали вопросы связанные с ними, а вопросы без ответов я не люблю
2) Читал тут одну из статей на RSDN и вычитал про замечательную программку Reflector(позволяет смотреть реализацию классов в .NET). Однако реализацию некоторых методов он почему то не показывает Например, для метода 'Environment.GetResourceString(string key)' он показывает следующую реализацию:
internal static string GetResourceString(string key)
{
    return GetResourceFromDefault(key);
}

однако, для метода 'GetResourceFromDefault(key)', реализацию вообще не показывает, а ограничивается вот этим:
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern string GetResourceFromDefault(string key);

ПОЧЕМУ?
3) В этой-же статье было такое выражение "делегировать вызов метода". Я так понял, что это значит вызывать метод. Так-ли это?

Заранее всем спасибо !
Re: Пара общих вопросов !!!
От: Lloyd Россия  
Дата: 24.02.07 10:24
Оценка:
Здравствуйте, Аноним, Вы писали:

А> Всем привет. Есть пару общих вопросов.


А> 1) Чего-бы почитать о компоновочных файлах(assembly)? Уже несколько раз возникали вопросы связанные с ними, а вопросы без ответов я не люблю


msdn

А> 2) Читал тут одну из статей на RSDN и вычитал про замечательную программку Reflector(позволяет смотреть реализацию классов в .NET). Однако реализацию некоторых методов он почему то не показывает Например, для метода 'Environment.GetResourceString(string key)' он показывает следующую реализацию:

А>
А>internal static string GetResourceString(string key)
А>{
А>    return GetResourceFromDefault(key);
А>}
А>

А> однако, для метода 'GetResourceFromDefault(key)', реализацию вообще не показывает, а ограничивается вот этим:
А>
А>[MethodImpl(MethodImplOptions.InternalCall)]
А>internal static extern string GetResourceFromDefault(string key);
А>

А> ПОЧЕМУ?

Это значит, что такой метод реализован не в какой-то сборке, а внутри рантайма.

А> 3) В этой-же статье было такое выражение "делегировать вызов метода". Я так понял, что это значит вызывать метод. Так-ли это?


Зависит от контекста.

А> Заранее всем спасибо !
Re[2]: Пара общих вопросов !!!
От: Аноним  
Дата: 24.02.07 10:31
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, Аноним, Вы писали:


А>> Всем привет. Есть пару общих вопросов.


А>> 1) Чего-бы почитать о компоновочных файлах(assembly)? Уже несколько раз возникали вопросы связанные с ними, а вопросы без ответов я не люблю


L>msdn


MSDN — на английском, долго голову ломать. К тому-же там чисто справочная информация и пару примеров, а хочется почитать что-то более емкое.

А>> 2) Читал тут одну из статей на RSDN и вычитал про замечательную программку Reflector(позволяет смотреть реализацию классов в .NET). Однако реализацию некоторых методов он почему то не показывает Например, для метода 'Environment.GetResourceString(string key)' он показывает следующую реализацию:

А>>
А>>internal static string GetResourceString(string key)
А>>{
А>>    return GetResourceFromDefault(key);
А>>}
А>>

А>> однако, для метода 'GetResourceFromDefault(key)', реализацию вообще не показывает, а ограничивается вот этим:
А>>
А>>[MethodImpl(MethodImplOptions.InternalCall)]
А>>internal static extern string GetResourceFromDefault(string key);
А>>

А>> ПОЧЕМУ?

L>Это значит, что такой метод реализован не в какой-то сборке, а внутри рантайма.


Ну 'код реализации' у него должен быть! Где его посмотреть?

А>> 3) В этой-же статье было такое выражение "делегировать вызов метода". Я так понял, что это значит вызывать метод. Так-ли это?


L>Зависит от контекста.


Речь шла о реализации методов класса ArrayList. И было сказано, что какой-то метод делегирует вызов метода класса Array.
А какие еще значения может иметь это выражение?

А>> Заранее всем спасибо !
Re[3]: Пара общих вопросов !!!
От: Lloyd Россия  
Дата: 24.02.07 10:38
Оценка:
Здравствуйте, Аноним, Вы писали:

А>>> 1) Чего-бы почитать о компоновочных файлах(assembly)? Уже несколько раз возникали вопросы связанные с ними, а вопросы без ответов я не люблю


L>>msdn


А> MSDN — на английском, долго голову ломать. К тому-же там чисто справочная информация и пару примеров, а хочется почитать что-то более емкое.


Можешь тогда Рихтера почитать. Он неплохо этот вопрос расписывает.

L>>Это значит, что такой метод реализован не в какой-то сборке, а внутри рантайма.


А> Ну 'код реализации' у него должен быть! Где его посмотреть?


Попросить у микрософта исходники фреймворка, но сразу предупреждаю, полностью — не дадут. Еще есть SSCLI

L>>Зависит от контекста.


А> Речь шла о реализации методов класса ArrayList. И было сказано, что какой-то метод делегирует вызов метода класса Array.


В данном случае — просто вызывает. Когда говорят "делегирует", то хотят подчеркнуть, что сам метод ничего кроме перенаправления вызова не делает.
Re[4]: Пара общих вопросов !!!
От: Аноним  
Дата: 24.02.07 10:49
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Попросить у микрософта исходники фреймворка, но сразу предупреждаю, полностью — не дадут.


Что значит попросить? Письмо им написать что-ли?

L>В данном случае — просто вызывает. Когда говорят "делегирует", то хотят подчеркнуть, что сам метод ничего кроме перенаправления вызова не делает.


Ага. А во всех остальных случаях речь идет о делегатах? Или у этого выражения могут быть еще какие-то значения?
Re[5]: Пара общих вопросов !!!
От: Lloyd Россия  
Дата: 24.02.07 10:52
Оценка:
Здравствуйте, Аноним, Вы писали:

L>>Попросить у микрософта исходники фреймворка, но сразу предупреждаю, полностью — не дадут.


А> Что значит попросить? Письмо им написать что-ли?


Забудь. Это была шутка.

L>>В данном случае — просто вызывает. Когда говорят "делегирует", то хотят подчеркнуть, что сам метод ничего кроме перенаправления вызова не делает.


А> Ага. А во всех остальных случаях речь идет о делегатах? Или у этого выражения могут быть еще какие-то значения?


В интернете полно онлайновах толковых словарей. Если ты обратишься за помощью к ним, то получишь гораздо более полный/компетентный ответ, чем мой.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.