Przyjazne użytkownikom polskie wsparcie phpBB 3.0

Twoja przeglądarka jest przestarzała i nie wspiera obecnych standardów WWW.
Zalecamy instalację najnowszej wersji jednej z przeglądarek, które poprawnie obsługują obecne standardy, np:

  • Arora
  • Chrome
  • Firefox
  • Opera
  • Safari

phpBB Ascraeus - podsumowanie Londonvasion

phpBB Ascraeus - podsumowanie Londonvasion

Postprzez LEW21 » 20 wrz 2008, o 23:26 ·

Artykuł jest tłumaczeniem wpisu na blogu phpBB pt. Londonvasion Re-Cap - phpBB Ascraeus

Cześć,

Myślę że nadszedł czas żeby napisać o prezentacjach, które my (developerzy) wykonaliśmy na konferencji Londonvasion, odkrywając nasze plany odnośnie następnej wersji phpBB, o kryptonimie Ascraeus.

Nie należy brać niczego z tego postu za pewne. Mogą nastąpić zmiany, część rzeczy może w ogóle się nie zmienić, inne mogą zostać zmienione całkowicie. Ale tak, tak nasze plany wyglądają obecnie.

Zmiany w wymaganiach:


Wymagania linii 3.0.x zostały ustalone kilka lat temu, więc musieliśmy ponownie pomyśleć o wymaganiach i zdecydować jak stare oprogramowanie chcemy wspierać.

Jeśli chodzi o język programowania (PHP), zdecydowaliśmy porzucić wsparcie dla PHP4, głównie dlatego że gdy wydamy phpBB Ascraeus, PHP4 nie będzie już istnieć (i zostało już porzucone) i prawdopodobnie PHP6 będzie już wydane. W momencie pisania tego tekstu, planujemy minimalnym wymaganiem Ascraeusa będzie PHP 5.2.0+.

Jeśli chodzi o wsparcie dla baz danych, porzucimy wsparcie dla wersji nie wspieranych już przez producentów. Przykładowo, wsparcie dla MySQL 3.x i 4.x się skończyło – dlatego będziemy wspierać tylko 5.x i 6.x.

Możliwe że będziemy musieli podnieść też inne wymagania, ale to zależy głównie od sytuacji rynkowej w momencie pierwszego publicznego wydania.

Znaczące zmiany w frameworku:


Celem tych ulepszeń jest podzielenie phpBB na niezależne części, dla lepszej abstrakcji kodu, testów jednostkowych, łatwości używania i ponownego wykorzystywania, oraz usunięcie kodu-spagetti.

Organizacja naszego systemu plików zostanie znacząco zmieniona. Obecnie pliki nie są ani ponazywane ani pogrupowane konsekwentnie. Spróbujemy rozwiązać ten problem wprowadzeniem prostszej struktury plików. Postaramy się przy tym nie zmieniać jej nadmiernie, aby zachować trochę kompatybilności wstecznej.

Statyczna klasa phpbb zawierająca najczęściej używane zmienne globalne


Dla naszych "najważniejszych klas" ($db, $user itp.) użyjemy klasy statycznej, zasadniczo udającej globalną przestrzeń nazw. Do zmiennych będzie można odwoływać się przez phpbb::$db, phpbb::$user itp.

Statyczna klasa będzie posiadać metodę do rejestrowania obiektów, które będzie przetrzymywać.
[przyp. tłum. (LEW21): To niemożliwe - z zewnątrz klasy nie można zdefiniować nowej zmiennej statycznej, a z wewnątrz można stworzyć tylko zmienną prywatną. Jeśli phpBB Group na prawdę myśli o czymś takim, będzie musiało zmienić plany, lub przejść na PHP 5.3+.]

Zyskiem jest usunięcie większości obiektów, i uproszczenie otrzymywania właściwej instancji obiektu przez użycie singletonów.
[przyp. tłum. (LEW21): Słownictwo oryginalne, to nie ja wymyśliłem właściwie-nie-wiadomo-co-znaczącą konstrukcję "instancja obiektu". Uprzedzając pytanie - nie wiem co Acyd rozumie przez "usunięcie większości obiektów".]

Dzięki odwoływaniu się do głównych obiektów przez klasę statyczną, globalna przestrzeń nazw pozostanie niezaśmiecona.

Zmiany nazw klas zapobiegające konfliktom z cudzymi produktami / kodem


Wszystkie nasze klasy zostaną poprzedzone prefiksem phpbb_, interfejsy prefiksem phpbb_interface, klasy abstrakcyjne prefiksem phpbb_abstract itp…

Przykłady rozszerzania naszego frameworku


