Mój prosty framework

Skrypt działa na systemie szablonów Smarty.
--------------
Każdy plik posiada swoją klasę, jako przykład weźmy plik libs.php (zarządzanie bibliotekami):
<?php require_once ('class/Lib.php'); require_once ('lib/smarty/Smarty.class.php'); require_once ('class/Tpl.php'); $tpl = Tpl::loadSmarty (); Tpl::loadTemplate ('libs', $tpl); if ($_GET['act'] == 'cp') { Lib::copyLib ($_GET['dir']); } if ($_GET['act'] == 'del') { Lib::delDir ($_GET['dir']); } $tpl -> display ('main.tpl'); ?>
i class/Lib.php:
<?php class Lib { } } while (FALSE !== $entry = $dir -> read ()) { if ($entry == '.' || $entry == '..') { continue; } self::delDir ($name . '/' . $entry); } $dir -> close (); } } ?>
A więc każda biblioteka to po prostu klasa złożona z kilku funkcji statycznych... Zastanawiam się, czy nie jest to głupotą/nagięciem zasad OOP.
Zastosowałem metody statyczne, bo:
* Nie muszę tworzyć obiektu, by się do nich odwołać...
* ...przez co nie jest problemem użycie danej metody w innym pliku
* Są proste w kodowaniu i użyciu
Z tym, że cały framework jest oparty i takie właśnie klasy... Może można by to rozpisać inaczej: prościej, a zarazem poprawniej?
Pozdrawiam,
Fipaj