Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> czy przechodzić ze struktury na oop, proszę o radę
vegelus
post 28.11.2009, 10:35:56
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 31.05.2005

Ostrzeżenie: (0%)
-----


Witam szanowne grono
Wybrałem ten dział gdyż chyba jest bezpośrednio związany z oop.

Odziedziczyłem po byłym adminie bardzo rozbudowaną aplikację do zarządzania firmą napisaną w PHP4 (strukturalnie). Z analizy kodu (przez kilka miesięcy ślęczę nad kodem by cokolwiek naprawić lub zmienić) wynika, że ta aplikacja żyła własnym życiem. Coś trzeba było dodać to "if" i po problemie, jak się okazało, że Kowalski ma inne uprawnienia to "if" i po problemie, jak Wiśniewska chciała inne kolorki to "if" i po problemie sad.gif Teraz mam aplikację naszpikowaną ifami, casami i innymi warunkami. Obecnie muszę wprowadzić kilka zmian i aż się prosi o obiekty i dziedziczenie żeby wyeliminować te cholerne if'y.

Problemy
1. Posiadam serwer na OVH i mogę przełączyć się na PHP5 ale wtedy wszystkie krypty zaczną działać pod 5 i boję się efektu przejścia?
2. Czy warto w ogóle przebudowywać cały kod na oop, czy lepiej na podstawie funkcjonalności zaprojektować cała aplikację od podstaw?
3. Poprawki wstawiać w oop czy trzymać się struktury?

takie akademickie pytania, do szału mnie jednak doprowadza ślęczenie nad kodem przez kilka godzin żeby odkryć, że ten if odpowiedzialny jest za prawidłowe wyświetlenie danych.

A może jakieś inne sugestie co z tym można zrobić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
LBO
post 28.11.2009, 14:55:31
Post #2





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


ad 2. Pisz od nowa. Jest takie powiedzenie Z gówna kryształy nie zrobisz. Odziedziczony kod kiepskiej jakości częściej jest do wymiany, niż do refaktoryzacji.
ad 1. Problem zniknie, jeżeli zastosujesz się do punktu 1-ego
ad 3. nie wiem smile.gif
Go to the top of the page
+Quote Post
Fifi209
post 28.11.2009, 15:01:43
Post #3





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Często, gdy piszę coś na szybko to wszystko strukturalnie. Po jakimś czasie, gdy aplikacja się rozrasta zaczynam zabawę w OOP od początku.

Tak więc i Tobie radzę napisać od początku i stworzyć choćby dla siebie dokumentację. Aplikacje pisane w OOP jest zawsze łatwiej modyfikować.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
dr4ko
post 30.11.2009, 08:55:22
Post #4





Grupa: Zarejestrowani
Postów: 49
Pomógł: 4
Dołączył: 16.07.2008
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Sam mam podobny problem i myśl o refaktoryzacji nawet mi nie przeszła przez głowę. Pisz od podstaw, mniej nerwów będzie cię to kosztowało.


--------------------
devFactor
Go to the top of the page
+Quote Post
pp-layouts
post 1.12.2009, 01:15:54
Post #5





Grupa: Zarejestrowani
Postów: 53
Pomógł: 1
Dołączył: 28.09.2007
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


Przejście z PHP4 na PHP5 nie powinno spowodować najmniejszych problemów, chyba że jakiś łoś się odwoływał do globalsów. Zmieniasz odwołania i śmiga.

Żeby się nie grzebać w jakimś lewym kodzie, jest szybki sposób: robisz listę wszystkich zczytywanych globalsów w tablicy, dajmy na to $t. Później foreach ($t as $k) $$k = $_REQUEST[$k]; i wrzucasz to do pierwszego z brzegu includa. Prowizorka, ale szybka i skuteczna.

Żeby nie było, ten sposób to tylko na kod którego nie chcesz w ogóle dotykać, po prostu mały patch, żeby chodziło pod PHP5, a przy okazji działało bezpieczniej niż lamerski orgyginał.

Go to the top of the page
+Quote Post
vegelus
post 1.12.2009, 13:28:09
Post #6





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 31.05.2005

Ostrzeżenie: (0%)
-----


Globalsów nie zauważyłem ale obecnie babram się w jednej funkcji składającej się 3000 linii a sam plik ma 3 takie funkcje. Po mojej interwencji funkcja zmalała do 100 linii i 13 plików z innymi funkcjami pomocniczymi i aż ręka drży aby tego w klasę nie wpakować winksmiley.jpg

Co do refaktoryzacji to problem jest finansowy. Oni mi na razie nie zapłacą a mnie szlag trafia jak jakieś pole w formie nie działa poprawnie.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:06