Obecnie niektóre pliki nie ładują common.php żeby zainicjować wszystko, co zmusza nas do duplikowania kodu z common.php. Przykładem jest dostarczanie załączników. Żeby móc mieć tylko jedno miejsce i jeden kod do danych rzeczy, dodamy nowy plik inicjalizujący, który będzie odpowiedzialny za uruchomienie wszystkich części "bazy" przy minimalnym wysiłku. Plik ten będzie przywoływany z pliku common.php, ale będzie mógł też być dołączany przez inne pliki potrzebujące frameworku, lecz nie całego systemu.

Tak więc, zasadniczo, umożliwia to dwa sposoby używania. Pierwszy to pozwolenie skryptom wykorzystywać tylko framework, a drugi - ładowanie ustawień specyficznych dla phpBB.

Co więcej, nasze funkcje filtrujące, jak validate_*, oraz funkcja request_var() zostaną zebrane aby uprościć (ponowne) wykorzystywanie. Funkcje do generowania URLi i przekierowywania przejdą te same zmiany.

Ascraeus będzie zawierał więcej hooków, umieszczonych w obiektach oznaczonych jako "hookable". Umożliwi to cudzym aplikacjom analizowanie i zmianę stanu skryptu, dla nawet prostszej integracji z istniejącym kodem.

Cache'owanie:


Niedawno dodaliśmy nowe backendy cache'owania, wspierające APC, XCache, shmop i inne. Oprócz tego, backend cache'ujący w bazie danych zostanie wskrzeszony. Zmienimy też wewnętrzną strukturę cache.

Wprowadzimy pojemniki cache - realny typ cache'owania będzie konfigurowalny osobno dla każdego pojemnika. Przykładowo, ktoś chce używać cache'owania plikowego dla zapisywania szablonów, bazy danych do globalnych danych i memcache do zapytań SQL - wykonanie tego będzie bardzo proste. Jest to przykład możliwości jakie uzyskamy z wdrażania zmian w frameworku.

Nowy parser BBCode'ów:


Nowy parser BBCode'ów nie będzie miał problemów jak te, które napotkaliśmy w 2.0.x i 3.0.x. Został już wkommitowany do repozytorium i całkowicie zastąpi i ulepszy poprzedni system BBCode'ów. Ucząc się na 2.0.x, wprowadziliśmy nowy parser BBCode'ów do 3.0.x. Parser ten miał swoje problemy, ale już nie tak dużo jak ten z 2.0.x, szczególnie jeśli chodzi o bezpieczeństwo. Teraz, gdy rozpoznaliśmy problemy, możemy zapewnić że parser BBCode'ów z 3.2.x nie będzie posiadał nieoczekiwanych ograniczeń.

Część funkcji jakie posiada nowy parser BBCode'ów:
  • parsowanie przy pomocy stosu
  • możliwość użycia BBCode'ów w dowolnej kolumnie tekstowej
  • możliwość parsowania BBCode'ów w razie potrzby
  • np. umożliwienie stosowania BBCode'ów w cenzorach słów
  • brak rozróżnienia między własnymi a wbudowanymi BBCode'ami
  • wsparcie dla wyrażeń regularnych we własnych BBCode'ach
  • zmiana systemu przechowywania BBCode'ów (oddzielenie wpisanego tekstu i sparsowanego tekstu)

Planowane funkcje:


Poniżej jest lista planowanych nowości dla Ascraeusa. Są tu wypisane te najważniejsze. Można to nazwać naszą listą kamieni milowych (oczywiście, mamy swoją bardziej sprecyzowaną... ale jest pełna nonsensów, niepotrzebnych tutaj).
  • Nowe MCP (Panel Moderatora)
    • kompletna przeróbka możliwości MCP
    • dodanie możliwości moderowania bez wchodzenia do MCP
    • możliwość tworzenia notatek nt. użytkownika przy przeprowadzaniu niektórych operacji
    • możliwość moderowania w wynikach wyszukiwania
    • przygotowane odpowiedzi
    • większa kontrola nad ostrzeżeniami
  • AJAX
    • biblioteka po stronie serwera
    • zaimplementowany w ACP
      • paski postępu
      • zawartość zależna od konfiguracji
    • stosowany dla szybkich narzędzi moderatorskich
    • niestosowany wszędzie, lecz tylko w miejscach, gdzie jest odpowiednie
  • system zdarzeń (eventów)
    • Zdarzenia: momenty powodujące wywołanie akcji, np. napisanie nowego wątku
    • Warunek: warunek, który musi zostać spełniony, żeby akcja została wykonana. Przykład: użytkownik osiągnął 20 postów
    • Akcja: akcja, która zostanie wykonana, gdy warunek jest prawdziwy. Przykład: dodaj użytkownika do grupy X
    • Callback: akcja wykonana po akcji właściwej, służąca np. do powiadomienia użytkownika o dodaniu do grupy
  • RSS
  • Zmiany we własnych polach profilu
    • nowe typy (obrazek, liczba zmiennoprzecinkowa, itp.)
    • wszystkie wbudowane pola profilu przeniesione do własnych pól profilu
  • Poprawki systemu prywatnych wiadomości
    • żądanie wysłania potwierdzenia o przeczytaniu wiadomości
    • usunięcie skrzynki nadawczej i zastąpienie jej statusem wysyłania wiadomości
    • opcja umożliwiająca umieszczenie treści wiadomości w powiadomieniu o niej
    • poprawne raportowanie o prywatnych wiadomościach
  • System autoryzacji
    • Rozszerzenie systemu o narzędzie do przetwarzania danych profilowych.
    • Obsługa OpenID

Mniej istotne planowane nowości:

  • System styli nie przechowuje już szablonów i motywów w bazie danych. System ten będzie wstecznie kompatybilny, ale chcemy, by to właśnie system plików był główną lokalizacją dla szablonów, motywów i zestawów obrazków. Zmiany wprowadzane w ACP mogą być zastosowane w systemie plików.
  • Prefiksy w tytułach wątków.
  • Specjalne działy (Kosz, Archiwum).
  • Proste usuwanie.
  • Pluginy CAPTCHA.
  • Usprawnienia w systemie sesji.
  • Wsparcie dla kolejkowanych edycji.
  • Rozszerzenie crona (harmonogramu zadań), by można było definiować konkretne terminy dla wykonania danych czynności.
  • Poprawiony system logowania błędów poprzez dodanie dodatkowych możliwości powiadamiania.
  • Edytowalne FAQ i regulamin forum.
  • System pomocy służący do pomocy administratorom i moderatorom (mała ikonka pomocy).
  • Możliwość ustalenia domyślnych ustawień personalnych użytkowników.
  • Wsparcie dla takich narzędzi jak Akismet.
  • Użycie domyślnych zmiennych językowych w przypadku, gdy coś zależnego od języka jest niedostępne.
  • Wsparcie dla nazw domen IDN+IRI.
  • Pełne wielojęzykowe wsparcie - możliwość definiowania niektórych elementów w wielu językach (na przykład nazwy działów, opisy działów).
  • Poprawne obsługiwanie czasu letniego (automatyczne przestawianie).

Zdarzenia -> Pluginy -> Hooki -> API -> kod


Z punktu widzenia developera, Ascraueus będzie podzielony na wiele mechanizmów przeznaczonych do różnych celów.

Zdarzenia:
Stosowany przez developerów/adminów do definiowania specjalnych akcji wywoływanych przez zdarzenia.
Przykład: Umieść użytkownika w grupie X, jeśli liczba jego postów wyniesie 10.

Pluginy:
Stosowany przez developerów do tworzenia nowej funkcjonalności w obrębie istniejących systemów.
Przykład: Tworzenie nowego modułu ACP z bardziej precyzyjnymi statystykami na temat forum.

Hooki:
Stosowany przez developerów do integracji phpBB z innymi aplikacjami.
Przykład: Pomost z Joomla!

API:
Stosowany przez developerów przy używaniu frameworku do konkretnych celów.
Przykład: dodaj użytkownika do grupy korzystając z API
Przykładowe wywołanie: phpbb::$api::$user->add_to_group(’ADMINISTRATORS’)

Kod:
Stosowany przez developerów i developerów phpBB i tylko modyfikowany przez tych drugich.
Przykład: funkcja append_sid()

Wnioski:


Jest wiele do zrobienia. ;) Jak sami widzicie, zaczęliśmy już planować to, co chcielibyśmy widzieć w Ascrauesie. Potrzebujemy również pozostawić część wstecznej kompatybilność - nie chcemy przepisywać wszystkiego. :) subsilver2 prawdopodobnie zniknie również.

Na dzień dzisiejszy nadal najbardziej koncentrujemy się na Olympusie. Łatanie błędów i zarządzanie projektem, w szeroko rozumianym tego słowa znaczeniu, nadal zabiera większość czasu.

Jeśli chcielibyście zobaczyć prezentacje, udajcie się na stronę Londonvasion i obejrzyjcie je w Sieci lub ściągnijcie filmiki i obejrzyjcie je offline. :)


Dzięki za uwagę,
Meik
Potrzebujesz pomocy? Napisz na forum zamiast wysyłać komuś prywatną wiadomość lub pisać do kogoś przez jakiś komunikator.
Avatar użytkownika

LEW21

Papa SmerfPosty: 3078Dołączył(a): 18 cze 2006, o 12:17Lokalizacja: Warszawa

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez BlueMan » 19 paź 2008, o 10:09 ·

Spore, ale to naprawdę spore plany mają. Głównie porządkowe kodu...

