Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 12 лет назад пользователемinfosystemology.ru
1 1 Умение мыслить объектно (проектирование архитектуры) Культура кодирования Знание языка и технологий Знание языка и технологий Понимание процесса Задача курса Junior C#-developer
2 2 Лекции: 7 Лабораторные: 4 Контрольные: 2 Структура курса Завершение курса: экзамен Опционально: дипломная работа
3 3 Рабочие материалы 1. C# 3.0: руководство для начинающих, Герберт Шилдт. 2. C# и платформа.NET, Эндрю Троелсен, 3. CLR via C#, Jeffrey Richter, 4. C# сборник рецептов, Агуров П.В. Литература Руководство по программированию на C#
4 4 50-е годы: Фортран, Лисп, Алгол – появление языков высокого уровня 60-е годы: Cobol, Algol, Basic 70-е годы: С, Pascal - структурное программирование 80-е годы: С++ (ООП) 90-е годы: Java, Python, Delphi, - web и визуальное программирование 00-е годы:.net
5 Платформа.net 5 Возможности: 1.Обширная библиотека классов и компонентов. 2.Безопасность исполнения («управляемый код»). 3.Совместимость сборок, написанных на разных языках. 4.Переносимость приложений (условная). - программная платформа от Microsoft, предназначенная для разработки desktop и web-приложений.NET Framework.NET Compact Framework.NET Micro Framework Redistributable / SDK Web: ASP, Silverlight Game: XNA Game Studio + удобство и высокая скорость разработки - невысокая производительность, декомпиляция, привязка к ОС Windows
6 6 Код C, С++, Delphi,.. Библиотека функций Компилятор Машинный код (exe, dll) Compile Run CPU
7 7 Код (C#, VB.net,....) Код (C#, VB.net,....) Сборка (exe, dll) - байткод CIL Сборка (exe, dll) - байткод CIL Библиотека классов.net (FCL) Компилятор CLR JIT Машинный код Compile Run CPU
8 8
9 9 c:\Windows\Microsoft.NET\Framework\
10 10 Desktop
11 11 Mobile
12 12 Trends
13 Язык C# 13 Парадигмы:ООП, обобщенное, процедурное программирование Типизация:строгая, статическая Испытал влияние:С, C++, Java, Delphi, Smalltalk, Модула Релизы:1.0 – 2002, 4.0 – 2010, 5.0 – 2012 (beta) Прочее:Управляемый код Наличие сборщика мусора Microsoft Visual Studio (C#, Visual Basic.NET, Managed C++, F#) SharpDevelop MonoDevelop Язык общего назначения
14 14
15 15
16 IDE 16 Pro/Ultimate
17 17 Настройка шрифта: Tools\Options\Environment\Fonts and colors
18 18
19 Введение в ООП первая программа недостатки процедурного подхода ключевые понятие ООП структура программы на языке C# инкапсуляция и спецификаторы доступа создание объекта и вызов методов инициализация полей
20 class Program { static void Main() { System.Console.WriteLine("Hello, world!"); } Первая программа
21 21 Процедурный vs. Объектный // Стороны прямоугольника int a = 5; int b = 7; // Площадь int s = a * b; // Периметр int p = (a + b) * 2; Шаг 1. Простая последовательность инструкций Пример процедурного подхода
22 22 int Square(int a, int b) { return a * b; } int Perimeter(int a, int b) { return (a + b) * 2; } // Стороны прямоугольника int a = 3; int b = 5; // Площадь int s = Square(a, b); // Периметр int p = Perimeter(a, b); Шаг 2. Выделение функций Принципы СП: 1. Использование 3-х базовых конструкций (без goto). 2. Использование функций (подпрограмм).
23 23 int Square(int a, int b) { return a * b; } int Perimeter(int a, int b) { return (a + b) * 2; } // Стороны прямоугольника int a = 3; int b = 5; // Площадь int s = Square(a, b); b = 100; // Логическая ошибка // Периметр int p = Perimeter(a, b); Некоторые недостатки процедурного подхода: 1. Логически связанные данные разобщены (a, b, s, p). 2. Данные не защищены от прямой модификации. 3. Многократное дублирование кода (нет повторного использования).
24 24 ООП Основной единицей ООП является объект. Объекты – это программные аналоги понятий и предметов реального мира. Работа программы – это взаимодействие множества объектов, каждый из которых обладает единственной ответственностью. В языке C# парадигма ООП воплощается через классы. Класс = Данные + Методы Объект – это экземпляр класса
25 25 Ключевые понятия ООП: 1.Абстрагирование 2.Инкапсуляция 3.Наследование 4.Полиморфизм
26 26 public class Rectangle { private int width; private int height; public void Set(int w, int h) { width = w; height = h; } public int Square() { return width * height; } public int Perimeter() { return (width + height) * 2; } ОО-решение
27 27 class Program { static void Main() { // Создание объекта Rectangle rect = new Rectangle(); rect.Set(3, 5); int square = rect.Square(); int perimeter = rect.Perimeter(); }
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.