Коварный вопрос по Event,Delegate

На собеседованиях любят задавать всякие каверзные вопросы. Одним из любимых вопросов на понимание .net платформы является вопрос про события и делегаты. В лучшем случае спрашивают отличия, в худшем могут задать такой вопрос на засыпку.

Дан код:

1
2
3
4
5
6
7
8
9
10
public class A
{
  public void OnDoWork()
  {
    if ( DoWork != null )
      DoWork(this, EventArgs.Empty);
  }
 
  public event EventHandler DoWork;
}
  1. Что будет с программой, если класс A видоизменить так: убрать ключевое слово event?
  2. Что будет с программой, если вообще во всем коде убрать ключевые слова event?

… читать далее.

Еще несколько вопросов на собеседовании для C#/dotNet программиста

  1. В чем вы видите основную разницу между Convert.ToString(someObject) и someObject.ToString()?
  2. В чем разница между throw; и throw ex;?
  3. Назовите основные на ваш взгляд конструкции используемые при синхронизации работы потоков?
  4. Что такое уровни изоляции транзакции в базах данных, какие основные уровни существуют, в чем их отличия и особенности?
  5. Какие основные атрибуты вы обычно используете при разработке custom control’а? Их назначение? (хотелось услышать что-то типа Browsable, DefaultValue, DesignerSerializationVisibility и т.д.)
  6. Как бы вы поступили если нужно было бы сравнить 2 коллекции по 10000 эллементов в каждой (хотел услышать рассуждения про словари)?

Приведенные выше вопросы относятся к детальным знаниям C# и .Net, а оценить общие знания можно по Programmer Competency Matrix

<— { послепоста

Выбирал себе картинку для rss фида, нашел для себя достаточно интересный вариант его можно видеть слева. Для блогов с белым фоном могут замечательно подойти чернильные RSS иконки , это достаточно ново и стильно.

послепоста } —>

Еще небольшая порция вопросов на собеседовании

  1. Имеется массив чисел, получить список вида {число, количество вхождений числа в массив}, список должен быть отсортирован по количеству вхождений, внутри по возрастания числа. Использовать можно любой алгоритмический язык.
  2. Написать алгоритм проверки корректности регулярного выражения, которое включает [,],(,) т.е, например ([][[]()]) – правильно, ([][]()]) – неправильно
  3. Написать алгоритм, как в целом числе самый правый ноль превратить в единицу не используя циклы и рекурсию.
  4. Имеется таблица с 1 полем, заполненная числами по порядку: {1,2,4,7,8,11..}.
  5. Написать SQL Запрос который делает выборку следующего вида (2 столбца): {{3,1},{9,2},…}, Т.е. в первом поле идет число с которого начинается пропуск, во втором количество пропущенных чисел;

Вопросы на собеседовании по программированию на языке Java

  1. Описать реализацию выборки массива методом Рунге-Кутта.
  2. Какие типы интеграции с гетерогенными приложениями существуют.
  3. Написать реализацию многопоточного приложения с синхронизацией потоков «мягким» способом (без блокировок).
  4. Какие методы реализации WebDAV можно применять.
  5. Какие методы превентивного управления сборщиком мусора существуют.

<— { послепоста
Если вы любите вкусно поесть, а так же не проч выпить хороший напитков, и после спеть свои любимы песни – предлагаю вам прогуляться в караоке ресторан.

послепоста } —>

Вопросы на собеседовании по MS SQL

1. Что такое IAM, GAM.
2. Привести пример запроса с уведомлением, обеспечивающего вставку непересекающихся данных без изменений в области AWE.
3. Зачем нужны функции.
4. Написать запрос, который в результате будет возвращать номер строк. Т.е. результат запроса должен выглядеть так:

1 SomeValue1 SomeValue2
2 SomeValue3 SomeValue4
3 SomeValue5 SomeValue6
4 SomeValue7 SomeValue8

Нельзя использовать: временные таблицы, рекурсию, ключевое слово rownum и т.д.
Нужно написать обычный select средствами «голого» SQL.

5. Привести пример делегативной политики на примере governer utility
6. Написать структуру физического хранения строки в базе данных (описать, где находятся stable data и variable data).