🗊Презентация Технологии программирования

Нажмите для полного просмотра!
Технологии программирования, слайд №1Технологии программирования, слайд №2Технологии программирования, слайд №3Технологии программирования, слайд №4Технологии программирования, слайд №5Технологии программирования, слайд №6Технологии программирования, слайд №7Технологии программирования, слайд №8Технологии программирования, слайд №9Технологии программирования, слайд №10Технологии программирования, слайд №11Технологии программирования, слайд №12Технологии программирования, слайд №13Технологии программирования, слайд №14Технологии программирования, слайд №15Технологии программирования, слайд №16Технологии программирования, слайд №17Технологии программирования, слайд №18Технологии программирования, слайд №19Технологии программирования, слайд №20Технологии программирования, слайд №21Технологии программирования, слайд №22Технологии программирования, слайд №23Технологии программирования, слайд №24Технологии программирования, слайд №25Технологии программирования, слайд №26Технологии программирования, слайд №27Технологии программирования, слайд №28Технологии программирования, слайд №29Технологии программирования, слайд №30Технологии программирования, слайд №31Технологии программирования, слайд №32

Содержание

Вы можете ознакомиться и скачать презентацию на тему Технологии программирования. Доклад-сообщение содержит 32 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Технологии программирования 
Направления:
 Информационные системы и технологии
Информатика и вычислительная техника
2015 год
Описание слайда:
Технологии программирования Направления: Информационные системы и технологии Информатика и вычислительная техника 2015 год

Слайд 2





Объектно-ориентированный подход в программировании
Объектная декомпозиция задачи
Объект имеет:
имя
набор свойств
состояние
модель поведения
Объекты взаимодействуют между собой с помощью своих интерфейсов
Описание слайда:
Объектно-ориентированный подход в программировании Объектная декомпозиция задачи Объект имеет: имя набор свойств состояние модель поведения Объекты взаимодействуют между собой с помощью своих интерфейсов

Слайд 3





Понятия объектно-ориентированного программирования (ООП)
Объект  (object)
Класс (class)
Свойство (property)
не изменяющиеся в течение времени
изменяющиеся в течение времени (переменные состояния)
Метод (method)
Состояние (state)
переходы между состояниями
Сообщение (message)
Описание слайда:
Понятия объектно-ориентированного программирования (ООП) Объект (object) Класс (class) Свойство (property) не изменяющиеся в течение времени изменяющиеся в течение времени (переменные состояния) Метод (method) Состояние (state) переходы между состояниями Сообщение (message)

Слайд 4





Принципы ООП
Инкапсуляция
Полиморфизм
Наследование
Описание слайда:
Принципы ООП Инкапсуляция Полиморфизм Наследование

Слайд 5





Инкапсуляция
Описание слайда:
Инкапсуляция

Слайд 6





Класс в C++
Объявление класса
class MyClass
{
public:
// доступно всем
private:
// доступно только данному классу 
protected:
//доступно классу и его наследникам
};

