Программирование - это просто
Advertisement
Главная arrow Юмор arrow Смеходром arrow Объектно-ориентированное программирование для блондинки.
24.04.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Объектно-ориентированное программирование для блондинки. Печать E-mail
Автор megabax   
21.01.2010 г.
Объектно

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

На примере php. Подразумевается, что самые азы программирования блондинка знает.

Действующие лица:

  • Преподаватель (П.)
  • Блондинка (Б.)
Диалог

П.: Сейчас я тебе объясню принцип объектно-ориентированного программирования
Б.: Ну даю… ой… хи-хи, то есть дааавате, объясняйте.
П.: Ну так вот. Представь себе, что ты пошла в какой-нибудь магазин…
Б.: Ещё б скааазали “гастраааном”. (скривила лицо) Я в бутики толька хааажу.
П.: Ну хорошо, зашла ты в бутик. И увидела там шубу.
Б.: норкаваю!
П.: Да, норковую! И захотела купить. Шуба - это объект, который ты хочешь купить. А вообще Шубы - это класс объектов. В этом классе могут быть различного вида шубы от искуственного меха до соболя. В коде это можно написать:

class Shubi {
public $tip;
}

, где public означает, что кто угодно может узнать какой тип шубы ты купила.
Б.: Кто угодна? И даже Танька Синявская?
П.: Ну если Танька Синявская приедет и увидит твою шубу, то да.
Значит ты хочешь купить объект, т.е. шубу, которая принадлежит классу “Шубы”. Чтобы это было так, нужно написать:

var $shuba1 = new Shubi();

  • var - это типа “ХАЧУ”;
  • new - это типа “купить новую”

Б.: А пачиму shuba1?
П.: Ну а ты разве одну шубу только купишь?
Б.: А, ну дааа… (делает вид, что понимает) А, что, я так вот сразу куплю шубу без примерки?
П.: Конечно нет. Всё верно. У шубы есть свойства, например, размер. Добавим в класс Shubi это свойство, а потом укажем, какой размер у этой шубы. В итоге код у нас получается такой:

class Shubi{
public $tip;
public $razmer;
}
$shuba1 = new Shubi;
$shuba1->tip = "norka";
$shuba1->razmer = 53;

Б.: Я что толстая тааакая? У меня Соракдивяяятый рааазмер!
П.: Ну хорошо, хорошо. Размер 49. Дальше: Купив шубу, задали её размер. А размер - это свойство объекта. И для расчётов можем его получить написав:

$razmer_shubi = $shuba1->razmer;

т.е. если мы хотим узнать, чему равно какое-нибудь свойство, то нам нужно написать имя объекта, добавить такую стрелочку “->” и написать свойство объекта.
Б.: Ну паняла, не дура я. (надулась)
П.: Замечательно! Ну, а после того как ты купила шубу, что ты сделаешь?
Б.: Нааадену и паеду пааадружкам хвастать.
П.: Ага, значит оденешь. Значит совершишь действие. Значит это мы напишем так:

$shuba1->odetj();

Что означает, что ты одела шубу. Это называется метод и записывается этот метод в классе в виде функции:

class Shubi{
public $tip;
public $razmer;
function odetj(){
return true;
}
}

Б.: А зааачем odetj со скобочкамиии?
П.: А в скобочки записываются параметры действия. Вдруг ты захочешь одеть её задом на перёд.
Б.: Я что, дура что лиии?
П.: Да.
Б.: Чтооо? (в глазах ярость, рука воинственно поднялась, сверкнув ногтями)
П.: Ой, в смысле, да нет, конечно. Например, ты не захочешь застёгивать её совсем, а оставить пару пуговичек растёгнутыми.
Б.: Ааа, ну ладно. Ааа, как это записать?
П.: ну, например, так:

$shuba->odetj(2);

Б.: Что значит “напримееер”? Может быть подругомууу?
П.: Может. Это зависит от того как описать класс Shubi.
Б.: Бааалин, ещё это в Shubi записывать!
П.: Ну да, смотри:

class Shubi{
public $tip;
public $razmer;
function odetj($pugovici){
return $pugovici;
}
}

у всех шуб, есть каие-то определённые свойства: размер, цвет…
Б.: Цвет может быть разный.
П.: Конечно, но совсем никакого цвета не бывает. Хоть какой-то цвет будет. Значит свойство “цвет” будет у каждой шубы. Вот как узнать какой цвет у твоей шубы.
Б.: Пасмааатреть на неё.
П.: нет, я и мею в виду в коде.
Б.: Ааааа… ну, наверна, так:

$cvet_shubi = $shuba1->cvet;

П.: Умничка! (Блондинка сияет) Только предварительно нужно добавить это свойство в класс Shubi. Как?
Б.: Наверна, так:

class Shubi{
public $tip;
public $razmer;
public $cvet;
function odetj($pugovici){
$rasstegnutie_pugovici = $pugovici;
return $rasstegnutie_pugovici;
}
}

П.: Только прежде, чем получить цвет у шубы, нужно задать этот цвет. Это можно сделать либо в классе Shubi, тогда все создаваемые шубы будут одного цвета, хотя не проблема их перекрасить. Либо, ты можешь получить шубу без определённого цвета и сама назначить её любой цвет.
Б.: Ага, вот чтоб тааак в жизни было. Одела шубу и скааазала “хачу белую, нет, хачу чёрную”…
П.: Дааа… программировать и создавать, практически синонимы.
Ну и ещё объекты имеют методы, т. е. действия которые можно совершить с шубой. Теперь сними шубу.
Б.: Ага. Выключите свет.
П.: Что?
Б.: Ой, хи-хи… в смысле написааать?
П.: Ну конечно!
Б.: Снимаю (пошлый смешок):

class Shubi{
public $tip;
public $razmer;
public $cvet;
function odetj($pugovici){
$rasstegnutie_pugovici = $pugovici;
return $rasstegnutie_pugovici;
}
function snjatj(){
return true;
}
}


$shuba1->snjatj();

П.: Великолепно! Ну хватит с тебя на сегодня.
Б.: Пабииигу, по бутикам пока не закрыыылись!

Источник: http://www.seleckis.lv
 

 

 
« След.
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги