Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Немного истории

Содержание

Немного историиSimula (1967) Первый объектно-ориентированный язык.C++ (1983) Первый объектно-ориентированный язык семейства С.Java (1995) Объектно-ориентированный язык от Sun Microsystems.C# (2001) Объектно-ориентированный язык от Microsoft.
Немного историиSimula (1967)	Первый объектно-ориентированный язык.C++ (1983)	Первый объектно-ориентированный язык семейства С.Java (1995)	Объектно-ориентированный язык Немного юмора DOU.UA: На каком языке вы пишете для работы сейчас (2013) DOU.UA: Индекс удовлетворенности языком DOU.UA: финальная таблица результатов Cool -‘C like Object Oriented Language’, C#, C Sharp, “Си шарп” Андерс Хейлсбергв 1980 – написал первый компилятор языка Паскальдо 1996 – работа Особенности языка C#Простота: простой C-синтаксис и конструкции, короткая кривая обучаемостиПо умолчанию, С# Пример: Эволюция C# С#1Ссылочные типыТипы значенийПримитивные типыСтруктурыПространство имёнПеречисленияДелегатыПеречислителиАтрибутыОбработка исключенийПереопределение операторовМассивыКоллекции... С#2 Главные особенностиОбобщения (generics)Разделяемые классыАнонимные методыИтераторыТипы, допускающие значения NULLПоддержка 64-разрядных вычислений C#2: ОбобщенияРаньше: C#2: ОбобщенияСейчас: C#2: ОбобщенияПреимущества использования обобщенийПроизводительностьБезопасностьПовторное использование двоичного кодаИзбавление от “разбухания” кода C#2: Разделяемый классыработа над большими проектамиработа с использованием автоматически создаваемого источника кода C#2:Анонимные методыОдин из способов создания безымянного блока кода, связанного с конкретным экземпляром делегата. C#2: ИтераторыРаньше: C#2: ИтераторыСейчас: C#2:Типы, допускающие значения NULLИспользование магических значений(DateTime.MinValue, double.NaN)Использование ссылочного класса-оберткиДополнительный флагРаньше:Сейчас: C#3 – Главные особенностиНеявно типизируемые локальные переменныеАнонимные типыИнициализаторы объектов и коллекцийАвтоматическая реализация свойствМетоды расширенияЛямбда-выраженияДеревья выраженийЗапросы LINQ C#3: Неявно типизируемые локальные переменныеРаньше:Сейчас:Абсолютная необходимость для анонимных типов C#3: Анонимные типы C#3: Инициализаторы объектовРаньше:Сейчас: C#3: Инициализаторы коллекцийРаньше:Сейчас: C#3: Автоматическая реализация свойствРаньше:Сейчас: C#3: Методы расширенияОпределениеИспользование C#3: Лямбда-выраженияИспользование анонимного метода для создания экземпляра делегатаЭтот делегат можно использовать для C#3: Деревья выраженийМы можем скомпилировать выражение в делегат и выполнить:А также представлять C#3:Запросы LINQ БольшойнабороператоровПример (используя выражения):Тот же пример (используя цепочку методов): C#3:Архитектура LINQ C#4 - Главные особенностиИменованные и необязательные аргументыУлучшенное взаимодействие с COMДинамическое позднее связываниеКонтракты C#4: Необязательные параметрыРаньше:Сейчас: C#4: Именованные параметры Раньше:Сейчас: C#4: Улучшенное взаимодействие с COMРаньше: C#4: Улучшенное взаимодействие с COMСейчас: C#4: Динамическое позднее связываниеКлючевое слово dynamic позволяет разработчику объявить объект, привязка к C#5 – Главные особенностиИнформационные атрибуты вызывающего объектаАсинхронное программирование с помощью async/await C#5: Информационные атрибуты вызывающего объектаРаньше:С помощью информационных атрибутов вызывающего объекта можно получить C#5: Информационные атрибуты вызывающего объектаСейчас: C#5: Асинхронное программирование с помощью async/await Подведем итог по C#Разработан в 1998—2001 годахПеренял многое от своих предшественников —C++, СПАСИБО!
Слайды презентации

Слайд 2 Немного истории
Simula (1967)

Первый объектно-ориентированный язык.

C++ (1983)

Первый объектно-ориентированный язык

Немного историиSimula (1967)	Первый объектно-ориентированный язык.C++ (1983)	Первый объектно-ориентированный язык семейства С.Java (1995)	Объектно-ориентированный

семейства С.

Java (1995)

Объектно-ориентированный язык от Sun Microsystems.

C# (2001)

Объектно-ориентированный

язык от Microsoft.

Слайд 3 Немного юмора

Немного юмора

Слайд 4 DOU.UA: На каком языке вы пишете для работы

DOU.UA: На каком языке вы пишете для работы сейчас (2013)

сейчас (2013)


Слайд 5 DOU.UA: Индекс удовлетворенности языком

DOU.UA: Индекс удовлетворенности языком

Слайд 6 DOU.UA: финальная таблица результатов

DOU.UA: финальная таблица результатов

