powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Что должен знать правильный .NET-разработчик
25 сообщений из 39, страница 1 из 2
Что должен знать правильный .NET-разработчик
    #38173730
.Speаker.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Зашел случайно на сайт одного разработчика, случайно в разделе "статьи" заинтересовала тема
- Что должен знать правильный .NET-разработчик
Ответ дан в виде вопросов на знание C# и прочего ...
Оцениваются 2 категории обычный разраб и ведущий

.NET-разработчик среднего уровня

1) Объясните разницу между интерфейсно ориентированным (Interface-oriented), объектно ориентированным и аспектно ориентированным (Aspect-oriented) программированием
2) Объясните что такое «интерфейс» и чем он отличается от класса
3) Что такое Reflection?
4) В чем различие между XML Web Services с использованием ASMX и .NET Remoting с использованием SOAP?
5) Являются ли системы типов, представленные в XmlSchema и в CLS — изоморфными?
6) Концептуально, в чем различие между ранним и поздним связыванием (early-binding и late-binding)?
7) Использование Assembly.Load — это статическая или динамическая ссылка?
8) Когда уместно использование Assembly.LoadFrom, а когда Assembly.LoadFile?
9) Что такое «Asssembly Qualified Name»? Это имя файла? В чем различие между ними?
10) Правильно ли так писать? Assembly.Load("foo.dll");
11) Чем отличается «strongly-named» сборка от «НЕ strongly-named» сборки?
12) Может ли DateTime равняться null?
13) Что такое JIT? Что такое NGEN? Каковы преимущества и ограничения каждого из них?
14) Как основанный на поколениях сборщик мусора в .NET CLR управляет жизненным циклом объекта? Что такое «non-deterministic finalization»?
15) В чем различие между Finalize() и Dispose()?
16) Чем полезен using()? Что такое IDisposable? Как он поддерживает deterministic finalization?
17) Что делает эта полезная команда? tasklist /m "mscor*"
18) В чем разница между «in-proc» и «out-of-proc»?
19) Какая технология позволяет выполнять out-of-proc взаимодействие в .NET?
20) Когда вы запускаете компонент из под ASP.NET, в каком процессе он работает под Windows XP? Windows 2000? Windows 2003?


Ведущий разработчик

1) Что не так вот в следующей строке? DateTime.Parse(myString);
2) Что такое PDB? Где они должны находится, чтобы можно было выполнять отладку?
3) Что такое «цикломатическая сложность» (cyclomatic complexity) и почему она важна?
4) Напишите стандартный lock() плюс «двойную проверку» для создания критической секции вокруг доступа к переменной.
5) Что такое «FullTrust»? Имеют ли FullTrust сборки, помещенные в GAC?
6) Какие преимущества получает ваш код, если вы декорируете его атрибутами, относящимися к особым Security permissions?
7) Что делает эта команда? gacutil /l | find /i "Corillian"
8) Что делает эта команда? sn -t foo.dll
9) Какие порты брандмауэра должны быть открыты для DCOM? Каково назначение порта 135?
10) Сопоставьте OOP и SOA. Каковы принципы каждого из них?
11) Как работает XmlSerializer? Каких ACL permissions требует использующий его процесс?
12) Почему catch(Exception) почти всегда — плохая мысль?
13) В чем разница между Debug.Write и Trace.Write? Когда должен быть использован каждый из них?
14) В чем различие между компиляцией в Debug и в Release? Есть ли значительная разница в скорости? Почему или почему нет?
15) Как работает JIT — по сборке целиком или по методу? Как это влияет на working set?
16) Сравните использование абстрактного базового класса и использование интерфейса?
17) В чем различие между a.Equals(b) и a == b?
18) В контексте сравнения, что такое идентичность объектов по сравнению с эквивалентностью объектов?
19) Как можно выполнить глубокое копирование (deep copy) в .NET?
20) Изложите ваше понимание IClonable.
21) Что такое «упаковка» (boxing)?
22) string — это тип значений (value type) или ссылочный тип?
23) В чем значимость паттерна "PropertySpecified", используемого в XmlSerializer? Какую проблему он пытается разрешить?
24) Почему в .NET выходные параметры (out parameters) не стоит применять? Действительно ли это так?
25) Может ли атрибут быть установлен на один из параметров метода? Чем это полезно?

---------------------------------------------------------------------------------------------
Сам ведущий. Как - то крутоваты вопросы показались, даже для обычного программера.
Причем вопросы в каждой группе - срвсем разной категории сложности.
Например в I группе имхо вопросы 2, 12, 15, 16 по сложности на голову ниже остальных
А во второй группе 16, 17, 20, 21, 22 , вообще для бегиннеров.

