Top 80 .Net interview questions Flashcards
Какие основные навыки, необходимые разработчикам .NET?
- Знание языков программирования C#, F# и VB.NET
- Хорошие знания концепций ООП и рефакторинга кода
- Понимание фреймворка ASP.NET MVC
- Знание СУРБД и написание запросов на SQL
- Знакомство с проектированием баз данных и такими базами данных, как SQL Server, No SQL, MySQL, Oracle и т. д.
- Знание тестирования и отладки программного обеспечения
- Умение работать с веб-технологиями, такими как CSS, HTML и bootstrap
- Знание шаблонов проектирования и принципов SOLID
- Знание развертываний веб-серверов и конфигураций IIS
Какие вторичные навыки, необходимые разработчикам .NET?
- Знание жизненного цикла разработки ПО и гибкого подхода
- Знакомство с REST API, веб-формами, JQuery, Angular и т. д.
- Опыт развертывания CI/CD
- Знание веб-сканирования и скрапинга
- Знакомство с облачными платформами, такими как Azure, AWS и т. д.
- Сильные навыки общения и совместной работы
- Хорошие навыки решения проблем и управления проектами
Какие должностные обязанности разработчиков .NET с опытом работы от 1 до 2 лет?
- Проектирование, разработка и поддержка программных приложений
- Разработка внутренних систем для поддержки функций и возможностей приложений
- Выполнение тестовых запусков и отладка
- Улучшение существующей системы для достижения новых бизнес-целей
- Создание технической документации, такой как спецификации дизайна, руководства пользователя и т. д.
- Интеграция API со сторонними сервисами
Какие должностные обязанности разработчиков .NET с опытом работы от 3 до 5 лет?
- Разработка масштабируемых приложений с использованием технологий .NET
- Просмотр кодов коллег-разработчиков
- Внедрение принципов SOLID и стандартных шаблонов проектирования
- Проведение функционального и нефункционального тестирования
- Выполнение модульных тестов с использованием таких фреймворков, как X Unit, NUnit или MSTest
- Работа с системами контроля версий, такими как Git
- Сотрудничество с практиками Agile для оптимизации проектов
- Обеспечение стандартов качества, установленных для приложений
Какие должностные обязанности разработчиков .NET с более чем пятилетним опытом?
- Сбор требований к продукту путем тесного сотрудничества с заинтересованными сторонами
- Проектирование, разработка и поддержка веб-приложений корпоративного уровня
- Поддержка существующих приложений, устранение неполадок и внедрение соответствующих улучшений.
- Работа с такими фронтенд-технологиями, как HTML5, CSS, JavaScript, jQuery и т. д.
- Выполнение модульных тестов и работа с командами QA для повышения качества приложений
- Проектирование баз данных и написание SQL-запросов
Что такое .NET?
.NET — это платформа приложений с открытым исходным кодом, на которой мы можем создавать мобильные, веб- и настольные приложения. Платформа состоит из множества инструментов, языков программирования и библиотек для разработки приложений.
.NET — это высокопроизводительная, безопасная и надежная платформа приложений, которая поддерживает различные операционные системы, такие как Android, Windows, Linux и macOS. Она имеет стандартный набор библиотек и API, включая домены машинного обучения и сетевых технологий. Более того, .NET имеет множество моделей приложений, построенных на базовых библиотеках.
Что такое фреймворк .NET?
.NET Framework — это по сути фреймворк разработки программного обеспечения, который позволяет нам создавать и запускать приложения в Windows. Кроме того, он поддерживает запуск веб-сайтов и служб в Windows.
Компоненты фреймворка .NET — это библиотека классов и среда выполнения CLR. CLR — это механизм выполнения, который управляет запуском приложений, а библиотека классов предоставляет богатый набор API и типов.
Какая последняя версия фреймворка .NET?
.NET Framework 4.8.1 — это последняя версия .NET Framework, выпущенная 9 августа 2022 года.
Каковы новые возможности .NET Framework 4.8.1?
Ниже перечислены новые возможности .NET Framework 4.8.1.
Позволяет приложениям работать в системах Windows 11 на базе ARM64
Поддерживает подсказки, совместимые с WCAG2.1
Поддерживает UIA TextPattern
Исправлено множество проблем с DataGridView
Предоставляет множество улучшений производительности
Поддерживает несколько платформ Windows
Предлагает множество методов установки
Улучшает пользовательский интерфейс и совместимость
Какие языки поддерживает .NET Framework?
.NET Framework поддерживает более шестидесяти языков программирования, включая C#, VB.NET, F#, VC++, Perl и Python.
Каковы наиболее важные аспекты .NET?
.NET — это платформа с открытым исходным кодом, содержащая около 32 языков программирования и несколько инструментов для создания приложений. Она очень безопасна и легко работает на нескольких компьютерных платформах.
Каковы основные особенности фреймворка .NET?
- .NET Framework поддерживает автоматическое управление ресурсами. CLR и сборщики мусора играют важную роль в управлении ресурсами.
- Он обеспечивает межъязыковое взаимодействие. Таким образом, код, написанный на одном языке, может взаимодействовать с кодом, написанным на другом языке.
- Он предлагает превосходные возможности безопасности типов. Проверка типов фреймворка .NET гарантирует, что все значения, объекты и ссылки имеют допустимый тип.
- Он обеспечивает поддержку управляемой многопоточности. Мы можем ставить задачи в очередь для выполнения с помощью потоков пула.
- Он обеспечивает повышенную безопасность приложений с безопасностью типов, безопасностью доступа к коду и т. д.
Что такое языки ООП?
Некоторые языки ООП — это Java, JavaScript, C#, C++, Python, Visual Basic, Ruby, .NET Typescript и PHP.
Что такое JIT-компилятор?
JIT означает JustInTime. Это компилятор, который быстро преобразует байт-коды в машинные коды. Мы можем использовать JIT-компиляторы для улучшения времени выполнения приложений.
Главное в JIT-компиляторе то, что он компилирует коды после запуска программы. Другими словами, JIT-компилятор запускает коды на лету. Java Virtual Machine и Common Language Runtime используют JIT-компиляторы.
Каковы различные типы JIT-компиляторов .NET?
Ниже приведены основные JIT-компиляторы, которые мы можем найти в экосистеме .NET.
- Pre-JIT-компилятор
- Pre-JIT-компилятор компилирует исходный код в машинный код за один цикл компиляции. Он использует NGen для создания собственного образа приложений, которые могут работать на одной платформе.
- Econo JIT Compiler
- Компилятор Econo JIT компилирует методы, вызываемые во время выполнения, как обычные JIT-компиляторы. Но они не сохраняют скомпилированные методы для будущего использования.
- Обычный JIT-компилятор
- Обычный JIT-компилятор компилирует исходные коды во время выполнения. Он выполняет методы, вызываемые в определенное время. Мы можем сохранять скомпилированные методы в памяти.
Объясните ООП и его связь с .NET Framework?
ООП — это аббревиатура от Object-Oriented Programming (объектно-ориентированное программирование). Это программная структура, которая использует автономные сущности, называемые «объектами», вместо методов для достижения желаемой функциональности. ООП позволяет разработчикам .NET создавать модульные программы и классы, содержащие методы, свойства, поля, события и другие логические модули.
Каковы основные особенности ООП?
Основные особенности ООП:
- Инкапсуляция: Создание автономных модулей, которые связывают данные и функции, которые получают доступ к этим данным.
- Абстракция: Обрабатывает сложность и позволяет реализовать дополнительную сложную логику, не раскрывая ее пользовательскому объекту.
- Полиморфизм: Выполняемая операция зависит от контекста во время выполнения, что облегчает интеграцию.
- Наследование: Создание классов в иерархии, позволяющей классу наследовать поведение от своего родительского класса, что позволяет повторно использовать код.
Назовите некоторые языки ООП?
Simula был первым языком ООП, а Java, JavaScript, Python, C++, Visual Basic. NET, Ruby, Scala, PHP
Что такое JIT?
JIT означает Just In Time. Это компилятор в CLR, отвечающий за выполнение программ .NET на разных языках путем преобразования их в машинный код. Он ускоряет выполнение кода и поддерживает несколько платформ.
Каковы различные типы JIT-компиляторов?
Существует 3 типа JIT-компиляторов:
i. Pre-JIT-компилятор: он компилирует весь исходный код в машинный код за один цикл компиляции, т. е. во время развертывания приложения.
ii. Обычный JIT-компилятор: методы исходного кода, необходимые во время выполнения, компилируются в машинный код и сохраняются в кэше для последующего вызова.
iii. Econo JIT-компилятор: методы, необходимые только во время выполнения, компилируются с помощью этого компилятора и не сохраняются для будущего использования.
Что такое BCL?
BCL означает Base Class Library. Он включает в себя классы, интерфейс и типы значений. Это основа для создания приложений, компонентов и элементов управления .NET Framework.
Что такое FCL?
FCL означает Framework Class Library и представляет собой набор повторно используемых типов, включая классы, интерфейсы и типы данных, включенные в .NET Framework. Он используется для разработки самых разных приложений, поскольку обеспечивает доступ к системным функциям.
Что такое кэширование в .NET?
Кэширование — это метод хранения данных на промежуточном уровне. Оно обеспечивает быстрый доступ к данным и повышает их доступность. Кэширование в .NET поддерживает повышение производительности приложений. Главное в кэшировании — это то, что мы можем получить доступ к данным, даже если источник данных временно недоступен.
.NET предоставляет два типа классов MemoryCache. Один класс — это пространство имен System.Runtime.Caching, а другой класс — пространство имен Microsoft.Extensions.Caching.
Какие типы кэширования существуют в .NET?
В .NET есть 3 типа кэшей:
- In-Memory Cache
- Постоянный внутрипроцессный кэш
- Распределенный кэш