Слайд 7 Cool -‘C like Object Oriented Language’, C#, C

Cool -‘C like Object Oriented Language’, C#, C Sharp, “Си шарп”

Sharp, “Си шарп”


Слайд 8 Андерс Хейлсберг
в 1980 – написал первый компилятор языка

Андерс Хейлсбергв 1980 – написал первый компилятор языка Паскальдо 1996 –

Паскаль
до 1996 – работа в Borland. Создал новое поколение

компиляторов Паскаля — язык Delphi.
с 1996 – работа в Microsoft, проекты J++ и Microsoft Foundation Classes
с 2000- возглавил группу по созданию и проектированию языка C#.
2012 – представил новый проект TypeScript

ANDY


Слайд 9 Особенности языка C#
Простота: простой C-синтаксис и конструкции, короткая

Особенности языка C#Простота: простой C-синтаксис и конструкции, короткая кривая обучаемостиПо умолчанию,

кривая обучаемости
По умолчанию, С# запрещает прямое манипулирование памятью, предоставляя

взамен богатую систему типов и сборку мусора
C# программа это набор типов, все данные и код храняться внутри типов, нет глобальных переменных и функций
В C#, как и в Java, нет множественного наследования


Слайд 10 Пример: "Hello world "

Пример:

Слайд 11 Эволюция C#

Эволюция C#

Слайд 12 С#1
Ссылочные типы
Типы значений
Примитивные типы
Структуры
Пространство имён
Перечисления
Делегаты
Перечислители
Атрибуты
Обработка исключений
Переопределение операторов
Массивы
Коллекции
...

С#1Ссылочные типыТипы значенийПримитивные типыСтруктурыПространство имёнПеречисленияДелегатыПеречислителиАтрибутыОбработка исключенийПереопределение операторовМассивыКоллекции...

Слайд 13 С#2 Главные особенности
Обобщения (generics)
Разделяемые классы
Анонимные методы
Итераторы
Типы, допускающие значения

С#2 Главные особенностиОбобщения (generics)Разделяемые классыАнонимные методыИтераторыТипы, допускающие значения NULLПоддержка 64-разрядных вычислений

NULL
Поддержка 64-разрядных вычислений


Слайд 14 C#2: Обобщения
Раньше:

C#2: ОбобщенияРаньше:

Слайд 15 C#2: Обобщения
Сейчас:

C#2: ОбобщенияСейчас:

Слайд 16 C#2: Обобщения
Преимущества использования обобщений
Производительность
Безопасность
Повторное использование двоичного кода
Избавление от

C#2: ОбобщенияПреимущества использования обобщенийПроизводительностьБезопасностьПовторное использование двоичного кодаИзбавление от “разбухания” кода

“разбухания” кода


Слайд 17 C#2: Разделяемый классы
работа над большими проектами
работа с использованием

C#2: Разделяемый классыработа над большими проектамиработа с использованием автоматически создаваемого источника кода

автоматически создаваемого источника кода


Слайд 18 C#2:Анонимные методы
Один из способов создания безымянного блока кода,

C#2:Анонимные методыОдин из способов создания безымянного блока кода, связанного с конкретным экземпляром делегата.

связанного с конкретным экземпляром делегата.


Слайд 19 C#2: Итераторы
Раньше:

C#2: ИтераторыРаньше:

Слайд 20 C#2: Итераторы
Сейчас:

C#2: ИтераторыСейчас:

Слайд 21 C#2:Типы, допускающие значения NULL

Использование магических значений
(DateTime.MinValue, double.NaN)
Использование ссылочного

C#2:Типы, допускающие значения NULLИспользование магических значений(DateTime.MinValue, double.NaN)Использование ссылочного класса-оберткиДополнительный флагРаньше:Сейчас:

класса-обертки
Дополнительный флаг

Раньше:
Сейчас:


Слайд 22 C#3 – Главные особенности
Неявно типизируемые локальные переменные
Анонимные типы
Инициализаторы

C#3 – Главные особенностиНеявно типизируемые локальные переменныеАнонимные типыИнициализаторы объектов и коллекцийАвтоматическая реализация свойствМетоды расширенияЛямбда-выраженияДеревья выраженийЗапросы LINQ

объектов и коллекций
Автоматическая реализация свойств
Методы расширения
Лямбда-выражения
Деревья выражений
Запросы LINQ


Слайд 23 C#3: Неявно типизируемые локальные переменные
Раньше:
Сейчас:
Абсолютная необходимость для анонимных

C#3: Неявно типизируемые локальные переменныеРаньше:Сейчас:Абсолютная необходимость для анонимных типов

типов


Слайд 24 C#3: Анонимные типы

C#3: Анонимные типы

Слайд 25 C#3: Инициализаторы объектов
Раньше:
Сейчас:

C#3: Инициализаторы объектовРаньше:Сейчас:

Слайд 26 C#3: Инициализаторы коллекций
Раньше:
Сейчас:

C#3: Инициализаторы коллекцийРаньше:Сейчас:

Слайд 27 C#3: Автоматическая реализация свойств
Раньше:
Сейчас:

C#3: Автоматическая реализация свойствРаньше:Сейчас:

Слайд 28 C#3: Методы расширения
Определение
Использование

C#3: Методы расширенияОпределениеИспользование

Слайд 29 C#3: Лямбда-выражения
Использование анонимного метода для создания экземпляра делегата
Этот

C#3: Лямбда-выраженияИспользование анонимного метода для создания экземпляра делегатаЭтот делегат можно использовать

делегат можно использовать для представления метода, который можно передавать

в качестве параметра без явного объявления пользовательского делегата.

Идентичен:

Раньше:

Сейчас:


Слайд 30 C#3: Деревья выражений
Мы можем скомпилировать выражение в делегат

C#3: Деревья выраженийМы можем скомпилировать выражение в делегат и выполнить:А также

и выполнить:
А также представлять лямбда-выражения в дерево:
Равноценно
Деревья выражений представляют

код в виде древовидной структуры данных, каждый узел в которой является выражением, например вызовом метода или двоичной операцией, такой как x < y.

Описание выражения: 2 +3 в виде дерева:


Слайд 31 C#3:Запросы LINQ
Большой
набор
операторов
Пример (используя выражения):
Тот же пример (используя цепочку

C#3:Запросы LINQ БольшойнабороператоровПример (используя выражения):Тот же пример (используя цепочку методов):

методов):


Слайд 32 C#3:Архитектура LINQ

C#3:Архитектура LINQ

Слайд 33 C#4 - Главные особенности
Именованные и необязательные аргументы
Улучшенное взаимодействие

C#4 - Главные особенностиИменованные и необязательные аргументыУлучшенное взаимодействие с COMДинамическое позднее

с COM
Динамическое позднее связывание
Контракты в коде
Запросы Parallel LINQ
Обобщенная ковариантность

и контрвариантность

Слайд 34 C#4: Необязательные параметры
Раньше:
Сейчас:

C#4: Необязательные параметрыРаньше:Сейчас:

Слайд 35 C#4: Именованные параметры
Раньше:
Сейчас:

C#4: Именованные параметры Раньше:Сейчас:

Слайд 36 C#4: Улучшенное взаимодействие с COM
Раньше:

C#4: Улучшенное взаимодействие с COMРаньше:

Слайд 37 C#4: Улучшенное взаимодействие с COM
Сейчас:

C#4: Улучшенное взаимодействие с COMСейчас:

Слайд 38 C#4: Динамическое позднее связывание
Ключевое слово dynamic позволяет разработчику

C#4: Динамическое позднее связываниеКлючевое слово dynamic позволяет разработчику объявить объект, привязка

объявить объект, привязка к методам которого, будет осуществлятся на

этапе выполнения, а не компиляции.

В отличие от других встроенных типов языка C# (например, string, int, object и т.п.), dynamic не имеет прямого сопоставления ни с одним из базовых типов BCL. Вместо этого, dynamic – специальный псевдоним для System.Object с дополнительными метаданными, необходимыми для правильного позднего связывания.

Добавляет возможность написания чистого кода и взаимодействия с динамическими языками вроде IronPython и IronRuby.


Слайд 39 C#5 – Главные особенности
Информационные атрибуты вызывающего объекта
Асинхронное программирование

C#5 – Главные особенностиИнформационные атрибуты вызывающего объектаАсинхронное программирование с помощью async/await

с помощью async/await


Слайд 40 C#5: Информационные атрибуты вызывающего объекта
Раньше:
С помощью информационных атрибутов

C#5: Информационные атрибуты вызывающего объектаРаньше:С помощью информационных атрибутов вызывающего объекта можно

вызывающего объекта можно получить сведения об вызывающем объекте для

метода. Можно получить путь к файлу исходного кода, номер строки в исходном коде и имя вызывающего объекта. Эти сведения полезны для трассировки, отладки и создания средств диагностики.

Слайд 41 C#5: Информационные атрибуты вызывающего объекта
Сейчас:

C#5: Информационные атрибуты вызывающего объектаСейчас:

Слайд 42 C#5: Асинхронное программирование с помощью async/await

C#5: Асинхронное программирование с помощью async/await

Слайд 43 Подведем итог по C#
Разработан в 1998—2001 годах
Перенял многое

Подведем итог по C#Разработан в 1998—2001 годахПеренял многое от своих предшественников

от своих предшественников —C++, Java, Delphi, Модула и Smalltalk


Стандартизирован в ECMA (ECMA-334) и ISO (ISO/IEC 23270)
Простой C-подобный синтаксис
Объектно-ориентированный
Имеет статическую типизацию (а с версии 4 - динамическую).
C# 1 – Управляемый код
C# 2 – Обобщения (generics)
C# 3 – LINQ
C# 4 – dynamic
C# 5 – асинхронные методы
Высокий индекс привязанности! (dou.ua)
Отличный инструмент для решения большого круга задач




  • Имя файла: nemnogo-istorii.pptx
  • Количество просмотров: 102
  • Количество скачиваний: 0