В общем имхо вопросы скомпанованы странно, что хотел сказать автор - не понятно.
Некоторые поставлены не совсем корректно.
Очень много вопросов показалось сложными, закрадывается мнение, что не дотягиваю ...

Обсудите плиз...
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38173778
beg-in-er
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38173786
.Speаker.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
beg-in-er,
Да, я обратил уже внимание, там на сайте ссыль есть на источник.
Автор оригинала - профессор (40-45 лет), работает в Microsoft.
Да только что это означает? "Мерки" США? Наши хуже/лучше? Или что - то еще?
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38173924
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Speаker.,

Странный набор вопросов, конечно. Всё они носит исключетельно технологический характер, полезный в весьма редких ситуациях. При этом как-то умудряются пропустить мимо многопоточность...
Похоже на троллинг от Хансельмана.
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38173965
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильный .NET разработчик должен уметь писать программы без факапов согласно техническому заданию. Остальное вторично.
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174265
.Speаker.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУ, а что значит без факапов?
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174472
sld
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sld
Гость
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174567
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Что не так вот в следующей строке? DateTime.Parse(myString);
Культура чтоли не указана? Или чё?

2) Что такое PDB? Где они должны находится, чтобы можно было выполнять отладку?
Какая-то база для отладчика. Вроде должна лежать там же где и сборка.

3) Что такое «цикломатическая сложность» (cyclomatic complexity) и почему она важна?
Какая-то методика оценки сложности программы. Подробности в гугле.

4) Напишите стандартный lock() плюс «двойную проверку» для создания критической секции вокруг доступа к переменной.
Чё за двойная проверка?

5) Что такое «FullTrust»? Имеют ли FullTrust сборки, помещенные в GAC?
Полное доверие. Наверное.

6) Какие преимущества получает ваш код, если вы декорируете его атрибутами, относящимися к особым Security permissions?
Хз.

7) Что делает эта команда? gacutil /l | find /i "Corillian"
Чё-то ищет в гаке. Видимо, сборку с указанным именем.

8) Что делает эта команда? sn -t foo.dll
Подписывает сборку цифровой подписью?

9) Какие порты брандмауэра должны быть открыты для DCOM? Каково назначение порта 135?
В гугле.

10) Сопоставьте OOP и SOA. Каковы принципы каждого из них?
В википедии

11) Как работает XmlSerializer? Каких ACL permissions требует использующий его процесс?
Через Emit. Хз.

12) Почему catch(Exception) почти всегда — плохая мысль?
В вопросе содержится неверное утверждение. Если catch(Exception) плохо - тогда и finally пользоваться нельзя.

13) В чем разница между Debug.Write и Trace.Write? Когда должен быть использован каждый из них?
В гугле. Когда удобнее.

14) В чем различие между компиляцией в Debug и в Release? Есть ли значительная разница в скорости? Почему или почему нет?
Всё зависит от настройки профилей Debug и Release. Разницы может вообще не быть.

15) Как работает JIT — по сборке целиком или по методу? Как это влияет на working set?
По методу (в Java по классу). Пофиг.

16) Сравните использование абстрактного базового класса и использование интерфейса?
В классе может быть реализация. Интерфейсы можно множественно наследовать.

17) В чем различие между a.Equals(b) и a == b?
Не помню.

18) В контексте сравнения, что такое идентичность объектов по сравнению с эквивалентностью объектов?
Сравнение адреса объекта vs сравнение его содержимого. Или про что это? Обычно это называют "сравнение по ссылке" и "сравнение по значению".

19) Как можно выполнить глубокое копирование (deep copy) в .NET?
XmlSerializer

20) Изложите ваше понимание IClonable.
Знаю

21) Что такое «упаковка» (boxing)?
Знаю

22) string — это тип значений (value type) или ссылочный тип?
Неизменяемый ссылочный

23) В чем значимость паттерна "PropertySpecified", используемого в XmlSerializer? Какую проблему он пытается разрешить?
В MSDN

24) Почему в .NET выходные параметры (out parameters) не стоит применять? Действительно ли это так?
И Dictionary.TryGetValue тоже лучше не пользоваться.

25) Может ли атрибут быть установлен на один из параметров метода? Чем это полезно?
Да. Будет параметер с установленным атрибутом. Или намёк на PInvoke?
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174585
dzone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Что не так вот в следующей строке? DateTime.Parse(myString);

