1 / 13

Въведение в .NET

Въведение в .NET. Проблеми при предишните технологии. Разработка на софтуер с C/Win32 Разработка на софтуер с C++/MFC Разработка на софтуер с VB 6 Разработка на софтуер с Java Разработка на софтуер с COM. .NET решението. Радикална промяна в начина на разработка на софтуер

Download Presentation

Въведение в .NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Въведение в .NET

  2. Проблеми при предишните технологии • Разработка на софтуер с C/Win32 • Разработка на софтуер с C++/MFC • Разработка на софтуер с VB 6 • Разработка на софтуер с Java • Разработка на софтуер с COM

  3. .NET решението • Радикална промяна в начина на разработка на софтуер • Предимства – поддръжка на код от предишни технологии, интеграция с множество езици, богата библиотека от готов код (base class library) и др. • Използва виртуална машина, която изпълнява приложения, написани на който и да е .NET ориентиран език(C#, Pascal.NET и др.), върху различни архитектури(x86, x64, Itanium и др.) и платформи(Windows, Linux, Mac OS X и др.).

  4. Процесорни архитектури • Intel x86 и AMD x64 – най-разпространените архитектури за персонални компютри и лаптопи • Intel Itanium(IA-64) – използва се при големи корпоративни сървъри и системи с големи изчислителни възможности. Поддържа паралелизъм на процесорно ниво • ARM – използва се предимно в мобилни устройства, флашки и др. Използва много малко електроенергия и е по-лесен за програмиране.

  5. Структура на .NET • Base class libraries • Common Intermediate Language(CIL) • Common Type System(CTS) • Common Language Specification(CLS) • Common Language Runtime(CLR) • Dynamic Language Runtime(DLR) • .NET Assemblies

  6. Преглед на Base class libraries • Достъпни от свички .NET ориентирани езици • Сътавена е от множество APIта – за достъп до бази от данни, за графични приложения, интернет приложения, работа с файлове, сигурност и др.

  7. .NET Assemblies • Резултатът от компилацията(.dll или .exe) • Съдържа CIL код и мета данни • Видове асемблита: • single-file- CIL и метаданни в един файл; • milti-file- състои се от едни главен модул и множество подмодули: • Главният модул- съдържат манифест (собствено описание с метаданни), може да съдържа и CIL; • Дуги модули- манифест (собствено описание с метаданни), CIL код и метаданни за обектите, които се използват. • Бърникане в асемблита – инструменти ILDASM, .NET Reflector, Telerik JustDecompile

  8. Преглед на CIL • Междинен език за програмиране • .method public hidebysig instance int32 Add(int32 x, • int32 y) cil managed • { • // Code size 9 (0x9) • .maxstack 2 • .locals init (int32 V_0) • IL_0000: nop • IL_0001: ldarg.1 • IL_0002: ldarg.2 • IL_0003: add • IL_0004: stloc.0 • IL_0005: br.s IL_0007 • IL_0007: ldloc.0 • IL_0008: ret • } // end of method Calc::Add

  9. Метаданни • Основен фактор при поддръжката на многоезичност. • Пример: TypDefName: CalculatorExample.Calc (02000003) Flags : [NotPublic] [AutoLayout] [Class] [AnsiClass] [BeforeFieldInit] (00100001) Extends : 01000001 [TypeRef] System.Object Method #1 (06000003)

  10. Преглед на CTS Спецификация, която документира начина, по който трябва да бъдат дефинирани типовете данни за да бъдат приети от CLR.

  11. Предназначение на CLS • Спецификация, дефинираща общи типове и програмни конструкции, които всички .NET ориентирани езици трябва да поддържат.

  12. Предназначение на CLR • Runtime engine (виртуална машина), която изпълнява вашето .NET приложение. • Начин на работа- при стартиране на приложение, заедно с него ОС зарежда виртуалната машина, която има компонент, наречен just-in-time compiler. Този компонент компилира CIL кода до машинни инструкции за текущата архитектура.

  13. Преглед на DLR • Подобна на CLR • Позволява на динамични езици(LISP, Ruby, Python и др.) да работят със CLR и друг .NET код(base class libraries, third party libraries).

More Related