Klasy, obiekty, PHP i ja
Tak się złożyło, że od prawie trzech lat jestem głównym programistą webowej części dość dużej aplikacji biznesowej silnie kastomizowanej pod klientów. Do lutego byłem też jedynym programistą webowym tej aplikacji. No i wiadomo jak to jest, gdy programista jest jeden, a pracy pełno i zwykle na wczoraj: kod ma powstać i działać! Może być bałaganiarski, brzydki. Grunt, że działa. No i kod działa.
Od lutego jest już nas dwóch i pół pracujących nad tą aplikacją: Grzegorz, Wojtek Praktykant i Ja. Pojawiły się dni bez nawału pracy, można więc trochę popracować nad kodem. I starym i nowym. I jakoś zeszło na programowanie obiektowe (większość kodu napisana strukturalnie, wiem, nie bić!). Z programowaniem obiektowym miałem styczność na studiach. Niestety tam nikt nie był na tyle dobrym nauczycielem, aby pokazać, że obiektowo może być lepiej niż strukturalnie (a strukturalnie programuję pół mojego życia i na studia poszedłem mają wyrobione nawyki w tej dziedzinie). No i pisałem strukturalnie. W zeszłym tygodniu coś mnie jednak tknęło, aby przypomnieć sobie obiektówkę. I był to strzał w dziesiątkę. Przez 4 dni opracowałem klasy bazowe dla kilku funkcji aplikacji i teraz dziwię się, czemu wcześniej nie pisałem obiektowo. To co przedtem powstawało w kilka dni teraz można zrobić w kilka godzin. Przykład: rejestr KP i KW. Funkcjonalnie to samo, tyle, że na odwrót. Raz plus, raz minus. KP powstały ze dwa lata temu, KW trzeba było dorobić teraz. W jeden dzień przerobiłem KP na klasy i nagle się okazało, że KW robi się w 15 minut. Wystarczy nadpisać kilka właściwości klasy bazowej i jedną metodę. Może odkrywam Amerykę, ale jak dla mnie rewelacja! Coś czuję, że więcej już nie będę pisał strukturalnie. Za dużo czasu można w tym stracić i za dużo bałaganu w kodzie wygenerować!