![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 520 Pomógł: 102 Dołączył: 15.07.2014 Skąd: NULL Ostrzeżenie: (0%) ![]() ![]() |
Źródło:
https://github.com/KsaR99/php-cache Plik: class.Cache.php, zawiera klasę. Plik: cache.php, to przykładowe zastosowanie. Klas cache są miliony jednak chciałem stworzyć swoją własną, prostą. ![]() Do oceny:
Zastanawiam się nad metodą do kasacji cache, Jednak cache zazwyczaj się nie kasuje a podmienia. Warto dodać? Jeśli tak to prosił bym też o przykład - po co. Wszelkie uwagi mile widziane. ![]() Ten post edytował KsaR 8.06.2016, 17:51:54 -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Tylko że w systemie nie masz x instancji tego cache raczej, tylko jedną.
Cytat Użyć setterów zamiast parametrów Nie, parametry są lepsze, settery powinny zginąć. Obiekt cache to immutable, nie można zmieniać w czasie działania tego, bo można sobie narobić więcej problemów niż pożytku. No chyba, że zrobimy tak jak w psr7 i będziemy zwracać nowy obiekt ![]() Dlatego też zrobiłem z tego static, ale nie testowałem i co słusznie zauważył nospor, zrobił się nam singleton. I jak już to return; null tam jest nadmiarowy ![]() Na github twierdzisz ze jesteś za optymalizacja to czemu upierasz się nadal na te piramidę
KsaR Widać brak Ci trochę podstaw, bo twojego konstruktora nie dało się wywołać inaczej niż z 3 parametrami, który w dodatku powinien być zgodny z typem wiec te ![]() Dlatego chciałem go dodać w tym pull requescie i w końcu po poście Pyton_000 je tam ustawiłem. Ten post edytował com 9.06.2016, 20:14:41 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 520 Pomógł: 102 Dołączył: 15.07.2014 Skąd: NULL Ostrzeżenie: (0%) ![]() ![]() |
Tylko że w systemie nie masz x instancji tego cache raczej, tylko jedną. (...) I jak już to return; null tam jest nadmiarowy ![]() Na github twierdzisz ze jesteś za optymalizacja to czemu upierasz się nadal na te piramidę (...) KsaR Widać brak Ci trochę podstaw, bo twojego konstruktora nie dało się wywołać inaczej niż z 3 parametrami, który w dodatku powinien być zgodny z typem wiec te ![]() (...) Instancje mogą być różne... $cacheMessages $cacheNews Da się oczywiście zrobić to 1 instancją ale po co ograniczać... Rozdzielenie do różnych folderów to też „optymalizacja” zwłaszcza im więcej tam ląduje (np. 1+k) Co do return; - zmienie Jeśli chodzi o te if'y. Ja wolę mieć 2 różne komunikaty (brak ścieżki, zła ścieżka) niż "brak lub zła ścieżka" Takie coś to nie sądzę żeby bylo nawet makro-optymalizacją bo się założe że z 100* if...elseif będzie szybsze od 1. trim() czy explode()... Takie coś to bardziej minifikacja. A tylko utrudni korzystnie wg. mnie (mniejsza o to - takie moje zdanie). Co do parametrów. Podstawy mam raczej. Pisałem wszystko na tablecie bez IDE typu "storm" tylko zwykłe podświetlanie składni które nawet błędów nie pokazuję, a w dodatku nie spałem. ![]() ___ W wolnym czasie postaram się dodać to serializowanie. Zastnawiam się jak to najlepiej zrobić. Ale gdy dodam to i tak będzie trzeba poprawić bo obstawiam że mam średni pomysł. ![]() -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 27.06.2025 - 05:23 |