... przedstawie wam może pare argumentów....
zapraszam do lektury

Cytat
Koncepcje programowania obiektowego
Współczesne języki programowania zazwyczaj rozpoznają obiektowe ujęcie tworzenia oprogramowania, a nawet go wymagają. Rozwój zorientowany obiektowo (00 — Object Oriented, obiektowy) jako pomoc w tworzeniu programów próbuje wykorzystać klasyfikację, relacje i właściwości obiektów w systemie.
Klasy i obiekty
W kontekście programowania obiektowego obiektem może być prawie każda rzecz bądź koncepcja — obiekt fizyczny, taki jak biurko lub klient, ale także konceptualny, istniejący jedynie w oprogramowaniu, np. pole tekstowe lub plik. Generalnie najbardziej interesujące są obiekty konceptualne zawierające obiekty świata rzeczywistego, które muszą zostać wprowadzone do programu.
Programowanie obiektowe zostało zaprojektowane i stworzone jako zbiór kompletnych obiektów z przypisanymi atrybutami i operacjami, które wchodzą w interakcje, by spełnić oczekiwania użytkowników. Atrybuty to właściwości bądź zmienne odnoszące się do obiektu. Operacje z kolei to metody, działania lub funkcje, które obiekt może podejmować w celu modyfikowania siebie lub zewnętrznego efektu.
Główną zaletą programowania obiektowego jest jego zdolność do rozpoznawania i wspomagania kapsułkowania — znanego również jako ukrywanie danych. Oznacza to przede wszystkim, że dostęp do danych zawartych w obiekcie jest możliwy jedynie przez operacje obiektu, nazywane jego interfejsem.
Funkcjonalność obiektu jest związana z danymi przez niego używanymi. Możliwa jest łatwa zmiana szczegółów implementacji obiektu w celu poprawienia wydajności, dodania nowych własności lub naprawienia błędów bez konieczności zmiany interfejsu, która mogłaby poważnie wpłynąć na cały projekt.
W innych obszarach rozwoju oprogramowania 00 jest normą, a programowanie strukturalne, zorientowane na funkcje, uchodzi za przestarzałe. Z kilku powodów większość skryptów WWW jest niestety nadal projektowana i tworzona według metodologii zorientowanej na funkcje.
Rzeczywiście istnieje kilka ku temu powodów. Większość projektów WWW jest względnie mała i prosta. Nie ustalając planu można za pomocą piły zbić skrzynkę; podobnie bez większego trudu można stworzyć większość projektów oprogramowania WWW z powodu ich niewielkich rozmiarów. Jednakże próba zbudowania domu bez uprzedniego planu da marne rezultaty, jeżeli w ogóle się powiedzie — podobnie jest z dużymi projektami programów.
Wiele projektów WWW ewoluuje od zbioru stron powiązanych hiperłączami do złożonej aplikacji i zależnie od tego, czy wykorzystują okienka dialogowe czy też dynamicznie tworzone strony HTML, wymagają dobrze przemyślanej metodologii rozwoju. Zorientowanie obiektowe może pomóc w kontroli złożonych projektów, zwiększyć możliwości ponownego wykorzystywania kodu, a w związku z tym ograniczyć koszty utrzymania.
W programowaniu 00 obiekt jest unikatowym i identyfikowalnym zbiorem zapisanych danych i operacji pracujących na tych danych. Na przykład mogą istnieć dwa obiekty przedstawiające przyciski. Nawet, jeżeli oba mają podpis „OK.'1, szerokość 60 pikseli, wysokość 20 pikseli, a także identyczne pozostałe atrybuty, na każdym z nich można pracować osobno, ponieważ posiadają specjalną zmienną, tak zwany uchwyt (niepowtarzalny identyfikator).
Obiekty mogą być pogrupowane w klasy. Klasy reprezentują zbiór obiektów, które mogą różnić się nieco między sobą, lecz posiadają określoną liczbę podobieństw. Klasa zawiera obiekty posiadające takie same operacje, działające w identyczny sposób, i takie same atrybuty, opisujące identyczne własności, chociaż wartości tych atrybutów mogą różnić się pomiędzy poszczególnymi obiektami.
O rzeczowniku „rower" można myśleć jako o klasie obiektów, opisującej wiele konkretnych rowerów o wielu cechach wspólnych {atrybutach), jak dwa koła, kolor i wielkość, oraz operacje, takie jak ruch.
Konkretny rower można ująć jako obiekt pasujący do klasy rowerów. Posiada on wszystkie wspólne cechy rowerów, również operację ruchu, która działa tak jak ruch w innych rowerach. Atrybuty konkretnego roweru mają unikatowe wartości, na przykład kolor zielony, ponieważ nie wszystkie rowery są zielone.
Polimorfizm
Obiektowy język programowania musi rozpoznawać polimorfizm, co oznacza, że różne klasy mogą się różnić zachowaniami dla tej samej operacji. Jeżeli na przykład istnieje klasa „samochód" i klasa „rower", obie mają różne operacje ruchu. W wypadku obiektów ze świata realnego ten problem rzadko występuje. Rowery raczej nie zaczną stosować operacji ruchu zapożyczonej od samochodów. Jednak język programowania nie odznacza się zdrowym rozsądkiem świata realnego, tak, więc musi rozpoznawać polimorfizm, aby wiedzieć, której operacji ruchu użyć na konkretnym obiekcie.
Polimorfizm to charakterystyka raczej zachowań niż obiektów. W php tylko funkcje składowe klas mogą być polimorficzne. Można to porównać do czasowników ze świata realnego, gdyż są one równoważne funkcjom składowym. Roweru na przykład można używać na wiele sposobów, m.in. czyścić go, wprawiać w ruch, rozkładać, naprawiać i malować.
Czasowniki te opisują ogólne działania, ponieważ nie wiadomo, na jakich obiektach są one dokonywane (ten typ abstrakcji dotyczącej obiektów i działań należy do charakterystycznych wyróżników ludzkiej inteligencji).
Na przykład przemieszczanie się rowerem wymaga zupełnie innych działań niż poruszanie się samochodem, chociaż ogólne założenia są podobne. Czasownik poruszać się może być skojarzony z konkretnymi działaniami dopiero wtedy, gdy znany jest obiekt tych działań.
Dziedziczenie
Dziedziczenie pozwala na tworzenie hierarchicznych związków pomiędzy klasami za pomocą podklas. Podklasa dziedziczy atrybuty i operacje od swojej nadklasy. Na przykład rower i samochód mają pewne wspólne cechy. Możliwe jest zastosowanie klasy „pojazd" zawierającej cechy takie jak atrybut koloru i operację ruchu, które to cechy posiadają wszystkie pojazdy. Można, więc przyjąć, że „rower" i „samochód" dziedziczy od pojazdu.
Poprzez dziedziczenie możliwe jest budowanie nowych klas i dodawanie do starych. Z podstawowej prostej klasy można wedle potrzeb wywieść klasy bardziej złożone i wyspecjalizowane. Dzięki temu kod jest łatwiejszy do ponownego wykorzystania, co zalicza się do ważnych zalet ujęcia obiektowego.
Stosowanie dziedziczenia zaoszczędza sporo pracy, jeżeli operacje mogą zostać napisane raz w nadklasie, a nie wielokrotnie w osobnych podklasach. Może również umożliwić dokładniejsze modelowanie relacji ze świata realnego. Jeżeli zdanie o dwóch klasach z wyrazem „jest" w środku jest sensowne, dziedziczenie jest przypuszczalnie właściwe. Zdanie: „samochód jest pojazdem" ma sens, przeciwnie zaś zdanie: „pojazd jest samochodem", ponieważ nie wszystkie pojazdy to samochody. Tak, więc „samochód" może dziedziczyć od „pojazdu".
jeśli to was nie przekonuje to ja ni wim

.... materiał zaczerpnięty z php i MySQL Tworzenie stron WWW Luke Welling, Laura Thomson wydawnictwo HELION
------------------------
Zmoderowane
Seth