Практика‎ > ‎

Питання по .NET

1. Що таке .NET Framework?
  • Це платформа для розробки програм під Windows від Microsoft. 
  • Платформа підтримує багато мов, має CLR та .NET Framework бібліотеку класів
2. Компоненти .NET
  • Common Language Run-Time (CLR) - віртуальна машина
  • Application Domain - ізольований і безпечний простір де виконується код
  • Common Type System - специфікація, як різні типи представлені в пам'яті, аби мати діалог між мовами програмування
  • .NET бібліотека класів - колекція класів, інтерфейсів і типів даних, для багатократного використання
  • .NET Framework - включає в себе NET бібліотеку (...)
  • Profiling - оптимізація програми (...)
3. Що таке CTS?
  • Common Type System - це специфікація, як різні типи представлені в пам'яті, аби мати діалог між мовами програмування в одній програмі
4. Що таке CLR?
  • Common Language Runtime - це середовище для безпечного запуску програм
  • CLR перетворює код Intermediate Language в команди для процесора
5. Що таке CLS?
  • Common Language Specification - це система загальних типів у IL-коді, що визначає спосіб оголошення, використання і керування типами в середовищі CLR
6. Що таке JIT?
  • Just in Time компілятор, що іде з CLR і компілює IL-код в машинний код вже під час виконання програми
7. Що таке керований і некерований код?
  • Усі ресурси з Application Domain - це керований код
  • Код розроблений поза межами .NET - некерований код, запускається без CLR, наприклад для доступу до низькорівневих функцій операційної системи
8. Яка різниця між класами і об'єктами?
  • Клас лише описує властивості і методи, він створюється один раз
  • Об'єкти - створюються і знищуються під час роботи програми, можуть змінювати свої властивості, належать певному класу

9. Що таке boxing і unboxing?
  • Запакувати - перетворити значення у об'єкт (перенести в кучу)
  • Розпакувати (int)obj - перетворити на значення
10. Яка різниця між const і Read-only?
  • const - типово статична, до запуску відома (...)
  • Read-only - встановлюється в конструкторі, стає відомою під час запуску програми, (...)
11. що таке BCL?
  • Base Class Library - це серце Framework Class Library, що включає простір імен System і усі базові класи: Console, String, Int32, DataTime, Random +1000 класів, що використовуються і для віконних програм, і для сайтів, і для мобільних програм. 
  • В щоденній роботі ми використовуємо саме BCL, а все інше ми тягнемо з менеджера пакетів NuGet.
12. Різні версії фреймворків?
  • (...)
13. Яка різниця між namespace і assembly?
  • assembly - фізично групує логічні одиниці
  • namespace - групує класи
14. Що таке LINQ?
  • дозволяє отримувати данні з XML файлів, баз даних і колекцій
14. Що таке MSIL?
  • Intermediate Language 
    15. Якими можуть бути конструктори:
    • За замовченням - все робить 0, і null
    • З параметром
    • Копіювання - копіює змінні з іншого об'єкту
    • Статичний
    • Приватний