Похожие презентации:
unit1-3
1.
Базовые сведения по языку программирования C#C# (произносится си шарп) — объектноориентированный язык программирования.
Разработан в 1998—2001 годах группой
инженеров компании Microsoft под руководством
Андерса Хейлсберга и Скотта Вильтаумота как язык
разработки приложений для платформы Microsoft
.NET Framework и .NET Core. Впоследствии был
стандартизирован как ECMA-334 и ISO/IEC 23270.
2.
Базовые сведения по языку программирования C#C# относится к семье языков с C-подобным
синтаксисом, из них его синтаксис наиболее
близок к C++ и Java. Язык имеет статическую
типизацию, поддерживает полиморфизм,
перегрузку операторов (в том числе операторов
явного и неявного приведения типа), делегаты,
атрибуты, события, переменные, свойства,
обобщённые типы и методы, итераторы,
анонимные функции с поддержкой замыканий,
LINQ, исключения, комментарии в формате XML.
3.
Базовые сведения по языку программирования C#Переняв многое от своих предшественников —
языков C++, Delphi, Модула, Smalltalk и, в
особенности, Java — С#, опираясь на практику их
использования, исключает некоторые модели,
зарекомендовавшие себя как проблематичные
при разработке программных систем, например,
C# в отличие от C++ не поддерживает
множественное наследование классов (между тем
допускается множественная реализация
интерфейсов).
4.
Базовые сведения по языку программирования C#Для понимания синтаксиса C# создадим простой пример программы Program.cs вывод сообщение "Hello World" в консоли на C#:
using System;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
Результат вывода в консоли:
Hello World!
5.
Базовые сведения по языку программирования C#using System - директива, означающая использование классов из
пространства System.
namespace - Пространство имен в C# представляет собой некий
контейнер для логического объединения именованных сущностей,
таких как классы, интерфейсы, перечисления и тому подобное.
class - это контейнер, который содержит данные и методы для
программы.
Main - стартовая точка программы.
Console – это класс пространства имен System, в нем содержится метод
WriteLine(), который позволяет выводить текстовую информацию в
консоль.
6.
Базовые сведения по языку программирования C#Комментарии – невыполняемый код, пишется
для удобства понимания программы.
Однострочные комментарии - //.
// Это однострочный комментарий
Многострочные комментарии /* */.
/* Это многострочный
комментарий */
7.
Базовые сведения по языку программирования C#Переменные – это контейнер для хранения
значений.
В языке C# существует множество типов
переменных, например:
char – одиночные символы, например, 'a' или
'Б'.
string - текст, например, "Hello World".
bool - это псевдоним для типа структуры
System.Boolean .NET, представляющий
логическое значение: true или false.
8.
Базовые сведения по языку программирования C#Ключевое слово или
тип C#
byte
Диапазон
Размер
Тип .NET
От 0 до 255
System.Byte
short
От -32 768 до 32 767
ushort
От 0 до 65 535
int
От -2 147 483 648 до 2 147
483 647
От 0 до 4 294 967 295
8-разрядное целое
число без знака
16-разрядное целое
число со знаком
16-разрядное целое
число без знака
32-разрядное целое
число со знаком
32-разрядное целое
число без знака
64-разрядное целое
число со знаком
System.Int64
64-разрядное целое
число без знака
System.UInt64
uint
long
ulong
От -9 223 372 036 854 775
808 до 9 223 372 036 854
775 807
От 0 до 18 446 744 073 709
551 615
System.Int16
System.UInt16
System.Int32
System.UInt32
9.
Базовые сведения по языку программирования C#Ключевое слово Приблизительный
или тип C#
диапазон значений
Точность
Размер
Тип .NET
float
От ±1,5 x 10−45 до
±3,4 x 1038
6–9 цифр
4 байта
System.Single
double
от ±5,0 × 10−324 до
±1,7 × 10308
15–17 цифр
8 байт
System.Double
decimal
от ±1,0 x 10-28 до
±7,9228 x 1028
28-29 знаков
16 байт
System.Decimal
10.
Базовые сведения по языку программирования C#Синтаксис:
type имяПеременной = значение;
string name = "Василий";
int vNum = 17;
char vLetter = 'Ю';
bool vBool = true;
double d = 12.3;
System.Double d1 = 12.3;
int x = 2;
int y = 3;
Console.WriteLine(x + y); // Вывод суммы x + y = 5
11.
Базовые сведения по языку программирования C#Константы:
Если необходимо, чтобы значение переменной
нельзя было переопределить, то можно
воспользоваться ключевым словом const,
например:
const int vNum = 37;
vNum = 100; // ошибка
12.
Базовые сведения по языку программирования C#В структуре данных массива можно хранить
несколько переменных одного типа.
Объявление одномерного массива:
int[] arr1 = new int[5];
int[] arr2 = new int[] { 1, 2, 3, 4, 5 };
int[] arr3 = { 1, 2, 3, 4, 5, 6 };
string[] strs;
strs = new string[] {"Текст1", " Текст Средний", "
Еще один Текст"};
13.
Базовые сведения по языку программирования C#string[] strs = new string[4] {"Текст1", " Текст2", "
Текст3", " Текст4" };
Объявление многомерного массива:
int[,] multiDimArr1 = new int[2, 3];
int[,] multiDimArr2 = { { 1, 2, 3 }, { 4, 5, 6 } };
//Присвоение значение конкретному элементу
массива multiDimArr2:
multiDimArr2[1, 1] = 27;
//Узнать количество элементов в массиве arr3:
int lengthOfArray = arr3.Length;
14.
Базовые сведения по языку программирования C#Перечисления (enum) - это тип значения,
определенный набором именованных констант
целочисленного типа. По умолчанию значения
констант перечисления имеют тип int,
начинающиеся с 0.
enum Week
{
Monday, Tuesday, Wednesday,
Thursday, Friday, Saturday, Sunday
}
15.
Базовые сведения по языку программирования C#Можно явно указать соответствующие
значения констант и любой другой
целочисленный тип в качестве базового типа
перечисления:
enum ErrorCode : ushort
{
Ok = 0, Unknown = 1,
OutOfMemory = 100, IndexOutOfRange = 200
}
16.
Базовые сведения по языку программирования C#Для объявления структуры используется ключевое слово struct.
Синтаксис структур схож с объявлением классов (классы будут
рассмотрены ниже). Различие между структурами и классами это
то, что класс является ссылочным типом, а структура является типом
значения. Согласно документации Microsoft, различие между
ссылочными типами и типами значений состоит в том, что
«ссылочные типы выделяются в куче и уничтожаются сборщиком
мусора, тогда как типы значений выделяются либо в стеке, либо в
виде встроенных строк, содержащих типы, и освобождаются при
освобождении стека или при освобождении содержащего их типа.
Таким образом, выделение и освобождение типов значений
является дешевле, чем выделение и освобождение ссылочных
типов.»
17.
Базовые сведения по языку программирования C#public struct Coords
{
public Coords(double x, double y)
{
X = x;
Y = y;
}
public double X { get; }
public double Y { get; }
public override string ToString() => $"({X}, {Y})";}}
18.
Базовые сведения по языку программирования C#Переменная типа структуры не может быть null, поэтому
надо создать экземпляр соответствующего типа,
посредством вызова конструктора структура с помощью
оператора new. Структура имеет как минимум один
конструктор. Один из них - это неявный конструктор без
параметров, который создает значение по умолчанию.
Если все поля экземпляра структуры доступны, то можно
создать экземпляр структуры без применения оператора
new. При этом необходимо проинициализировать все поля
экземпляра структуры перед его первым использованием.
19.
Базовые сведения по языку программирования C#public static class StructWoNew
{
public struct Coords
{
public double x;
public double y;
}
public static void Main()
{
Coords c;
c.x = 2;
c.y = 5;} }
20.
Базовые сведения по языку программирования C#Коллекции: Пространство имен: System.Collections.Generic.
Список List<T>:
Класс List<T> из пространства имен
System.Collections.Generic, это строго типизированный
список объектов, доступных по индексу.
List<string> week = new List<string>(); //Пустой список
List<string> week = new List<string>()
{ "Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "Вс" };
21.
Базовые сведения по языку программирования C#string day = week[0];
Console.WriteLine(day); // Результат «Пн»
week[0] = "Понедельник";
Console.WriteLine(week[0]); // Результат «Понедельник»
//Вывод длины списка
Console.WriteLine(week.Count); // Результат 7
22.
Базовые сведения по языку программирования C#// Перебор списка
foreach (var day in week)
{
Console.WriteLine(day);
}
Результат: Понедельник
Вт
Ср
Чт
Пт
Сб
Вс
23.
Базовые сведения по языку программирования C#Класс Queue<T> - это коллекция объектов, основанная на
принципе «первым вошел - первым вышел» (FIFO).
Queue<string> numbers = new Queue<string>();
numbers.Enqueue("один");
numbers.Enqueue("два");
numbers.Enqueue("три");
numbers.Enqueue("четыре");
foreach( string number in numbers )
{
Console.WriteLine(number);
}
24.
Базовые сведения по языку программирования C#Класс Dictionary<TKey,TValue> - это коллекция ключей и значений.
Dictionary<string, string> textApp = new Dictionary<string, string>();
textApp.Add("txt", "notepad.exe");
textApp.Add("rtf", "wordpad.exe");
try
{
textApp.Add("txt", "winword.exe");
}
catch (ArgumentException)
{
Console.WriteLine("Элемент с ключом TKey = \"txt\" уже
существует.");
}
25.
Базовые сведения по языку программирования C#Оператор
+
Сложение
Складывает два значения
-
Вычитание
*
Умножение
Вычитает одно значение из
другого
Умножение двух значений
/
Деление
%
Оператор остатка
++
Оператор
Увеличивает значение
инкремента
переменной на 1
Оператор декремента Уменьшает значение
переменной на 1
--
Пример
x+y
x-y
x*y
Делит одно значение на
x/y
другое
вычисляет остаток от деления x % y
левого операнда на правый
x++
x--
26.
Базовые сведения по языку программирования C#Оператор
Пример
==
Оператор равенства
x == y
!=
Оператор неравенства
x != y
>
Оператор "больше"
x>y
<
Оператор "меньше чем"
x<y
>=
Оператор "больше или равно"
x >= y
<=
Оператор "меньше или равно"
x <= y
27.
Базовые сведения по языку программирования C#Оператор
&&
Логическое И
||
!
Пример
принимает значение true, если оба x < 5 && x <
оператора x и y имеют значение true. 10
В противном случае результат будет
false. Если x имеет значение false, y
не вычисляется
Логическое ИЛИ принимает значение true, если хотя x < 5 || x < 4
бы один из операторов x или y имеет
значение true. В противном случае
результат будет false. Если x имеет
значение true, y не вычисляется
Логическое
отрицание
выполняет логическое отрицание
операнда, возвращая true, если
операнд имеет значение false, и
false, если операнд имеет значение
true
!(x < 5 && x <
10)
28.
Базовые сведения по языку программирования C#if (условие)
{
// код, который выполнится, если условие True
}
else
{
// код, который выполнится, если условие False
}
29.
Базовые сведения по языку программирования C#Switch выбирает список операторов, который нужно выполнить, на
основе соответствия выражению.
switch(expression)
{
case x:
// код
break;
case y:
// код
break;
default:
// код
break;
}
30.
Базовые сведения по языку программирования C#Оператор while выполняет оператор или блок операторов,
пока определенное логическое выражение равно
значению True. Синтаксис:
while (условие)
{
// код
}
int i = 0;
while (i < 10)
{
Console.Write(i);
i++; }
31.
Базовые сведения по языку программирования C#Оператор for выполняет оператор или блок операторов,
пока определенное логическое выражение равно
значению true
for (выражение 1; выражение 2; выражение 3)
{
// код
}
Пример:
for (int i = 0; i < 10; i++)
{
Console.Write(i);
}
32.
Базовые сведения по языку программирования C#Оператор foreach выполняет оператор или блок операторов
для каждого элемента в экземпляре типа, который
реализует интерфейс System.Collections.IEnumerable или
System.Collections.Generic.IEnumerable<T>.
foreach (тип элемент in массивЭлементов)
{
// код
}
Пример:
var numbers = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
foreach (int element in numbers)
{ Console.Write(i); }
33.
Базовые сведения по языку программирования C#Оператор break завершает выполнение ближайшего
внешнего break (то есть цикла for, foreach, while или do).
int[] numbers = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
foreach (int element in numbers)
{
if (number == 3)
{
break;
}
Console.Write(i);
}
34.
Базовые сведения по языку программирования C#Оператор continue начинает новую итерацию ближайшего
внешнего continue (то есть цикла for, foreach, while или do)
Пример:
int[] numbers = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
foreach (int element in numbers)
{
if (number == 3)
{
continue;
}
Console.Write(i);
}
35.
Базовые сведения по языку программирования C#Метод — это блок кода, содержащий ряд инструкций для
выполнения. Метод Main является точкой входа для
каждого приложения C#. Метод может содержать
параметры. Пример:
public class ClassExample
{
static void Method1(string s)
{
Console.WriteLine(s +" Метод выполнился!");
}
static void Main(string[] args)
{ Method1("Asdf"); } }
36.
Базовые сведения по языку программирования C#Язык C# является объектно-ориентированным языком. Классы объявляются с
помощью ключевого слова class. Определение классов:
class MyClass
{
// Конструкторы, методы, свойства, поля, события, делегаты
}
class MyClass1: BaseClass
{
// Методы, свойства, поля, события, делегаты
}
class MyClass2: IMyInterface1, IMyInterface2
{
// Методы, свойства, поля, события, делегаты
}
37.
Базовые сведения по языку программирования C#class Person
{ //человек
private int age; //возраст
private string name; //имя
public Person()
{ // Конструктор по умолчанию
name = " Неопределенно ";
}
public Person(string name, int age)
{ // Конструктор с параметрами
this.name = name;
this.age = age;
}
public void PrintPerson()
{ // Метод вывод информации в консоль
Console.WriteLine("Имя: {0}, возраст: {1} лет.", name, age); } }
38.
Базовые сведения по языку программирования C#При выполнении программы может возникнуть ошибка, которую сложно
предусмотреть, например, обрыв соединения при работе с файлами на
удаленном компьютере. Для обработки исключений такого рода предусмотрена
конструкция:
try
{
// выполняемые инструкции
}
catch (тип_исключения)
{
//Обработка исключения
}
finally
{ //завершение выполнения
}
39.
Базовые сведения по языку программирования C#int x = 5, y = 0, result;
try
{
result = x / y;
Console.WriteLine($"Результат: {result}");
}
catch(DivideByZeroException ex)
{ //Ошибка, деление на 0
Console.WriteLine(ex.Message);
}
catch(Exception ex)
{ Console.WriteLine(ex.Message);
}
finally
{ Console.WriteLine("Блок finally");
}