Какой рейтинг вас больше интересует?
|
Забугорные вопросы на собеседовании по C#, ADO.NET (с ответами)2013-03-30 16:12:00 (читать в оригинале)Материал взят с англоязычного сайта www.techinterviews.com, посвященного вопросам на собеседовании для программистов. Точная ссылка вот . А дальше идет мой переаод. Ответы не менял и не дополнял. В некоторых случаях ответы по моему мнению неполные. Какие приемущества в использовании System.Text.StringBuilder по сравнению с System.String? StringBuilder-ы более эфективны в случае, если над тектом нужно сделать множетво манипуляций. Strings (строки) неизменны, так что во время каждой операции будет создан новый экземпляр строки. Можете ли вы поместить данные разных типов в System.Array? Нет. Какая разница между System.Array.CopyTo() и System.Array.Clone()? Первый метод осуществляет глубокое копирование массива, а второй поверхностное. Как отсортировать элементы массива в обратном порядке? Вызывая сначала Sort(), а потом Reverse() методы. Какаие типы данных .NET позволяют обращаться к хранимым в них двнным по уникальному ключу ? HashTable. Какой класс находится ниже SortedList (в иерархии наследования) ? Сортированный HashTable. Будет ли исполнен блок finally(), если исключение не произойдет ? Да. Какой эквивалент есть в C# для C++ - ного catch (…), который ловит любые доступные исключения в данной точке ? Блок catch, который ловит исключения типа System.Exception (являющегося предком всех исключений). Вы также можете написать catch {}, пропустив параметр типа. Это будет, то же самое. Может ли быть исполненно несколько блоков catch за раз ? Нет, так как после исполнения первого блока catch, управление передается блоку finally, или дальше по коду (есди finally отсутствует) . Почему плохая идея бросать свои собственные исключения ? Если вы знвете, что здесь произойдет исключение, то почему не написать коррестный код для обработки ошибки вместо того, чтобы передавать новый объект исключения в секцию catch ? Возбуждение своих исключений в проекте сигнвлизирует о некоторых архитектурных недостатках в проете. Что такое делегат? Делегат, это объект содержащий ссылку на метод. В C++ ему соответствует указатель на функцию. Что такое делегат множественного вызова ? Это делегат, который указывает и соответственно вызывает множество методов одновременно. Как проблема ада DLL-ек решена в .NET? Версионность сборок позволяет приложениям не только указывать имя библиотеки при использовании (как это было в Win32), но также и указывать версию сборки. Какие способы развертывания сборки в систему вы знаете ? 1) инсталятор MSI, 2) CAB архив, 3) команда XCOPY Что такое сборка-спутник (сопутствующая сборка) ? Если вы пишете мультиязыковое или мультикультурное приложение в .NET, то скорее всего захотите распространять основное приложение отдельно от локализованных модулей. Локализованные сборки, которые в таком случаемодифицируют основное приложение, называются сопутствующими сборками. Какие пространства имен необходимы для создания локализованных приложений ? System . Globalization, System . Resources Какая разница между // комментариями, /* */ комментариями и /// комментариями ? Однострочные, многострочные и XML документирования комментарии соответственно. Как сгенерировать документацию по C# исходникам, прямо из командной строки ? Скомпилировать с ключtм /doc. Какая разница между <c> и <code> тегами XML документирования ? Однострочный пример кода и многострочный пример кода соответственно. Является ли XML регистро-зависимым (различаются ли большие и маленькие буквы) ? Да, так Какие отладочные инструменты поставляются вместе с .NET SDK? CorDBG – отладчик командной строки, DbgCLR – графический отладчикr. Visual Studio .NET использует DbgCLR. Для использования CorDbg, вы должны скомпилировать исходный C# файл с ключем /debug. Что делает окно This показываемое в отладчике ? Оно показывает объект, на который указывает ссылка this. Показывается экземпляр объекта. Что делает assert() ? В режиме отладки assert примнимает булевский параметр и показывает диалог с ошибкой в случае если параметр равен false. Программа выполняется дальше, если условие равно true. Какая разница между классом Debug и классом Trace ? Судя по документации они выглядят одинаково. Предполагается что Debug используется только в режиме отладки, а Trace может использоваться и в режиме отладки, и в режиме release. Зачем используются 5 режимов трассировки в System.Diagnostics.TraceSwitcher ? Трассировочные дампы могут быть очень большими. Режимы трассировки позволяют регулировать количество создаваемой информации, от НИЧЕГО, до ПОДРОБНО. Куда направляется вывод TextWriterTraceListener ? На консоль или в файл, в зависимости от параметров передаваемых в конструктор. Как можно отлаживать ASP.NET Web приложения ? Присоединяя aspnet_wp.exe процесс к отладчику DbgClr. Какие три вида проверок должны быть выполнены при модульном тестировании ? Положительный тестовый случай ( правильные данные, правильный результат), отрицательный тестовый случай (поврежденные/пропущенные данные, правильная обработка), исключительные тестовые случаи (исключения бросаются и ловятся корректно). Можете ли вы поменять значение переменной во время отладки C# приложения ? Да, если вы отлаживаете в Visual Studio.NET, просто перейдите в окно Immediate. Объясните трех слойную модель приложения. Слой представления (интерфейс пользователя), слой бизнес логики, слой доступа к данным (данных). Какие приемущества и недостатки классов Microsoft data provider-а в ADO.NET ? SQLServer.NET провайдер данных высокоскоростной и устойчивый, но он требует лицензии MS SQL Server полученной от Microsoft. OLE-DB.NET провайдер данных универсальный для доступа к другим источникам данных: Oracle, DB2, Microsoft Access и Informix. Потому что он базируется на слое OLE, который не самая быстрая вещь в мире. ODBC.NET это устаревший провайдер созданный для совместимости с ODBC движками. Какова роль класса DataReader в ADO.NET соединениях ? Он возвращает набор данных только для чтения из источника данных, по завершении выполнения запроса. Какой подстановочный символ для строк в SQL ? Если вы хотите вытащить из БД строки таблицы со строковым полем, используя конструкцию LIKE, то подстановочным символом будет '%'. Объясните ACID концепцию для транзакций. Atomic - атомарна - не зависеть от предыдущих и последующих транзакцийю Consistent - полной - то есть при завершении или откате она выполняет всегда одно и тоже, в ней происходит действие целиком или не происходит вообще. Isolated - изолированной - нет транзакция просматривающих промежуточный результат текущей транзакции. Durable - недежной - данные будут в корректном состоянии (выполненном или нет), даже если система рухнет. Какие соединения (аутентификацию) поддерживает Microsoft SQL Server ? Windows Authentication (через Active Directory) и SQL Server аутентификацию (через имя пользователя и пароль в Microsoft SQL Server-е). Какое их них доверенное соединение, а какое недоверенное ? Windows Authentication - это доверенное потому что имя пользователя и пароль проверяются внутри Active Directory, а SQL Server аутентификация недоверенная, так как SQL Server проверяет только то, что участвует в транзакции. Зачем нужна недоверенная аутентификация ? Веб сервисы вынуждены использовать ее для не Windowsприложений. Что означает параметр Initial Catalog внутри Connection String ? Имя БД к которой соединяемся. Какое имя дата провайдера для соединения с БД MS Access ? Microsoft.Access. Что делает меттод Dispose() с объектом соединения? Убирает нейправляемый ресурс - соединение с БД. Какие условия должны сложиться для connection pooling? Множество процессов должны согласиться разделять одно соединение с БД. Это происходит, когда все параметры соединения совпадают, включая настройки безопасности. А в Компьютерной Академии «ШАГ» вам доступно получение специальности программист
|
Категория «Политики»
Взлеты Топ 5
Популярные за сутки
|
Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.