Деякі мови додають до зазначеного мінімального набору ті чи інші додаткові кошти. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Деякі мови додають до зазначеного мінімального набору ті чи інші додаткові кошти.



У їх числі:
• Конструктори, деструктори, фіналізатор.

• Властивості (аксессор).

• індексатора.

• Засоби управління видимістю компонентів класів (інтерфейси або модифікатори доступу, такі як public, private, protected, feature та ін.)

В об'єктно-орієнтованому програмуванні кожен об'єкт представляє собою принципово динамічну сутність, тобто змінюється в залежності від часу (а також від впливу зовнішніх по відношенню до нього факторів). Інакше кажучи, об'єкт володіє тим чи іншим способом поведінки. У відношенні абстракції як об'єкта, поведінка полягає у додатку функції до аргументу.

 

Розглянемо приклад програми мовою програмування C #, що ілюструє концепцію наслідування:

class A { // базовий клас

int a;

public A() {...}

public void F() {...}

}

 

// підклас (успадковує властивості

// класу A, розширює клас A)

class B:A {

int b;

public B() {...}

public void G() {...}

}

 

Приклад являє собою опис базового класу A і похідного від нього класу B.

 

Розглянемо приклад найпростішої поліморфної функції:

void Poly(object o) {

Console.WriteLine(o.ToString());

}

 

Ця функція реалізує відображення на екрані об'єкта (метод Console.WriteLine) з попереднім перетворенням його до строковому типу (метод ToString ()).

 

Всі наведені нижче варіанти виклику функції:

Poly(25);

Poly("John Smith");

Poly(3.141592536m);

Poly(new Point(12,45));

 

успішно пройдуть компіляцію і завершаться видачею коректного результату.

Поняття алгоритму, властивості алгоритму.

Термін “алгоритм” звичайно використовується для позначення деякої послідовності дій, що приводять до досягнення потрібного результату. Слово «алгоритм» є перефразуванням географічної назви місцевості Хорезм через праці відомого узбецького математика Мухамедаібн Муса аль-Хорезмі (близько 825 року). У IX ст. великий узбецький математик Мухаммед, уродженець Хорезма (арабською “аль-Хорезмі”), розробив правила виконання чотирьох арифметичних дій над числами в десятковій системі числення. Множину цих правил назвали алгоритмом (algorithmi – від латинського написання імені аль-Хорезмі), а потім словом “алгоритм” почали позначати сукупність правил певного виду, а не тільки правил виконання арифметичних дій.

Одним із найперших алгоритмів є відомий алгоритм Евкліда для знаходження найбільшого спільного дільника натуральних чисел (ІІІ ст. дон. е.). У термінах Тюрінга (1936 р.) алгоритм – не порожня послідовність команд. Еквівалентні їм інтуїтивні поняття алгоритму введені Марковим (1951 р.) і Колмогоровим (1953 р.). Подальші дослідження, здійснені Шенгаге, Ахо, Ульманом, Хопкрофтомі Криницьким, не вийшли за рамки інтуїтивного підходу.

Алгоритм – це набір інструкцій, що описує, як деяке завдання може бути виконане. Іншими словами, алгоритм – система формальних правил, що визначає зміст і порядок дій над вхідними даними і проміжними результатами, необхідними для отримання кінцевого результату при розв’язуванні задачі.

Говорячи про алгоритми, необхідно розглянути джерела їх виникнення. Перше джерело – це практика, наше повсякденне життя, що надає можливість, а іноді й вимагає отримувати алгоритми шляхом описання дій з

розв’язування різних задач. Такі алгоритми називаються емпіричними. Друге джерело – це наука. З її теоретичних положень і встановлених фактів можуть бути виведені алгоритми. Так, на основі теоретичних законів можна побудувати алгоритми для управління різними технологічними процесами.

Третім джерелом є різні комбінації і модифікації вже наявних алгоритмів. Очевидно, що тут велику роль відіграють кваліфікація та винахідливість працівників, їх знання про математичні закономірності перетворень алгоритмів.

ВЛАСТИВОСТІ АЛГОРИТМУ

При розв’язуванні будь-якої задачі та побудові алгоритму її розв’язку звичайно беруть до уваги наявність деяких вхідних даних і мають уявлення про результат, що необхідно отримати. Будь-який алгоритм повинен мати такі основні властивості:

– детермінованість (визначеність) – через повну однозначність правил, встановлених в алгоритмі, застосування алгоритму до однакових вхідних даних повинно приводити до однакового результату;

– дискретність – процес, що визначається алгоритмом, можна розчленувати (розділити) на окремі елементарні етапи (кроки), кожен з яких називається кроком алгоритмічного процесу чи алгоритму;

