Często ktoś pyta mnie o programowanie obiektowe w języku PHP. Jak wiadomo od 5 wersji tego języka mamy możliwość naprawdę hmm przyjemnego i porządnego programowania obiektowego. Nie będę tutaj nikogo przekonywał o wyższości OOP nad programowaniem strukturalnym – na ten temat powstało sporo tekstów, artykułów, dyskusji na różnych forach itd. Znajdziecie również sporo książek, pdf’ów, kursór i tutoriali na ten temat. Zapytacie więc – po co ten artykuł ?
Odpowiedź jest prosta – kiedy ktoś pyta mnie o idee OOP i źródło nauki podstaw (ale nie tylko) to poza popularnym stwierdzeniem „zapytaj google…” czasem polecam mój kurs php, gdzie można znaleźć opis podstawowych technik w tym typie programowania, ale również znajdą się bardziej zaawansowane przykłady. Biorąc pod uwagę, że mój kurs był pisany głównie dla własnej nauki oraz aby w razie „sklerozy” mieć dostęp do różnych przykładów nie jest on ani pięknie wyglądający… ba wręcz jest chaotyczny. Nie mniej wszystko co w nim opisałem jest napisane językiem bardzo prostym wręcz łopatologicznym, aby każdy mógł zrozumieć „jak działa” programowanie.
I tak biedna osoba, której poleciłem mój kurs musi przeszukiwać tan chaotyczny zbiór lekcji dlatego też postanowiłem zrobić tutaj malutki zbiór tych (lekcji), które tyczą się programowania obiektowego w php :
- wstęp
- tworzeie klasy, implemetnacja obiektów
- metody w klasach
- klasy potomne, operatory zasięgu
- obiektowy licznik, konstruktor, destruktor, operator static
- obiektowy licznik z bazą danych MySQL
- kapsułkowanie, funkcje dostępowe __get i __set
- dziedziczenie
- unieważnianie funkcji rodzica, operator final
- interfejsy
- klasy abstrakcyjne
- strona w php napisana obiektowo (to tylko przykład wykorzystania, nie sugerować się tym za żadne skarby świata)
- stałe klasowe i metody statyczne – operatory const, static i self
- wskazywanie typów, instanceof
- funkcje dostarczające informacje o klasie
- możliwość stworzenia tylko 1obiektu danej klasy, wzorzec Singleton
- serializacja, deserializacja
- metody __sleep i __wakeup
- klonowanie obiektów danej klasy, metoda __clone
- przeciążanie metod, metoda __call
- metoda __autoload
- metoda __toString
- łańcuchowe wiązanie metod
- API Reflection
- Obsługa wyjątków
- obsluga bazy danych MySQL przy pomocy obiektowego modułu mysqli
- mysqli – instrukcje przygotowywane
- obsługa bazy danych przez PDO
- obsługa bazy danych przez ADOdb
- cache informacji z bazy danych
- php i xml(banalny przykład)
- DOM
- DOM – tworzenie XML’a
- Klasa DOMNodeList, zapytania XPath
- Walidacja XML’a na podstawie XML Schema oraz RelaxNG
Przedstawione lekcje są nadal aktualne, ale fakt faktem, że niektóre były pisane dosyć dawno więc warto zajrzeć też na inne strony – znajdziecie masę kursów, książek, for dyskusyjnych, które pozwolą Wam na kontynuację nauki OOP kiedy już zapoznacie się z tym co ja sobie tam naskrobałem