Top 80 .Net interview questions Flashcards

1
Q

Какие основные навыки, необходимые разработчикам .NET?

A
  • Знание языков программирования C#, F# и VB.NET
  • Хорошие знания концепций ООП и рефакторинга кода
  • Понимание фреймворка ASP.NET MVC
  • Знание СУРБД и написание запросов на SQL
  • Знакомство с проектированием баз данных и такими базами данных, как SQL Server, No SQL, MySQL, Oracle и т. д.
  • Знание тестирования и отладки программного обеспечения
  • Умение работать с веб-технологиями, такими как CSS, HTML и bootstrap
  • Знание шаблонов проектирования и принципов SOLID
  • Знание развертываний веб-серверов и конфигураций IIS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Какие вторичные навыки, необходимые разработчикам .NET?

A
  • Знание жизненного цикла разработки ПО и гибкого подхода
  • Знакомство с REST API, веб-формами, JQuery, Angular и т. д.
  • Опыт развертывания CI/CD
  • Знание веб-сканирования и скрапинга
  • Знакомство с облачными платформами, такими как Azure, AWS и т. д.
  • Сильные навыки общения и совместной работы
  • Хорошие навыки решения проблем и управления проектами
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Какие должностные обязанности разработчиков .NET с опытом работы от 1 до 2 лет?

A
  • Проектирование, разработка и поддержка программных приложений
  • Разработка внутренних систем для поддержки функций и возможностей приложений
  • Выполнение тестовых запусков и отладка
  • Улучшение существующей системы для достижения новых бизнес-целей
  • Создание технической документации, такой как спецификации дизайна, руководства пользователя и т. д.
  • Интеграция API со сторонними сервисами
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Какие должностные обязанности разработчиков .NET с опытом работы от 3 до 5 лет?

A
  • Разработка масштабируемых приложений с использованием технологий .NET
  • Просмотр кодов коллег-разработчиков
  • Внедрение принципов SOLID и стандартных шаблонов проектирования
  • Проведение функционального и нефункционального тестирования
  • Выполнение модульных тестов с использованием таких фреймворков, как X Unit, NUnit или MSTest
  • Работа с системами контроля версий, такими как Git
  • Сотрудничество с практиками Agile для оптимизации проектов
  • Обеспечение стандартов качества, установленных для приложений
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Какие должностные обязанности разработчиков .NET с более чем пятилетним опытом?

A
  • Сбор требований к продукту путем тесного сотрудничества с заинтересованными сторонами
  • Проектирование, разработка и поддержка веб-приложений корпоративного уровня
  • Поддержка существующих приложений, устранение неполадок и внедрение соответствующих улучшений.
  • Работа с такими фронтенд-технологиями, как HTML5, CSS, JavaScript, jQuery и т. д.
  • Выполнение модульных тестов и работа с командами QA для повышения качества приложений
  • Проектирование баз данных и написание SQL-запросов
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Что такое .NET?

A

.NET — это платформа приложений с открытым исходным кодом, на которой мы можем создавать мобильные, веб- и настольные приложения. Платформа состоит из множества инструментов, языков программирования и библиотек для разработки приложений.

.NET — это высокопроизводительная, безопасная и надежная платформа приложений, которая поддерживает различные операционные системы, такие как Android, Windows, Linux и macOS. Она имеет стандартный набор библиотек и API, включая домены машинного обучения и сетевых технологий. Более того, .NET имеет множество моделей приложений, построенных на базовых библиотеках.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Что такое фреймворк .NET?

A

.NET Framework — это по сути фреймворк разработки программного обеспечения, который позволяет нам создавать и запускать приложения в Windows. Кроме того, он поддерживает запуск веб-сайтов и служб в Windows.

Компоненты фреймворка .NET — это библиотека классов и среда выполнения CLR. CLR — это механизм выполнения, который управляет запуском приложений, а библиотека классов предоставляет богатый набор API и типов.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Какая последняя версия фреймворка .NET?

A

.NET Framework 4.8.1 — это последняя версия .NET Framework, выпущенная 9 августа 2022 года.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Каковы новые возможности .NET Framework 4.8.1?

A

Ниже перечислены новые возможности .NET Framework 4.8.1.

Позволяет приложениям работать в системах Windows 11 на базе ARM64
Поддерживает подсказки, совместимые с WCAG2.1
Поддерживает UIA TextPattern
Исправлено множество проблем с DataGridView
Предоставляет множество улучшений производительности
Поддерживает несколько платформ Windows
Предлагает множество методов установки
Улучшает пользовательский интерфейс и совместимость

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Какие языки поддерживает .NET Framework?

A

.NET Framework поддерживает более шестидесяти языков программирования, включая C#, VB.NET, F#, VC++, Perl и Python.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Каковы наиболее важные аспекты .NET?

A

.NET — это платформа с открытым исходным кодом, содержащая около 32 языков программирования и несколько инструментов для создания приложений. Она очень безопасна и легко работает на нескольких компьютерных платформах.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Каковы основные особенности фреймворка .NET?

A
  • .NET Framework поддерживает автоматическое управление ресурсами. CLR и сборщики мусора играют важную роль в управлении ресурсами.
  • Он обеспечивает межъязыковое взаимодействие. Таким образом, код, написанный на одном языке, может взаимодействовать с кодом, написанным на другом языке.
  • Он предлагает превосходные возможности безопасности типов. Проверка типов фреймворка .NET гарантирует, что все значения, объекты и ссылки имеют допустимый тип.
  • Он обеспечивает поддержку управляемой многопоточности. Мы можем ставить задачи в очередь для выполнения с помощью потоков пула.
  • Он обеспечивает повышенную безопасность приложений с безопасностью типов, безопасностью доступа к коду и т. д.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Что такое языки ООП?

A

Некоторые языки ООП — это Java, JavaScript, C#, C++, Python, Visual Basic, Ruby, .NET Typescript и PHP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Что такое JIT-компилятор?

A

JIT означает JustInTime. Это компилятор, который быстро преобразует байт-коды в машинные коды. Мы можем использовать JIT-компиляторы для улучшения времени выполнения приложений.

Главное в JIT-компиляторе то, что он компилирует коды после запуска программы. Другими словами, JIT-компилятор запускает коды на лету. Java Virtual Machine и Common Language Runtime используют JIT-компиляторы.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Каковы различные типы JIT-компиляторов .NET?

A

Ниже приведены основные JIT-компиляторы, которые мы можем найти в экосистеме .NET.

  • Pre-JIT-компилятор
  • Pre-JIT-компилятор компилирует исходный код в машинный код за один цикл компиляции. Он использует NGen для создания собственного образа приложений, которые могут работать на одной платформе.
  • Econo JIT Compiler
  • Компилятор Econo JIT компилирует методы, вызываемые во время выполнения, как обычные JIT-компиляторы. Но они не сохраняют скомпилированные методы для будущего использования.
  • Обычный JIT-компилятор
  • Обычный JIT-компилятор компилирует исходные коды во время выполнения. Он выполняет методы, вызываемые в определенное время. Мы можем сохранять скомпилированные методы в памяти.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Объясните ООП и его связь с .NET Framework?

A

ООП — это аббревиатура от Object-Oriented Programming (объектно-ориентированное программирование). Это программная структура, которая использует автономные сущности, называемые «объектами», вместо методов для достижения желаемой функциональности. ООП позволяет разработчикам .NET создавать модульные программы и классы, содержащие методы, свойства, поля, события и другие логические модули.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Каковы основные особенности ООП?

A

Основные особенности ООП:

  • Инкапсуляция: Создание автономных модулей, которые связывают данные и функции, которые получают доступ к этим данным.
  • Абстракция: Обрабатывает сложность и позволяет реализовать дополнительную сложную логику, не раскрывая ее пользовательскому объекту.
  • Полиморфизм: Выполняемая операция зависит от контекста во время выполнения, что облегчает интеграцию.
  • Наследование: Создание классов в иерархии, позволяющей классу наследовать поведение от своего родительского класса, что позволяет повторно использовать код.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Назовите некоторые языки ООП?

A

Simula был первым языком ООП, а Java, JavaScript, Python, C++, Visual Basic. NET, Ruby, Scala, PHP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Что такое JIT?

A

JIT означает Just In Time. Это компилятор в CLR, отвечающий за выполнение программ .NET на разных языках путем преобразования их в машинный код. Он ускоряет выполнение кода и поддерживает несколько платформ.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Каковы различные типы JIT-компиляторов?

A

Существует 3 типа JIT-компиляторов:

i. Pre-JIT-компилятор: он компилирует весь исходный код в машинный код за один цикл компиляции, т. е. во время развертывания приложения.

ii. Обычный JIT-компилятор: методы исходного кода, необходимые во время выполнения, компилируются в машинный код и сохраняются в кэше для последующего вызова.

iii. Econo JIT-компилятор: методы, необходимые только во время выполнения, компилируются с помощью этого компилятора и не сохраняются для будущего использования.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Что такое BCL?

A

BCL означает Base Class Library. Он включает в себя классы, интерфейс и типы значений. Это основа для создания приложений, компонентов и элементов управления .NET Framework.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Что такое FCL?

A

FCL означает Framework Class Library и представляет собой набор повторно используемых типов, включая классы, интерфейсы и типы данных, включенные в .NET Framework. Он используется для разработки самых разных приложений, поскольку обеспечивает доступ к системным функциям.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Что такое кэширование в .NET?

A

Кэширование — это метод хранения данных на промежуточном уровне. Оно обеспечивает быстрый доступ к данным и повышает их доступность. Кэширование в .NET поддерживает повышение производительности приложений. Главное в кэшировании — это то, что мы можем получить доступ к данным, даже если источник данных временно недоступен.

.NET предоставляет два типа классов MemoryCache. Один класс — это пространство имен System.Runtime.Caching, а другой класс — пространство имен Microsoft.Extensions.Caching.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Какие типы кэширования существуют в .NET?

A

В .NET есть 3 типа кэшей:

  • In-Memory Cache
  • Постоянный внутрипроцессный кэш
  • Распределенный кэш
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
.NET — это фреймворк ООП или АОП?
.NET — это фреймворк ООП, поскольку он широко поддерживает инкапсуляцию и наследование.
26
Поддерживает ли .NET многопоточность?
Да, .NET поддерживает многопоточность. Это делается двумя способами, как указано ниже. Использование класса пула потоков с асинхронными методами. Запуск потоков с делегатами ThreadStart.
27
Что такое Windows Communication Foundation (WCF)?
WCF — это фреймворк, который мы используем для создания сервисно-ориентированных приложений. Он поддерживает отправку асинхронных сообщений с одного конца службы на другой. Сообщения могут быть отдельными символами, словами или сложными двоичными данными. Концом службы может быть служба, размещенная в IIS, или приложение. Короче говоря, WCF упрощает создание веб-сервисов и клиентов веб-сервисов. WCF следует последним отраслевым стандартам взаимодействия веб-сервисов. Он следует шаблонам нескольких сообщений, таким как запрос/ответ, одностороннее сообщение и дуплексный обмен.
28
Что такое SOA?
SOA — это метод разработки программного обеспечения, использующий программные компоненты для создания приложений. Программные компоненты называются сервисами. Каждый сервис предоставляет бизнес-возможности. Сервисы могут взаимодействовать друг с другом. Мы можем повторно использовать сервисы в разных системах. Аналогично мы можем объединять различные независимые сервисы для выполнения сложных задач. Например, мы можем использовать SOA в процессе аутентификации пользователей. Различные процессы организации могут требовать аутентификации пользователей. Мы можем разработать и повторно использовать один сервис аутентификации для нескольких бизнес-процессов с SOA.
29
Что такое Agile-методология?
Agile — это методология управления проектами, в которой проект можно разделить на несколько фаз. Основой гибкой методологии является сотрудничество и постоянное совершенствование. Методология следует циклу планирования, выполнения и оценки. Agile project management по сути является итеративным подходом. Он упрощает проекты по разработке программного обеспечения, которые включают непрерывные выпуски, и включает отзывы клиентов в каждую итерацию.
30
Что такое разработка через тестирование?
Методология TDD делает акцент на написании тестовых случаев перед разработкой функции или возможности приложения. Она следует циклу итеративной разработки с короткими интервалами. Проще говоря, TDD выполняет разработку и тестирование спина к спине. TDD следует следующему циклу в разработке продукта. * Добавление теста в тестовый набор * Выполнение всех тестов так, чтобы новый тест не прошел * Написание кодов, чтобы тест прошел * Повторный запуск всех тестовых наборов * Улучшение исходных кодов * Повторение цикла
31
Каковы шаги в процессе ORM?
В процессе ORM пять шагов. Они: * Идентификация риска * Оценка риска * Снижение риска * Контроль реализации * Мониторинг
32
Что такое конструктор в C#?
Конструктор в C# — это уникальный метод класса с набором инструкций. Когда создается экземпляр класса, конструктор вызывается автоматически.
33
Что такое EXE и DLL?
EXE — это исполняемый файл, который работает как приложение и запускается индивидуально, так как содержит точку входа. DLL — это библиотека динамической компоновки, которая является вспомогательным файлом для других приложений и не может работать отдельно.
34
В чем разница между systems. StringBuilder и system. string?
System.String неизменяем и имеет фиксированную длину, тогда как Systems.StringBuilder изменяем и имеет переменную длину. Мы можем изменить размер .string, но не можем изменить размер .stringbuilder.
35
Каковы концепции ООП?
В ООП есть четыре столпа. Давайте рассмотрим их ниже. * Инкапсуляция: речь идет о создании автономных единиц для хранения данных и кодов. Другими словами, она связывает данные и код в один пакет. Это свойство повышает безопасность данных, инкапсулированных в автономные единицы. * Абстракция: это свойство позволяет отображать только существенные детали для пользователей. Это очень полезно при реализации сложной логики. * Полиморфизм: Это свойство позволит объектам принимать множество форм. Оно позволяет объектам делиться своим поведением. Кроме того, оно позволит разным объектам использовать один и тот же интерфейс. * Наследование: Это свойство позволяет создавать классы в иерархии путем наследования поведения родительских классов. Это свойство позволяет повторно использовать коды.
36
Что такое кросс-страничная публикация на веб-страницах ASP.NET?
Кросс-страничная публикация поддерживает публикацию данных формы с одной страницы на другую. Это помогает избежать накладных расходов на перезагрузку текущей страницы. Мы используем атрибут PostBackURL, чтобы указать страницу, которую мы хотим опубликовать. Страница ASP.NET отправляет данные обратно самой себе для обработки событий. Например, как только мы ввели данные на страницу ASP.NET, мы нажмем кнопку «Отправить». После сохранения данных страница отправляет данные обратно самой себе.
37
В чем разница между переменными только для чтения и константами в C#?
Переменные только для чтения * Это константа времени выполнения. * Мы храним переменные только для чтения в куче памяти. * Мы используем ключевое слово read-only для создания полей только для чтения. Константы * Это константа времени компиляции. * Мы храним переменные const в метаданных. * Мы используем ключевое слово const для создания полей констант.
38
В чем разница между типом значения и ссылочным типом в C#?
Тип значения хранится в стеке, но в то же время ссылочный тип хранится в куче. Тип значения хранит данные в своей ячейке памяти, тогда как ссылочный тип указывает на другую ячейку памяти, где хранятся данные. Типы значения передаются по значению, поэтому при назначении переменной создается копия данных. Типы ссылки передаются по ссылке, поэтому при назначении переменной используется ссылка на данные.
39
В чем разница между стеком и кучей?
Мы используем стек для хранения временных переменных. Память стека хранит данные на основе линейной структуры данных. Мы используем память стека для статического выделения памяти. С другой стороны, мы используем кучу для динамического выделения памяти. Доступ к данным в памяти кучи — медленный процесс. Куча хранит данные с использованием иерархической структуры. Это означает, что данные хранятся в куче в виде дерева.
40
В чем разница между стеком и очередью?
Очередь стека Она следует принципу LIFO. Она следует принципу FIFO. Она позволяет вставлять и удалять элементы с верхнего конца. Она позволяет вставлять элементы с заднего конца и удалять их с переднего конца. Сначала обрабатываются последние вставленные данные. Сначала обрабатываются первые введенные данные. Стек использует один указатель на верхнем конце. Стек использует два указателя. Один на переднем конце, а другой на заднем конце.
41
В чем разница между BCL и FCL?
BCL — это библиотека базовых классов с интерфейсами, классами и типами значений. Эта библиотека помогает создавать компоненты, приложения и элементы управления .NET Framework. FCL — это библиотека классов Framework, коллекция повторно используемых типов. Эта библиотека включает интерфейсы, классы и типы данных .NET Framework. Она обеспечивает доступ к системным функциям, поэтому мы можем использовать ее для разработки различных приложений.
42
В чем разница между файлами EXE и DLL?
Файл EXE — это исполняемый файл, используемый для запуска приложений. Он содержит коды приложений, ресурсы и зависимости. Файлы EXE также являются автономными файлами, которые напрямую выполняются пользователями. Файл DLL — это, по сути, динамическая библиотека, в которой хранятся повторно используемые коды. Эти файлы содержат коды, которые мы можем совместно использовать с другими программами, и предоставляют общие функции, которые могут использовать несколько программ.
43
Каким принципам проектирования следуют в .NET?
.NET следует принципам проектирования SOLID, перечисленным ниже. * Принцип единой ответственности * Принцип открытости-закрытости * Принцип подстановки Лисков * Принцип разделения интерфейса * Принцип инверсии зависимостей
44
В чем разница между циклами While и For? Предоставьте синтаксис .NET для обоих циклов?
Цикл For обеспечивает краткий способ записи структуры цикла, но цикл While — это оператор потока управления, который позволяет повторно выполнять код. Инициализация, проверка условий, итерационные операторы записываются в верхней части цикла For, но только инициализация и проверка условий выполняются в верхней части цикла while. Синтаксис: Цикл While: ``` while(условие) { //выполняемые операторы. } ``` Цикл For: ``` for(инициализация; условие; Инкремент или декремент){ //выполняемые операторы. } ```
45
Что такое базовый класс и производный класс?
Базовый класс — это класс, члены и функции которого могут наследоваться, а производный класс — это класс, который наследует эти члены и также может иметь дополнительные свойства.
46
Что такое метод расширения для класса?
Метод расширения используется для добавления новых методов в существующий класс или структуру без изменения исходного кода исходного типа. Специальное разрешение от исходного типа или его повторная компиляция не требуются.
47
Что такое наследование?
Наследование — одно из основных свойств ООП. Оно позволяет дочернему классу наследовать поведение своего родительского класса. Другими словами, наследование — это метод создания иерархий объектов. Здесь один класс в иерархии зависит от другого класса.
48
Что такое иерархия наследования?
Иерархия наследования — это древовидная структура с одним корнем для организации классов.
49
Что такое наследование реализации и наследование интерфейсов?
Когда дело доходит до наследования реализации, класс наследует все свои члены из одного источника. Когда дело доходит до наследования интерфейсов, класс наследует только сигнатуры функций из другого класса.
50
Как можно предотвратить наследование класса?
Чтобы предотвратить наследование класса, можно использовать ключевое слово seal в C#. Ключевое слово NotInheritable можно использовать в VB.NET для предотвращения случайного наследования класса.
51
Что такое конструктор в C#?
Конструктор — это специальный метод класса, который содержит набор инструкций и автоматически вызывается при создании экземпляра класса.
52
Объясните различные типы конструкторов в C#?
В C# существует 5 типов конструкторов, как указано ниже: * Конструктор по умолчанию: у него нет параметров * Параметризованный конструктор: у него один параметр * Конструктор копирования: он создает объекты путем копирования переменных из другого объекта * Статический конструктор: он создается с использованием ключевого слова static. Он вызывается только один раз. * Закрытый конструктор: он создается с использованием спецификатора private. Он не позволяет другим классам наследоваться от этого класса. Он не позволяет создавать из него экземпляры.
53
Определите переопределение метода?
Переопределение метода — это процесс, который позволяет использовать то же имя, тип возвращаемого значения, аргумент и вызывать те же функции из другого класса (базового класса) в производном классе.
54
Что такое затенение?
Затенение делает метод родительского класса доступным для дочернего класса без использования ключевого слова override. Это также известно как сокрытие метода.
55
В чем разница между затенением и переопределением?
Затенение используется для предоставления новой реализации для метода базового класса. Это помогает защитить от последующей модификации базового класса. С другой стороны, переопределение позволяет переписать функцию базового класса с другим определением и достичь полиморфизма.
56
Что такое полиморфизм?
Полиморфизм относится к одному интерфейсу с несколькими функциями. Это означает, что один и тот же метод или свойство может выполнять разные действия в зависимости от типа времени выполнения экземпляра, который его вызывает.
57
Каковы типы полиморфизма?
Существует два типа полиморфизма: * Статический или полиморфизм времени компиляции * Динамический или полиморфизм времени выполнения
58
Поддерживает ли .NET множественное наследование?
Нет, .NET поддерживает только одиночное наследование. В .NET класс может наследовать только от одного класса.
59
Что такое алмаз смерти в C#?
Проблема алмаза смерти возникает, когда классы A и B наследуют от одного базового класса A. Классы A и B наследуют класс, известный как класс D. Если метод в классе A, классах B и C переопределил метод, класс D не может переопределить метод. Теперь, какой метод наследует класс D, — это вопросительный знак. Это известно как алмаз смерти.
60
Что такое интерфейс?
Интерфейс — это объявление для набора членов класса. Это ссылочный тип, который содержит только абстрактные члены, такие как события, методы, свойства и т. д.
61
Что такое события и делегаты?
События хранятся как публичные члены класса. С другой стороны, делегаты хранятся как закрытые члены класса. Делегаты также передаются как параметры.
62
Что такое бизнес-логика?
Это уровень обработки приложения, который координирует между уровнем пользовательского интерфейса и уровнем доступа к данным.
63
В чем разница между компонентом и элементом управления?
Мы можем разместить элемент управления внутри области формы, а компонент — под ней. Знайте, что все элементы управления могут быть компонентами, но не всеми компонентами можно управлять. Компонент не может нарисовать себя на форме; элемент управления управляет процессом рисования.
64
В чем основное различие между пользовательскими элементами управления и пользовательскими элементами управления?
Одно приложение может использовать пользовательские элементы управления, в то время как многие могут использовать пользовательские элементы управления.
65
Каковы функциональные и нефункциональные требования?
Функциональные требования — это базовые и обязательные возможности, которые должны быть включены в систему. Нефункциональные требования — это атрибуты, связанные с качеством, которые должна предоставлять система.
66
Что такое .Net Reflection?
Мы используем объекты отражения для создания экземпляров типов. Они также помогают получать информацию о типе во время выполнения и поддерживают реализацию позднего связывания. Они используют PE-файл для чтения метаданных сборки. Классы пространства имен System.Reflection поддерживают доступ к метаданным работающей программы. Мы используем .NET Reflection для поиска всех типов в сборке. Он также помогает динамически вызывать методы в сборке и включает информацию о типах, методах, свойствах и событиях объектов.
67
Что такое глобальный кэш сборок (GAC)?
GAC — это кэш кода на уровне машины, хранящийся в среде Common Language Runtime. GAC хранит сборки .NET, которые будут совместно использоваться многими приложениями. Главное, что мы можем совместно использовать сборки, устанавливая их в кэш GAC. Мы можем развернуть сборку в GAC двумя способами. В первом способе GAC использует установщик. Другой метод использует инструмент разработчика, известный как инструмент GAC.
68
Что такое моделирование ролей объектов (ORM)?
Моделирование ролей объектов (ORM) — это мощный метод проектирования и запроса информационных систем на концептуальном уровне. Это простое и понятное описание приложения для нетехнических пользователей.
69
Что такое глобализация и локализация?
Глобализация — это проектирование и кодирование приложений, нейтральных к культуре и языку. Локализация — это настройка приложения и перевод пользовательского интерфейса на основе определенных культур и регионов.
70
Что такое MIME?
MIME означает многоцелевое расширение интернет-почты. Это дополнительный протокол, который отправляет данные, отличные от ASCII, через SMTP и облегчает обмен файлами данных в Интернете.
71
Что такое хэш-таблица?
Класс хэш-таблица по сути является коллекцией. Он хранит пары ключ-значение и организует их на основе хэш-кода каждого ключа, который используется для доступа к элементам в коллекции.
72
Каковы различные шаблоны проектирования фреймворка .NET?
Ниже приведены различные шаблоны проектирования фреймворка .NET. 1. Шаблон проектирования Creational i. Метод Factory ii. Абстрактная фабрика iii. Строитель iv. Прототип v. Одиночка 2. Шаблоны проектирования Structural i. Адаптер ii. Мост iii. Композит iv. Декоратор v. Фасад vi. Легковес vii. Прокси 3. Шаблоны проектирования Behavioral i. Цепочка ответственности ii. Команда iii. Интерпретатор iv. Итератор v. Посредник vi. Memento vii. Наблюдатель viii. Состояние ix. Стратегия x. Посетитель xi. Метод шаблона
73
Что такое маршалинг?
Маршалинг — это критически важный процесс преобразования типов в управляемом и неуправляемом коде.
74
Что такое упаковка и распаковка?
Упаковка и распаковка позволяют унифицировать представление системы типов для обработки значения любого типа как объекта.
75
В чем разница между Server.Transfer и Response.Redirect?
И Server.Transfer, и Response.Redirect используются для перенаправления пользователя с одной веб-страницы на другую. Метод Response.Redirect запрашивает новый URL-адрес и указывает новый URL-адрес. Метод Server.Transfer завершает выполнение текущей страницы и начинает выполнение новой страницы.
76
Что такое сборка мусора в .NET?
Сборщик мусора в .NET управляет выделением и освобождением памяти для приложений. Его оптимизирующий движок ищет лучшее время и удаляет объекты в памяти кучи, которые больше не используются приложениями. Кроме того, сборщик мусора в .NET поддерживает автоматическое управление памятью, поэтому разработчикам не нужно писать коды для задач управления памятью. Автоматическое управление памятью помогает избежать утечек памяти за счет оптимизации управления памятью.
77
Каковы подразделения кучи памяти?
Куча памяти разделена на три поколения. Поколение 0: используется для хранения короткоживущих объектов. В этом поколении происходит частая сборка мусора. Поколение 1: используется для объектов средней продолжительности жизни. Поколение 2: используется для долгоживущих объектов.
78
В чем разница между классом трассировки и классом отладки?
Вызов класса отладки включен только в режим отладки. Он используется во время разработки приложения. С другой стороны, вызов класса трассировки может быть включен в режим отладки и выпуска. Он используется во время развертывания приложения.
79
Различают отладочную сборку и сборку выпуска?
Отладочные сборки не позволяют точно устанавливать точки останова. Они содержат отладочные символы. Код, встроенный в сборку «Release», оптимизирован по скорости или размеру без каких-либо отладочных данных.
80
Что такое объект приложения?
Объект приложения делится информацией со всеми пользователями приложения. Мы можем собрать набор файлов ASP для выполнения определенной цели.
81
Что такое объект сеанса?
Объект сеанса хранит информацию и переменные. Он сохраняет их на протяжении всего сеанса.
82
В чем разница между управляемыми и неуправляемыми кодами?
Управляемые коды * Они работают внутри среды выполнения. * Нам нужно установить .NET Framework для выполнения. * Они обеспечивают автоматическое управление памятью. * Обеспечивает безопасность приложений. * Не допускает переполнения буфера памяти. Неуправляемые коды * Они работают непосредственно на оборудовании. * Нам не нужно устанавливать .NET Framework для выполнения. * Требуется ручное управление памятью и указателями. * Не обеспечивает безопасность приложений. * Переполнение буфера памяти допускается.
83
Как выполняется управляемый код?
Шаги для выполнения управляемого кода следующие: Выберите компилятор на основе выбранного языка Преобразуйте управляемый код с помощью компилятора JIT преобразует код в машинный код Выполнение машинного кода.
84
Каковы различные части сборки?
Различные части сборки: * Манифест: Он также известен как метаданные сборки. Он содержит сведения о версиях сборки. * Тип метаданных: Он содержит двоичную информацию программы. * MSIL: Он известен как код Microsoft Intermediate Language. * Ресурсы: Он содержит список связанных файлов.
85
Что такое MVC?
MVC означает Model View Controller. Это архитектурная модель, которая помогает создавать приложения .NET. Кроме того, MVC — это простая в использовании архитектура, которая поддерживает управление HTML.
86
Объясните разницу между функцией и хранимой процедурой?
Хранимые процедуры — это предварительно скомпилированные объекты, которые выполняют код при вызове. С другой стороны, функция компилируется и выполняется при вызове.
87
Что такое веб-служба .NET?
Мы можем найти веб-службу в .NET на веб-сервере. Веб-служба .NET использует стандартные веб-протоколы для взаимодействия с другими сетевыми приложениями. Протоколами могут быть HTTP и SOAP. Веб-служба, которая выполняет асинхронную связь для приложений XML. Приложения работают через коммуникационную среду .NET. Кроме того, веб-служба .NET — это компонент, который помогает публиковать функцию приложения в Интернете, делая ее доступной для общественности.
88
Каковы преимущества веб-служб?
Преимущества веб-сервисов: * Веб-сервисы просты в создании. Они поддерживают несколько платформ. * Веб-сервис может расширять свой интерфейс. Он может добавлять новые методы, не влияя на операции клиента. * Он не имеет состояния и дружелюбен к брандмауэрам.
89
Что такое MEF?
MEF — это краткая форма Managed Extensibility Framework. Это библиотека, которая позволяет хост-приложению использовать внешние расширения без настройки.
90
Что такое кортежи?
Кортеж — это по сути структура данных. Он содержит последовательность элементов различных типов данных. Кортежи — это структуры данных, которые поддерживают хранение свойств объектов. Они избегают создания отдельных типов для хранения свойств объектов. Приведенный ниже код помогает создать кортеж с тремя элементами. `Tuple person = new Tuple (1, "Joe", "Jobs");`
91
Что такое ADO?
ADO — это краткая форма ActiveX Data Objects. Это прикладная программа, которая поддерживает написание приложений Windows. Она используется для доступа к реляционной или нереляционной базе данных от разных поставщиков.
92
Каковы основные объекты в ADO.NET?
В ADO.NET есть два основных объекта: * DataReader: это связанная архитектура. * DataSet: это несвязанная архитектура.
93
Что такое Object Pooling?
Object Pooling позволяет использовать ограниченные ресурсы с помощью программных конструкций. Мы можем хранить объекты, готовые к использованию соединения и потоки в пуле в памяти, чтобы использовать их по мере необходимости. Мы можем извлечь новый объект из пула и выделить его для запроса. В целом, пул повышает производительность и масштабируемость.
94
Что такое клиентская и серверная валидация на веб-страницах?
Клиентская валидация происходит на стороне клиента. Для валидации используются языки JavaScript и VBScript, поскольку они улучшают пользовательский опыт. Кроме того, входные данные для клиентской валидации происходят в браузерах пользователей. С другой стороны, серверная валидация происходит на стороне клиента. Для серверной валидации используются языки ASP.net и PHP. Мы можем отправлять обратную связь через динамически сгенерированную новую веб-страницу.
95
Что такое сериализация?
Сериализация — это, как правило, процесс преобразования состояния объекта в форму. Мы можем переносить форму. Десериализация преобразует поток в объект. Позволяет хранить и передавать данные.
96
Что такое PE-файл?
PE означает Portable Executable (переносимый исполняемый файл). Это производная от Microsoft Common Object File Format (COFF). Исполняемый файл Windows. Файлы EXE или DLL следуют формату файла PE. Он состоит из четырех частей: Заголовки PE/COFF: содержат информацию о файле EXE или DLL. Заголовок CLR: содержит информацию о CLR и управлении памятью. Данные CLR: содержат метаданные DDL и кода MSIL, сгенерированного компиляторами. Собственный раздел образа: включает такие разделы, как .data, .rsrc, .rdata, .text и т. д.
97
В чем разница между DLL и EXE?
Файлы .EXE — это отдельные исходящие файлы, которые нельзя использовать совместно с другими приложениями. Файлы DLL — это несколько входящих файлов, которые можно использовать совместно.
98
В чем разница между DataSet.Clone и DataSet.Copy?
DataSet.Clone копирует только структуру DataSet, включая все отношения DataTable, схемы и ограничения. Он не копирует никакие данные. DataSet.Copy — это глубокая копия DataSet. Он дублирует как его структуру, так и данные.
99
Опишите использование ErrorProvider Control в .NET?
ErrorProvider — это простой механизм, который указывает конечным пользователям, что элемент управления в форме имеет ошибку. Если указан элемент управления с описанием ошибки, то рядом с элементом управления появляется значок.
100
Различие между Task и Thread в .NET?
Поток — это небольшой набор инструкций. Мы используем класс потока для создания и управления потоком в Windows. С другой стороны, задача — это объект, который представляет работу и возвращает результат. Он также представляет асинхронную операцию. Мы можем отменить задачу с помощью токенов отмены, тогда как потоки не допускают отмены. Задача может запускать несколько процессов одновременно, тогда как поток может иметь только одну задачу одновременно.
101
.NET — это фреймворк ООП или АОП?
NET — это фреймворк ООП, поскольку инкапсуляция и наследование являются ключевыми функциями фреймворка объектно-ориентированного программирования.
102
Что такое многопоточность?
Многопоточность — это процесс выполнения нескольких действий в одном процессе. .NET поддерживает многопоточность в двух направлениях. * Запуск потоков с помощью делегатов ThreadStart. * Использование класса ThreadPool с асинхронными методами.