Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jedno zadanie jeden obiekt. Czyżby?
coomler
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 26.06.2010

Ostrzeżenie: (10%)
X----


Cześć,
ostatnio postanowiłem poćwiczyć sobie programowanie obiektowe. Na tym forum zdążyłem już wiele razy przeczytać, że jeden obiekt = jedno zadanie. Przejdźmy do rzeczy. Mam jakieś archiwum a w nim kilka plików .txt. Teraz chcę napisać skrypt, który rozpakuje to archiwum i zmieni rozszerzenie plików z .txt na .html, po czym spakuje je. Jak zrobić to, aby było poprawnie? Osobna klasa do rozpakowywanie i pakowania i osobna do zmiany rozszerzenia? Czy w takim wypadku klasa stosować dziedziczenie? Może macie inne, lepsze, bardziej poprawne rozwiązania? Rozumiem, że lepiej nie pakować tego do jednej klasy?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Czasami dobrze jest projektować od końca, tj. od interfejsu:
  1. $archive = new Archive('/path/to/archive');
  2. $archive->extract('/path/to/destination/dir');
  3.  
  4. $archive = new Archive();
  5.  
  6. foreach (new DirectoryIterator('/path/to/destination/dir') as $file) {
  7. $file->isFile() or continue;
  8.  
  9. // zmiana pliku tekstowego na dokument HTML
  10.  
  11. $archive->addFile($file);
  12. }
  13.  
  14. $achive->pack('/path/do/destination/file');
Oczywiście to jest przykład najbardziej podstawowego archiwizatora. Nie uwzględniłem tutaj też bloków try/catch na wyjątki.

Ten post edytował Crozin 17.10.2010, 18:34:43
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 10.10.2025 - 12:05