Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
О.О.П / ооп / 3_техн / Лекції / Лекции 3.doc
Скачиваний:
18
Добавлен:
30.05.2020
Размер:
114.18 Кб
Скачать

Лекция 1.

Тема: Новые концепции программирования

Цель: ознакомить с новыми концепциями программирования, дать им характеристику и провести сравнительный анализ

План:

  1. Общие сведения о новых концепциях

  2. Характеристика объектно-ориентированного программирования;

  3. Характеристика унифицированного языка моделирования (UML);

  4. Специализированные средства разработки программного обеспечения

Объектно-ориентированное-программирование

Почему объектно-ориентированный подход к программированию стал приори­тетным при разработке большинства программных проектов? ООП предлагает новый мощный способ решения проблемы сложности программ. Вместо того чтобы рассматривать программу как набор последовательно выполняемых инст­рукций, в ООП программа представляется в виде совокупности объектов, обла­дающих сходными свойствами и набором действий, которые можно с ними про­изводить. Возможно, все то, о чем мы до сих пор говорили, будет казаться вам непонятным, пока вы не изучите соответствующий раздел программирования более подробно. Но со временем вы не раз сможете убедиться в том, что приме­нение объектно-ориентированного подхода делает программы понятнее, надеж­нее и проще в использовании.

Унифицированный язык моделирования

Унифицированный язык моделирования (UML) — это графический язык, вклю­чающий в себя множество различных диаграмм, помогающих специалистам по системному анализу создавать алгоритмы, а программистам — разбираться в принципах работы программы. UML является мощным инструментом, позво­ляющим сделать процесс программирования более легким и эффективным. Мы проводим краткое ознакомление с UML в главе 1, а более специфические вопро­сы, связанные с UML, рассматриваем в других главах книги. Каждое новое сред­ство UML вводится на рассмотрение в том месте, где оно становится полезным для иллюстрации разделов ООП. Таким образом, у вас появляется возможность, не прилагая лишних усилий, освоить концепции языка UML, который одновре­менно будет способствовать более эффективному усвоению C++.

Языки и платформы разработки

Из всех объектно-ориентированных языков C++ является наиболее широко употребительным. Язык Java, представляющий собой последнюю разработку в области объектно-ориентированных языков, лишен таких составляющих, как указатели, шаблоны и множественное наследование, что сделало его менее мощ­ным и гибким по сравнению с C++ (синтаксис языка Java очень похож на син­таксис C++, поэтому знания относительно C++ с успехом могут быть примене­ны при программировании на Java).

Некоторые другие объектно-ориентированные языки, например, С#, также успешно развиваются, однако их распространение в значительной степени усту­пает C++.

До последнего времени язык C++ развивался вне рамок стандартизации. Это означало, что каждый производитель компиляторов по-своему реализовывал отдельные нюансы языка. Тем не менее комитет по стандартам языка C++ орга­низации ANSI/ISO разработал документ, ныне известный код названием Стан­дартного C++. (ANSI является сокращением от английского названия Амери­канского Национального Института Стандартов, a ISO — от Международной Организации Стандартов.) Стандартный C++ включает в себя много допол­нительных возможностей, например стандартную библиотеку шаблонов (STL).

Средства разработки программного обеспечения

Разработка прикладного программного обеспечения становится все более и бо­лее важным аспектом программирования. Увы, но зачастую процесс создания объектно-ориентированной программы остается для студентов загадкой. Это послужило для нас поводом включить в книгу специальную главу, касающуюся разработки программного обеспечения, где основное внимание уделено объектно-ориентированному программированию.

Различия между С и C++

В настоящее время существует лишь небольшое число высших и средних специ­альных учебных заведений, в которых перед изучением C++ студентов сначала обучают языку С. Мы также не считаем такой подход правильным, поскольку, по нашему мнению, языки С и C++ полностью независимы. В синтаксическом плане С и C++ очень схожи; более того, С является подмножеством C++. Одна­ко установившееся мнение о схожести самих языков является исторически оши­бочным, поскольку подходы к написанию программ на С и C++ кардинальным образом различаются.

C++ завоевал большую популярность, чем С, потому что стал мощным инструментом для разработки сложного программного обеспечения. Это послужило причиной для того, чтобы не рассматривать изучение С как обязательное перед изучением C++. Те студенты, которые знакомы с языком С, могут опустить часть материала, изложенного в книге, однако значительная часть материала окажется для них новой.