Z doświadczenia (swojego i tego co obserwuje po innych pokroju phpbb) wiem, że jak za dużo czasu poświęci się na porządkowe czynności kodu, to potem mniejszy zapał jest, aby nowe funkcjonalności wdrażać.
Dlatego wg. mnie powinni na zmianę wdrażać nowe możliwości z poprawą kodu. Wiem, że to jest bardziej pracochłonne, ale jest bliższe oczekiwaniom użytkowników.
Ja już przeszedłem z Przemo do phpBB3, a Ty? ^^
http://www.BlueForum.pl - Piąty Wymiar Rzeczywistości
http://www.ForumOrange.net - Forum Orange GSM
http://www.phpBB4.pl - phpBB4 żabawniej ;)
Avatar użytkownika

BlueMan

VeteranPosty: 306Dołączył(a): 15 gru 2007, o 11:15Lokalizacja: Sosnowiec

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez LEW21 » 19 paź 2008, o 12:43 ·

Obecny kod jest na tyle zabałaganiony, że gdyby dodawali nowe funkcje bez wcześniejszego zrobienia porządku, to w pewnym momencie byłoby tak tragicznie, że pozostałby tylko rewrite. Chociaż ja uważam, że już teraz powinni zrobić rewrite a nie się bawić w zmianę wszystkiego bez zmiany czegokolwiek.
Potrzebujesz pomocy? Napisz na forum zamiast wysyłać komuś prywatną wiadomość lub pisać do kogoś przez jakiś komunikator.
Avatar użytkownika

LEW21

Papa SmerfPosty: 3078Dołączył(a): 18 cze 2006, o 12:17Lokalizacja: Warszawa

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez Dami » 12 sty 2009, o 15:51 ·

wiem, że jeszcze nie teraz, ale kiedy może wyjść 3.1?

Dami

Posty: 1Dołączył(a): 11 sty 2009, o 11:20

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez KrisNH » 12 sty 2009, o 15:56 ·

Do premiery 3.1 jeszcze trochę czasu minie...
Przed zadaniem pytania skorzystaj z Wiki i wyszukiwarki!
Get Firebug!
Avatar użytkownika

KrisNH

VeteranPosty: 1547Dołączył(a): 26 paź 2008, o 18:53Lokalizacja: Kraków, Nowa Huta

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez MaxT » 15 sty 2009, o 01:50 ·

Może być sobie to phpBB 3.1 nawet za rok, ważne aby było bardziej zaje*iste od 3.0!
Próbowałem wszystkich skryptów jakie znalazłem w necie, ale phpBB3 najlepsze, a myślę że w wersji 3.1 będzie jeszcze lepsze, a czytając tekst z pierwszego posta, można stwierdzić ze takie będzie :)
Avatar użytkownika

MaxT

Posty: 18Dołączył(a): 14 sty 2009, o 17:44

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez Meon » 22 lut 2009, o 17:23 ·

Najbardziej mnie martwi to, że subsilver zniknie, trzeba bedzie przerabiac :thumbdown:

Meon

Posty: 47Dołączył(a): 31 paź 2007, o 21:39

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez wojok040 » 7 lis 2009, o 11:51 ·

Znów się może okazać że wprowadzą dużo modyfikacji i zamiast 3.1 będzie 4.0 ;P . W sumie i tak wychodzi na korzyść użytkowników...
wojok040
Avatar użytkownika

wojok040

Posty: 133Dołączył(a): 9 gru 2008, o 09:12

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez Easy » 23 gru 2009, o 12:04 ·

A mnie najbardziej ciekawią moduły, czy wreszcie zrobią je tak jak w MyBB, IPB i vBulletin, że będzie można wrzucić modyfikację na serwer i uruchomić ją bez problemu w panelu administratora.
Wsparcie phpbb3.pl się skończyło, zapraszamy na http://www.phpbb.pl/forum, znajdziecie tam między innymi najnowsze spolszczenie do phpbb3.1.x

Instalacja modyfikacji, aktualizacja phpBB3, Joomla i innych skryptów
Avatar użytkownika

Easy

Posty: 65Dołączył(a): 14 kwi 2009, o 06:53

Re: phpBB Ascraeus - podsumowanie Londonvasion

Postprzez LG » 23 gru 2009, o 12:24 ·

Podejrzewam, że gdy AutoMod (który pozwala na klikalną formę instalacji modów) zostanie pozbawiony błędów, a autorzy modyfikacji zaczną dostosowywać mody do standardów, według których ma działać AutoMod, phpBB Team zacznie myśleć nad jego integracją z podstawową paczką phpBB.
Przeważnie problem leży między krzesłem a klawiaturą.
Strona domowa - Google+ - Twitter
Avatar użytkownika

LG

ModeratorPosty: 1829Dołączył(a): 17 lip 2007, o 11:57Lokalizacja: Gdańsk

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości

Zaloguj  •  Zarejestruj