– масовість – алгоритм повинен бути придатним для розв’язування всіх задач певного типу. Наприклад, алгоритм для розв’язування системи лінійних рівнянь повинен бути придатним для системи, що складається з довільної кількості рівнянь, причому для нього існує множина даних, що допускаються в якості вхідних, тобто початкова система величин може вибиратись із деякої потенціально нескінченної множини;

– результативність – вказує на наявність таких варіантів вхідних даних, для яких обчислювальний процес, що реалізується за наданим алгоритмом, повинен через скінчену кількість етапів (кроків) зупинитись і дати шуканий результат або сигнал проте, що наданий алгоритм непридатний для розв’язання поставленої задачі.

Суть алгоритмізації обчислювального процесу полягає в наступному:

– виокремлення автономних етапів обчислювального процесу;

– формальний запис змісту кожного з них;

– визначення порядку виконання виділених автономних етапів обчислювального процесу;

– перевірка правильності вибраного алгоритму для реалізації заданого методу обчислень.

Поняття платформи MS.NET. Ключові характеристики MS.NET

Visual Studio.Net - открытая среда разработки

Среда разработки Visual Studio.Net - это уже проверенный временем программный продукт, являющийся седьмой версией Студии. Выделю две важнейшие, на мой взгляд, идеи:

· открытость для языков программирования;

· принципиально новый подход к построению каркаса среды - Framework.Net.

Среда разработки теперь является открытой языковой средой. Это означает, что наряду с языками программирования, включенными в среду фирмой Microsoft - Visual C++.Net (с управляемыми расширениями), Visual C#.Net, J#.Net, Visual Basic.Net, - в среду могут добавляться любые языки программирования, компиляторы которых создаются другими фирмами-производителями. Таких расширений среды Visual Studio сделано уже достаточно много, практически они существуют для всех известных языков - Fortran и Cobol, RPG и Component Pascal, Oberon и SmallTalk. Я у себя на компьютере включил в среду компилятор одного из лучших объектных языков - языка Eiffel.

Главное ограничение, которое можно считать и главным достоинством, состоит в том, что все языки, включаемые в среду разработки Visual Studio.Net, должны использовать единый каркас - Framework.Net.

Framework.Net - единый каркас среды разработки

В каркасе Framework.Net можно выделить два основных компонента:

· статический - FCL (Framework Class Library) - библиотеку классов каркаса;

· динамический - CLR (Common Language Runtime) - общеязыковую исполнительную среду.

Библиотека классов FCL - статический компонент каркаса

Несмотря на то, что каркас был представлен только статическим компонентом, уже тогда была очевидна его роль в построении приложений.

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

Встроенные примитивные типы

Важной частью библиотеки FCL стали классы, задающие примитивные типы - те типы, которые считаются встроенными в язык программирования. Тип, называемый в языке Visual Basic - Integer, а в языке C# - int, проецируется на один и тот же тип каркаса System.Int32.

Структурные типы

Частью библиотеки стали не только простые встроенные типы, но и структурные типы, задающие организацию данных - строки, массивы, перечисления, структуры (записи). Это также способствует унификации и реальному сближению языков программирования.

Архитектура приложений

Существенно расширился набор возможных архитектурных типов построения приложений. Помимо традиционных Windows- и консольных приложений, появилась возможность построения Web-приложений. Большое внимание уделяется возможности создания повторно используемых компонентов - разрешается строить библиотеки классов, библиотеки элементов управления и библиотеки Web-элементов управления.

Модульность

Число классов библиотеки FCL велико (несколько тысяч). Поэтому понадобился способ их структуризации. Логически классы с близкой функциональностью объединяются в группы, называемые пространством имен (Namespace). Для динамического компонента CLR физической единицей, объединяющей классы и другие ресурсы, является сборка (assembly).

Итак, под платформой Microsoft.NET следует понимать интегрированную систему (инфраструктуру) средств разработки, развертывания и выполнения сложных (как правило, распределенных) программных систем. В числе готовых для применения серверы Application Center 2000, Exchange Server 2000, SQL Server и др., − сервисы MS.Net (.Net Building Block Services) представляют собой готовые "строительные блоки" сложных программных систем, которые могут быть использованы через Интернет как сервисные услуги. Набор таких сервисов MS.Net планируется последовательно расширять. Примером имеющегося сервиса платформы MS.Net является Microsoft Passport, позволяющий установить единое имя пользователя и пароль на всех сайтах, поддерживающих аутенфикацию через Passport, − интегрированная среда разработки приложений Visual Studio.NET (VS.Net) – верхний уровень MS.Net - обеспечивает возможность создания сложного ПО на основе платформы и продолжает в этом плане ряд разрабатываемых корпорацией Microsoft средств разработки профессионального программного обеспечения.



Поделиться:


Последнее изменение этой страницы: 2016-09-13; просмотров: 255; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.91.37 (0.012 с.)