Это типа myString не объявлен или возможно ошибка - нужно было использовать DateTime.TryToParse ???
Не могу понять смысл таких вопросов, толком не понятно что просят найти.
Давно еще у меня было такое собеседование, дает мне чувак на листке бумаги кусок кода, примерно такое:

try{
//тут создание и запись в файл (синтаксис без ошибок)
}
catch(exception ex)
{
// обработка ошибки
}

что не так в этом коде? Ну я посмотрел, синтаксис везде ровный, все нормально говорю. А он - нет не нормально, нет перехвата ошибки IOException, вдруг диск переполнен? Ё..ный стыд, ну понятно что можно кучу эксепшинов расставить, но это же зависит от задания. Таким же способом я мог бы ответить что вы в reference IO не подключили, namespace и класс не объявили.....но он оказался упертый как баран.
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174592
dzone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К8) Что делает эта команда? sn -t foo.dll
Подписывает сборку цифровой подписью?


просто возвращает token файла
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174594
.Speаker.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1) Что не так вот в следующей строке? DateTime.Parse(myString);
Все так. Иначе зачем тогда первая реализация метода Parse с одним параметром.
12) Почему catch(Exception) почти всегда — плохая мысль?
Не получаем никаких данных об ошибке, вызвавшей исключение.
Равносильно конструкции
try
{
}
finally
{
}
17) В чем различие между a.Equals(b) и a == b?
Ни в чем, если не overriden
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174611
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К
4) Напишите стандартный lock() плюс «двойную проверку» для создания критической секции вокруг доступа к переменной.
Чё за двойная проверка?


http://ru.wikipedia.org/wiki/Double_checked_locking
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174615
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Speаker.17) В чем различие между a.Equals(b) и a == b?
Ни в чем, если не overridenНе, это баян про boxing .
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174732
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Speаker.что хотел сказать автор - не понятно.

Если ваш мозг, еще не достаточно загружен, и без того не малым объемом знаний .net fw, то есть еще не мало тем, которые могут не пригодится )
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174739
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

почему? зависит же от реализации)
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174747
.Speаker.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netivan,
Да и == м.б. overload
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174770
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Speаker.,

о чем и речь. он может же equals вызывать))
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174775
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не ответил на
1-4
1-5
1-8
1-10
1-17

и на

2-9
2-11

Итого я почти сениор но недотягиваю до джуниора

много дурацких вопросов конечно и нет ряда принципиальных
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174791
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имхо норм вопросы это в сторону:
ref vs val,
delegate vs event,
equality,
и дальше от них вглубь. По моим наблюдениям - жизненные темы, в которых народ часто плавает
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174810
Фотография mmnick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я в шоке, эти вопросы меня ставят в тупик. Сюда еще шаблоны проектирования надо добавить .
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174815
.Speаker.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mmnick, скажи по русски - ПАТТЕРНЫ ;-)
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38174978
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто вообще хоть раз использовал "полезную" команду tasklist?

Про using я всегда начинаю отвечать, мол для импорта пространств имен и для создания псевдонимов типа, что вводит в ступор собеседующего :) он то хотел услышать про IDisposable.
Про ООП и SOA можно говорить часами, один чего полиморфизм в ООП чего стоит и как и где реализуется.
Нет ни одного вопроса лямбды или обобщенные методы. Например, может ли анонимный тип использоваться в качестве обобщенного параметра в обобщенном методе. Или не слова о ковариантности - контвариантности.
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38175028
Фотография Esofter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВПро using я всегда начинаю отвечать, мол для импорта пространств имен и для создания псевдонимов типа, что вводит в ступор собеседующего :) он то хотел услышать про IDisposable.

using еще генерирует try-finally. в трай помещает тело юзинга, в файнали - диспоуз
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38175029
Фотография Esofter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К24) Почему в .NET выходные параметры (out parameters) не стоит применять? Действительно ли это так?
И Dictionary.TryGetValue тоже лучше не пользоваться.

почему?
...
Рейтинг: 0 / 0
Что должен знать правильный .NET-разработчик
    #38175086
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВНет ни одного вопроса лямбды или обобщенные методы. Например, может ли анонимный тип использоваться в качестве обобщенного параметра в обобщенном методе. Или не слова о ковариантности - контвариантности.
beg-in-er видимо началось всё отсюда февраля 21, 2005
...
Рейтинг: 0 / 0
25 сообщений из 39, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Что должен знать правильный .NET-разработчик
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]