Создание объекта
MyClass MyObject;
Описание слайда:
Класс в C++ Объявление класса class MyClass { public: // доступно всем private: // доступно только данному классу protected: //доступно классу и его наследникам }; Создание объекта MyClass MyObject;

Слайд 7





Объявление класса
class Person
{
    public:
        Person();
        std::string GetName();
        void SetName(std::string val);
        int GetYear();
        void SetYear(int val);
    private:
        std::string Name;
        int Year;
};
Описание слайда:
Объявление класса class Person { public: Person(); std::string GetName(); void SetName(std::string val); int GetYear(); void SetYear(int val); private: std::string Name; int Year; };

Слайд 8





Реализация функций-членов класса
Person::Person()
{
    //Конструктор по умолчанию
}
                 или
Person::Person()
{
    Name = "Noname";
     Year = 1992; 
}
Описание слайда:
Реализация функций-членов класса Person::Person() { //Конструктор по умолчанию } или Person::Person() { Name = "Noname"; Year = 1992; }

Слайд 9





Реализация функций-членов класса (2)
void Person::SetName(std::string Nval)
{
    Name = Nval;
}
void Person::SetYear(int val)
{
    Year = val;
}
Описание слайда:
Реализация функций-членов класса (2) void Person::SetName(std::string Nval) { Name = Nval; } void Person::SetYear(int val) { Year = val; }

Слайд 10





Реализация функций-членов класса (3)
std::string Person::GetName()
{
        return Name;
}
int Person::GetYear()
{
        return Year;
}
Описание слайда:
Реализация функций-членов класса (3) std::string Person::GetName() { return Name; } int Person::GetYear() { return Year; }

Слайд 11





Программа с использованием объекта
int main(int argc, char** argv)
{
    Person P;     // Вызов конструктора по умолчанию
    P.SetName("Anita");
    P.SetYear(1978);
    cout << P.GetName() <<"  "<< P.GetYear()<< endl;
    return 0;
}
Описание слайда:
Программа с использованием объекта int main(int argc, char** argv) { Person P; // Вызов конструктора по умолчанию P.SetName("Anita"); P.SetYear(1978); cout << P.GetName() <<" "<< P.GetYear()<< endl; return 0; }

Слайд 12





Конструирование класса, моделирующего работу устройства
Переменные, определяющие состояние устройства:
наличие электропитания (да,нет)
наличие бумаги (да, нет)
текущее действие принтера (печатает, не печатает)
Методы:
включить/выключить
добавить бумагу
убрать бумагу
отправить задание на печать
остановить печать
просмотреть текущее состояние принтера
Описание слайда:
Конструирование класса, моделирующего работу устройства Переменные, определяющие состояние устройства: наличие электропитания (да,нет) наличие бумаги (да, нет) текущее действие принтера (печатает, не печатает) Методы: включить/выключить добавить бумагу убрать бумагу отправить задание на печать остановить печать просмотреть текущее состояние принтера

Слайд 13





Таблица состояний принтера
Описание слайда:
Таблица состояний принтера

Слайд 14





Объявление класса Printer (Printer.h) 
class Printer
{
  public:
        Printer();
        ~Printer();
        void on_off();
        void set_print();
        void stop_print();
        void paper_out();
        void put_paper();
        void show();
  private:
        int is_on;
        int is_print;
        int has_paper;
};
Описание слайда:
Объявление класса Printer (Printer.h) class Printer { public: Printer(); ~Printer(); void on_off(); void set_print(); void stop_print(); void paper_out(); void put_paper(); void show(); private: int is_on; int is_print; int has_paper; };

Слайд 15





Реализация методов класса Printer (1) (Printer.cpp)
#include "Printer.h"
#include <iostream>
using namespace std;
Printer::Printer(): is_on(0), is_print(0), has_paper(0)
{
}
Printer::~Printer()
{
}
Описание слайда:
Реализация методов класса Printer (1) (Printer.cpp) #include "Printer.h" #include <iostream> using namespace std; Printer::Printer(): is_on(0), is_print(0), has_paper(0) { } Printer::~Printer() { }

Слайд 16





Реализация методов класса Printer (2)
void Printer::on_off()
{
    is_on = !is_on;
    is_print = 0;
}
void Printer::set_print()
{
    if (is_on&&has_paper) is_print=1;
}
void Printer::stop_print()
{
    is_print=0;
}
Описание слайда:
Реализация методов класса Printer (2) void Printer::on_off() { is_on = !is_on; is_print = 0; } void Printer::set_print() { if (is_on&&has_paper) is_print=1; } void Printer::stop_print() { is_print=0; }

Слайд 17





Реализация методов класса Printer (3)
void Printer::paper_out()
{
    has_paper=0; is_print=0;
}
void Printer::put_paper()
{
    has_paper=1;
}
void Printer::show()
{
    if(is_on) cout << "включен"<< endl;
    else cout << "выключен"<< endl;
    if(has_paper) cout <<"есть бумага" << endl;
    else cout <<"бумага закончилась" << endl;
    if (is_print) cout <<"печатаю"<<endl;
    else cout << "готов выполнить ваше задание!"  <<endl;
}
Описание слайда:
Реализация методов класса Printer (3) void Printer::paper_out() { has_paper=0; is_print=0; } void Printer::put_paper() { has_paper=1; } void Printer::show() { if(is_on) cout << "включен"<< endl; else cout << "выключен"<< endl; if(has_paper) cout <<"есть бумага" << endl; else cout <<"бумага закончилась" << endl; if (is_print) cout <<"печатаю"<<endl; else cout << "готов выполнить ваше задание!" <<endl; }

Слайд 18





Главная функция (main.cpp)
#include <iostream>
#include "Printer.h"
using namespace std;
int main()
{
    Printer Pr;
    int command, end=1;
    Pr.show();
Описание слайда:
Главная функция (main.cpp) #include <iostream> #include "Printer.h" using namespace std; int main() { Printer Pr; int command, end=1; Pr.show();

Слайд 19





Главная функция (продолжение)
    while (end)
    {
   cout << '' Введите команду ->' ;
        cin >> command;
        switch (command)
        {
         case 1: Pr.on_off(); Pr.show(); break;
         case 2: Pr.set_print(); Pr.show(); break;
         case 3: Pr.stop_print(); Pr.show(); break;
         case 4: Pr.paper_out(); Pr.show(); break;
         case 5: Pr.put_paper(); Pr.show();break;
         default: end=0;
        }
    }
    return 0;
}
Описание слайда:
Главная функция (продолжение) while (end) { cout << '' Введите команду ->' ; cin >> command; switch (command) { case 1: Pr.on_off(); Pr.show(); break; case 2: Pr.set_print(); Pr.show(); break; case 3: Pr.stop_print(); Pr.show(); break; case 4: Pr.paper_out(); Pr.show(); break; case 5: Pr.put_paper(); Pr.show();break; default: end=0; } } return 0; }

Слайд 20





Диаграмма файлов (компонентов) проекта
Описание слайда:
Диаграмма файлов (компонентов) проекта

Слайд 21





Перегрузка функций
Пример – стандартная математическая функция возведения в степень pow()
long double pow(long double,int);
long double pow(long double,long double);
float pow(float,int);
float pow(float,float);
double pow(double,int);
double pow(double,double);
Описание слайда:
Перегрузка функций Пример – стандартная математическая функция возведения в степень pow() long double pow(long double,int); long double pow(long double,long double); float pow(float,int); float pow(float,float); double pow(double,int); double pow(double,double);

Слайд 22





Перегрузка методов класса
Пример – класс «Графический редактор»
Объявление класса
class Draw
{
char* message;
public:
Draw ();
~Draw ();
void Paint (); // Рисует текст
void Paint (int, int,int,int); // Рисует
					     // прямоугольник
void Paint (int, int, int); // Рисует окружность
} ;
Описание слайда:
Перегрузка методов класса Пример – класс «Графический редактор» Объявление класса class Draw { char* message; public: Draw (); ~Draw (); void Paint (); // Рисует текст void Paint (int, int,int,int); // Рисует // прямоугольник void Paint (int, int, int); // Рисует окружность } ;

Слайд 23





Пример – класс «Графический редактор»
Пример – класс «Графический редактор»
Реализация методов (1)
Draw::Draw ()
{
message = new char [10];
strcpy (message, “text”);
}
Draw::~Draw ()
{
delete[ ] message;
// message = NULL; - разрушается весь объект!
}
Описание слайда:
Пример – класс «Графический редактор» Пример – класс «Графический редактор» Реализация методов (1) Draw::Draw () { message = new char [10]; strcpy (message, “text”); } Draw::~Draw () { delete[ ] message; // message = NULL; - разрушается весь объект! }

Слайд 24





Пример – класс «Графический редактор»
Пример – класс «Графический редактор»

Реализация методов (2)

void Draw::Paint ()
{
std::cout << message << std::endl;
}
void Draw::Paint (int cx1, int cy1, int cx2, int cy2)
{
std::cout << “Рисуем прямоугольник” << std::endl;
} 
void Draw::Paint (int cx1, int cy1, int r)
{
std::cout << “Рисуем окружность” << std::endl;
}
Описание слайда:
Пример – класс «Графический редактор» Пример – класс «Графический редактор» Реализация методов (2) void Draw::Paint () { std::cout << message << std::endl; } void Draw::Paint (int cx1, int cy1, int cx2, int cy2) { std::cout << “Рисуем прямоугольник” << std::endl; } void Draw::Paint (int cx1, int cy1, int r) { std::cout << “Рисуем окружность” << std::endl; }

Слайд 25





Пример – класс «Графический редактор»
Пример – класс «Графический редактор»
Функция main ()
int main ()
{
Draw draw;
draw.Paint (); // Рисует текст
draw.Paint (1,1,10,15); // Прямоугольник
draw.Paint (5,5,10); // Окружность
return 0;
}
Описание слайда:
Пример – класс «Графический редактор» Пример – класс «Графический редактор» Функция main () int main () { Draw draw; draw.Paint (); // Рисует текст draw.Paint (1,1,10,15); // Прямоугольник draw.Paint (5,5,10); // Окружность return 0; }

Слайд 26





Виды конструкторов
Конструктор по умолчанию
Конструктор с параметрами
Копирующий конструктор
class Person
{
char* Name;
int Year;
public:
Person (); // Конструктор по умолчанию
Person (char*, int); // Конструктор
// с параметрами
Person (const Person&); // Копирующий 
// конструктор
~Person (); // Деструктор
// Другие методы
} ;
Описание слайда:
Виды конструкторов Конструктор по умолчанию Конструктор с параметрами Копирующий конструктор class Person { char* Name; int Year; public: Person (); // Конструктор по умолчанию Person (char*, int); // Конструктор // с параметрами Person (const Person&); // Копирующий // конструктор ~Person (); // Деструктор // Другие методы } ;

Слайд 27





Конструктор по умолчанию
Реализация
Person::Person ()
{
}
или
Person::Person ()
{
Name = new char[7];
strcpy(Name,”Noname”);
Year = 0;
}
Вызов конструктора по умолчанию
Person MyPerson;
Описание слайда:
Конструктор по умолчанию Реализация Person::Person () { } или Person::Person () { Name = new char[7]; strcpy(Name,”Noname”); Year = 0; } Вызов конструктора по умолчанию Person MyPerson;

Слайд 28





Конструктор с параметрами
Реализация

Person::Person (char* N, int Y)
{
Name = new char[strlen(N)+1];
strcpy (Name, N);
Year = Y;
}

Вызов конструктора с параметрами
Person MyPerson(“Ann”,1990);
Описание слайда:
Конструктор с параметрами Реализация Person::Person (char* N, int Y) { Name = new char[strlen(N)+1]; strcpy (Name, N); Year = Y; } Вызов конструктора с параметрами Person MyPerson(“Ann”,1990);

Слайд 29





Конструктор с параметрами по умолчанию
Реализация конструктора
Person::Person (
char* N=“Noname”, int Y=0)
{
Name = new char[strlen(N)+1];
strcpy (Name, N);
Year = Y;
}
Вызов конструктора
Person MyPerson (“Ann”,1990); // или
Person MyPerson;
Описание слайда:
Конструктор с параметрами по умолчанию Реализация конструктора Person::Person ( char* N=“Noname”, int Y=0) { Name = new char[strlen(N)+1]; strcpy (Name, N); Year = Y; } Вызов конструктора Person MyPerson (“Ann”,1990); // или Person MyPerson;

Слайд 30





Конструктор со списком инициализации
Реализация конструктора
Person::Person (
char* N, int Y): Name(new char[strlen(N)+1]),Year(Y)
{ //Если свойство Name - указатель
strcpy(Name,N);
}

Вызов конструктора
Person MyPerson (“Ann”,1990);
Описание слайда:
Конструктор со списком инициализации Реализация конструктора Person::Person ( char* N, int Y): Name(new char[strlen(N)+1]),Year(Y) { //Если свойство Name - указатель strcpy(Name,N); } Вызов конструктора Person MyPerson (“Ann”,1990);

Слайд 31





Копирующий конструктор
Реализация
Person::Person (const Person& P)
{
Name = new char[strlen(P.Name)+1];
strcpy (Name, P.Name);
Year = P.Year;
}
Вызов копирующего конструктора
//исходный объект
   Person MyPerson(“Ann”,1990);
//его копия 
 Person NewPerson(MyPerson);
Описание слайда:
Копирующий конструктор Реализация Person::Person (const Person& P) { Name = new char[strlen(P.Name)+1]; strcpy (Name, P.Name); Year = P.Year; } Вызов копирующего конструктора //исходный объект Person MyPerson(“Ann”,1990); //его копия Person NewPerson(MyPerson);

Слайд 32





Деструктор
Реализация 
// по умолчанию
Person::~Person ()
{
}
// для рассматриваемого примера
Person::~Person ()
{
    delete[ ] Name;
}

Вызов деструктора – явный вызов не требуется.
Описание слайда:
Деструктор Реализация // по умолчанию Person::~Person () { } // для рассматриваемого примера Person::~Person () { delete[ ] Name; } Вызов деструктора – явный вызов не требуется.



Похожие презентации
Mypresentation.ru
Загрузить презентацию