
- •Языки программирования
- •Изучение ЯП
- •Модели программирования –
- •Классификация типов данных
- •Классификация типов данных
- •Классификация типов данных
- •Управление памятью
- •Платформа .NET включает в себя собственную среду исполнения CLR (англ. Common Language Runtime
- •CLR обеспечивает соблюдение стандартов, для всех ЯП платформы .NET
- •Первая программа
- •Комментарии
- •Так как имеется строчка
- •Эта функция объявлена с атрибутом

Платформа .NET включает в себя собственную среду исполнения CLR (англ. Common Language Runtime –
общеязыковая среда исполнения).
Наиболее полно в эту среду интегрирован C#.
СLR основана не на ассемблере, а на промежуточном коде (IL Code).
Для CLR языков программирования может быть несколько (С++, C#, VB, …).
13

CLR обеспечивает соблюдение стандартов, для всех ЯП платформы .NET
Поэтому решена проблема интеграции приложений, написанных на разных ЯП.
CLR определяет стандартные для все языков
.NET типы данных.
Это гарантирует, что, например, целый тип в C# будет в точности соответствовать одноименному типу в VB и т.п.
NET Runtime обеспечивает
сборку мусора,
контроль типов,
исключает выход за пределы массива и др.
14

Обзор С#
Программа, написанная на двух различных ЯП: namespace HW;
using System;
class HW
{
static void Main(String[ ] args)
{
Console.WriteLine("Hello World!");
}
}
package HW;
import java.lang.*
class HW
{
public static void main(String[ ] args)
{
System.out.println("Hello World!")
}
}
15

Первый пример написан на C#, второй - на ЯП Java.
Разработкой C# (2000 г) руководил А. Хейлсберг (Anders Hejlsberg, создатель многих версий Turbo Pascal и Delphi.
C# создавался в качестве альтернативы ЯП Java (Java-киллер).
16

|
ЯП C# - лицензионно чистая альтернатива ЯП Java. |
|
|
При его создании был учтен опыт разработки |
|
|
|
С (высокая производительность), |
|
|
С++ (объектно-ориентированная структура), |
|
|
Java (безопасность), |
|
|
Visual Basic (быстрота разработки). |
|
Основа - C++ |
|
|
с дополнениями, характерными для ЯП Java. |
|
|
Например, система автоматического управления |
|
|
памятью, обеспечивающая |
|
|
|
системное выделение памяти для различных |
|
|
классов и |
|
|
ее освобождение после прекращения |
|
|
использования классов. |
|
Из Паскаля взяты |
|
|
|
четкая типизация переменных: при описании |
|
|
переменной необходимо указать ее тип, |
|
|
автоматическая инициализация переменных. |
17

Для написания C#-программ требуется,
как минимум,
|
любой текстовый редактор и |
|
.NET Framework (включает в себя |
|
общеязыковую среду выполнения, в |
|
которой выполняется программа). |
|
Если на компьютере отсутствует общеязыковая |
|
исполняющая среда CLR, то .NET-программы |
|
выполняться не будут. |
|
.NET Framework содержит |
|
библиотеку классов, на базе которых |
|
строится любая .NET-программа. |
Можно писать C#-программы в среде разработки Visual Studio .NET, которая включает в себя .NET Framework.
18

Результатом компиляции C#-кода является так называемая .NET-сборка (или просто сборка).
Сборка — один или несколько файлов, которые объединены логической связью.
В большинстве случаев C#-программа — сборка, состоящая из
одного файла как обычный исполняемый файл.
.NET-сборку можно получить при компиляции другим .NET-компилятором, например, с VisualBasic.NET или C++ (для управляемых приложений).
19

Первая программа
Классический пример консольной программы, выводящий строку “Hello, World!”.
Для того, чтобы программа обеспечивала требуемый результат, можно просто воспользоваться шаблоном Console Application (для C#):
20

21

Комментарии
Среда выполнения имеет единое пространство имен (namespace) для всего кода программы.
Объявление using System позволяет ссылаться на классы, которые находятся в пространстве имен System, не добавляя System. перед именем типа.
При использовании шаблона оно добавляется автоматически в любой проект на C#.
22