Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

C# (ИТИП) / Лекции / Лекция 1(Состав языка и среды. Концепция типа данных

.).doc
Скачиваний:
100
Добавлен:
25.02.2015
Размер:
284.67 Кб
Скачать

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Санкт-Петербургский Национальный исследовательский университет информационных технологий, механики и оптики»

Кафедра информационных систем

УТВЕРЖДАЮ

Заведующая кафедрой ИС

______________В.Г.Парфенов

“____“ ___________20___ г.

КОНСПЕКТ ЛЕКЦИЙ

по дисциплине

ОПД.Ф.03 Объектно-ориентированный анализ и программирование

(наименование дисциплины)

            1. Модуль №: _5_ Основы программирования. Массивы, строки и файлы________

Тема лекционных занятий: Состав языка и среды. Концепция типа данных.____

Литература:

Основная:

1.

Троелсен Э. С# и платформа .NET. Библиотека программиста.-СПб.: Питер, 2008. - 796 с.

(наименование издания, страницы)

2.

Фролов А.В., Фролов Г.В. Язык С#. Самоучитель. - М.: Диалог — МИФИ, 2003. - 560 с.

(наименование издания, страницы)

3.

(наименование издания, страницы)

Дополнительная:

1.

Тай Т., Лэм Х.К. Платформа .NET. Основы. - Спб.:Символ-Плюс,2003. -336 с.

(наименование издания, страницы)

2.

Биллинг В.А. Основы программирования на C#. - М.: Изд-во «Интернет университет информационных технологий — ИНТУИТ.ру», 2006. -488 с.

(наименование издания, страницы)

Электронные информационные источники

1.

http://de.ifmo.ru — конспекты лекций, электронные тесты

2.

http://cis.ifmo.ru-презентации лекций вспомогательные материалы

Краткое содержание лекций по теме:

          1. 1. Особенности .NET

Общеязыковая система типов

Проверка типов параметров

Отсутствие возможности прямого управления памятью

Сборка мусора

Компонентная технология

          1. 2. Преимущества

Отсутствие традиционных проблем с утечкой памяти

Продвинутая система безопасности

Многообразие языков программирования

Богатая библиотека готовых компонентов

Можно разработать любое бизнес-приложение

Высокая продуктивность программистов

Решение проблемы DLL Hell

Поддержка различных платформ

Compact Framework, Micro Framework

          1. 3. Недостатки

Для работы приложений необходимо устанавливать .NET Framework

Скорость выполнения программ медленней по сравнению с неуправляемым кодом

Взаимодействие с неуправляемым кодом трудоёмко и работает медленно

          1. 4. Состав .Net 3.5

.NET Framework 2.0

CLR и библиотеки базовых классов

Поддержка универсальных типов и методов

Компиляторы для C#, Visual Basic, C++ и J#

ADO.NET, ASP.NET, Windows Forms, web-службы

Пакеты обновления 1 (SP1) и 2 (SP2) для .NET Framework 2.0

.NET Framework 3.0

Windows Presentation Foundation (WPF)

Windows Communications Foundation (WCF)

Windows Workflow Foundation (WF)

.NET Framework 3.5

LINQ

Новые компиляторы для C#, Visual Basic, C++ и J#

ASP.NET AJAX

.NET Framework 3.5 с пакетом обновления 1 (SP1)

Платформа динамических данных ASP.NET

ADO.NET Entity Framework

Поддержка поставщика данных SQL Server 2008

Поддержка .NET Framework Client Profile

          1. 5. Hello World

using System;

namespace Group2000.Ivanov.HelloWorld

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("Hello world!");

}

}

}

          1. 6. Значимые типы данных

Непосредственно содержат данные

У каждой переменной есть своя копия данных

Операции с одной переменной не могут повлиять на данные другой переменной

(int, float, byte, char, long, uint, double, decimal, enum, struct...)

          1. 7. Ссылочные типы данных

Хранят ссылку на данные (известны как объекты)

Две переменных ссылочных типов данных могут ссылаться на один объект

Операции с одной переменной ссылочного типа данных могут повлиять на другие переменные

(String, class)

          1. 8. Декларирование переменных

int elementCount;

int elementCount, penNumber;

int elementCount,

penNumber;

char firstLetter = ‘A’;

Перед использованием переменная должна быть инициализирована!

int elementCount = 45;

char firstLetter = ‘A’;

          1. 9. Сложное присваивание

elementCount = elementCount + 5;

elementCount += 5;

elementCount -= 8;

          1. 10. Особенности операции присваивания

Пример 1

int itemCount = 0;

Console.WriteLine(itemCount = 2); // Prints 2

Console.WriteLine(itemCount = itemCount + 40); // Prints 42

Пример 2

int itemCount = 0;

Console.WriteLine(itemCount += 2); // Prints 2

Console.WriteLine(itemCount -= 2); // Prints 0

Пример 3

int itemCount = 42;

int prefixValue = ++itemCount; // prefixValue == 43

int postfixValue = itemCount++; // postfixValue = 43

Разработал:

_______________________

______________________

«____» _____________ 20__ г.