3.10M
Category: programmingprogramming

Принцип работы компилятора

1.

ИНСТРУМЕНТАЛЬНЫЕ
СРЕДСТВА РАЗРАБОТКИ
ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ

2.

План работы на семестр
1. Введение в язык программирования C# (6 часов лекций, 12 часов
на практические работы)
– Знакомство с языком C# и платформой .NET (основные
элементы синтаксиса, типы данных, операции и выражения);
– Условные операторы, циклы, функции;
– ООП.
2. Изучение инструментальных средств разработки ПО (12 часов
лекций и 20 часов на практические работы)
– Среды разработки и компиляторы;
– Системы контроля версий;
– Системы отладки и рефакторинга кода;
– Код ревью;
– Системы трекинга задач и управления проектами;
– Контейнеризация и CI/CD.

3.

C#
ПЛАТФОРМА .NET

4.

С# – это объектно-ориентированный язык программирования.
Он был создан в период с 1998 по 2002 год командой
инженеров Microsoft под руководством Андерса Хейлсберга и
Скотта Вильтаумота.
Андерс
Хейлсберг
Скотт
Вильтаумот

5.

6.

.NET — это фреймворк от Microsoft, который позволяет
использовать одни и те же пространства имён,
библиотеки и API для разных языков. Чаще всего это
четыре языка из семейства .NET:
– C#;
– Visual Basic;
– Visual C++;
– F#.

7.

Как это работает

8.

CLI (англ. Common Language Infrastructure — общеязыковая инфраструктура).
Она определяет, как работает .NET (а также другие похожие фреймворки
вроде Mono и DotGNU).
В CLI у каждого языка есть свой компилятор. Но программы компилируются
не в нативный код (исполняемый), а в промежуточный байт-код CIL (англ.
Common Intermediate Language — общий промежуточный язык).
Например, если написать программу, которая выводит надпись «Hello,
World!», на разных языках, то во всех она скомпилируется в единый
промежуточный байт-код

9.

JIT-компиляция
Код на C# компилируется в приложения или сборки с
расширениями exe или dll на языке CIL. Далее при запуске на
выполнение подобного приложения происходит JIT-компиляция
(Just-In-Time) в машинный код, который затем выполняется. При
этом, поскольку наше приложение может быть большим и
содержать кучу инструкций, в текущий момент времени будет
компилироваться лишь та часть приложения, к которой
непосредственно идет обращение. Если мы обратимся к другой
части кода, то она будет скомпилирована из CIL в машинный код.
При том уже скомпилированная часть приложения сохраняется
до завершения работы программы. В итоге это повышает
производительность.

10.

Типы данных
English     Русский Rules