summaryrefslogtreecommitdiff
path: root/demos/quickstart/protected/pages/GettingStarted/pl/AboutPrado.page
blob: 22ce455f69cb865033c26d6916331f03cfa6f0b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<com:TContent ID="body" >
<h1 id="201">Czym jest PRADO?</h1>
<p id="20003" class="block-content">
PRADO jest napisanym w PHP5 frameworkiem dla aplikacji webowych opartym na komponentach oraz programowaniu zdarzeniowym (<i>ang. event-driven programming</i>).
PRADO z angielskiego oznacza <b>P</b>HP <b>R</b>apid <b>A</b>pplication <b>D</b>evelopment <b>O</b>bject-oriented (przyp. tłum. <i>szybkie tworzenie aplikacji zorientowanych obiektowo w PHP</i>).
</p>
<p id="20004" class="block-content">
Głównym celem PRADO jest zmaksymalizowanie [reusability] w programowaniu webowym. Poprzez [reusability] rozumiemy nie tylko ponowne używanie własnego kodu ale również ponowne używanie w prosty sposób tego kodu przez inne osoby. To drugie jest bardziej ważne, gdyż oszczędza wysiłek włożony w ponowne wynalezienie koła i może znacznie [dramatycznie] zmniejszyć czas developmentu. Taka jest właśnie intencja zastosowania koncepcji komponentów.
</p>
<p id="20005" class="block-content">
Aby osiągnąć powyższe cele, PRADO wymaga protokołu pisania i używania komnponentów  do konstrukcji aplikacji webowych. Komponent jest jednostką programowania, która jest samowystarczalna i może być użyta ponownie poprzez proste [tryvial] dostosowanie [customization]. Nowy komponent może zostać stworzony jako prosta kompozycja istniejących komponentów.
</p>
<p id="20006" class="block-content">
Aby ułatwić interakcję z komponentami, PRADO implementuje paradygmat programowania sterowanego zdarzeniami (ang. <i>event-driven programming paradigm</i>), który umożliwia elastyczne przekierowanie zachowania do komponentu. Czynności użytkownika końcowego, takie jak kliknięcie na [submit button], są przechwytywane jako zdarzenia serwera. Zarówno metody jak i funkcje mogą być przypisane do tych zdarzeń. W chwili gdy takie zdarzenie występuje są one (metody, funkcje) automatycznie wywoływane w odpowiedzi na zdarzenie. W porównaniu do tradycyjnego programowania [sieciowego], w których developerzy muszą zmagać się z surowymi zmiennymi POST i GET, programowanie zdarzeniowe pomaga developerom lepiej skupić się na niezbędnej [necessary] logice i poważnie zredukować nispoziomowe powtarzające się kodowanie.
</p>
<p id="20007" class="block-content">
Sumując, tworzenie w PRADO aplikacji sieciowych, polega głównie na tworzeniu instancji różnego typu wbudowanych komponentów, konfigurowania ich, odpowiadania na ich zdarzenia poprzez wpisanie uchwytów funkcji oraz wkomponowanie ich w stronę [for the application] Jest to bardzo podobne do narzędzi RAD, takich jak Borland Delphi, czy też Microsoft Visual Basic, które używane są do tworzenia desktopowych aplickacji GUI [develop GUI application].
</p>

<h2 id="202">Dlaczego PRADO?</h2>
<p id="20008" class="block-content">
PRADO jest najczęściej postrzegane jako jedyny w swoim rodzaju framework. W rzeczy samej, jest on tak unikatowy, że może zamienić nużące programowanie PHP w przyjemne zadanie. Poniższa lista jest krótkim podsumowaniem, głównych cech PRADO.
</p>
<ul id="prado-features" class="block-content">
<li>[Reusability] - [Code following the PRADO component protocol are highly reusable]. To przynosi korzyści zespołom developerów w dłuższym okresie czasu, gdyż mogą oni ponownie używać swoje poprzednio wykonane prace oraz łatwo integrować dzieła stron trzecich.</li>
<li>Programowanie zdarzeniowe - czynności użytkownika końcowego, takie jak kliknięcie na [submit button], są przechwytywane jako zdarzenia serwera, w ten sposób developerzy lepiej skupiają się na działaniach związanych z interakcją użytkownika.</li>
<li>Grupowa integracja - warstwa prezentacji i logiki są rozdzielone. W aplikacjach PRADO można stosować motywy.</li>
<li>Wszechstronne kotnrolki webowe - PRADO składa się z zestawu wszechstronnych komponentów mających do czynienia z interfejsem użytkownika. Wysoko interaktywne strony internetowe, mogą być stworzone za pomocą kilku linijek kodu. Na przykład, użycie komponentu datagrid (przyp. tłum. <i>z and. data - dane, grid - siatka</i>), może szybko stworzyć stronę prezentującą tabelę z danymi, krórą można posortować, stronicowac, edytować oraz usuwać wiersze danych.
<li>Silne wsparcie dla baz danych - Od wersji 3.1, PRADO zostało wyposażone, kompletne wsparcie dla baz danych, własnoręcznie napisane, dzięki czemu odpowiedni współgra z pozostałymi częściami frameworku PRADO. W zależności od złożoności obiektów biznesowych, każdy może wybrać pomiędzy używaniem prostego, bazujacego na PDO dostępnie do danych lub powszechnie znanym wzorcem Active Record lub też kompletnym schematem mapowania obiektów biznesowych SqlMap.</li>
<li>Jednolite wsparcie dla AJAXA - Używanie AJAX-a w PRADO nigdy nie było łatwiejsze wraz ze swym innowacymi kontrolkamia aktywnymi (ang. <i>active controls</i> wprowadzonymi w wersji 3.1. Możesz łatwo napisać aplikację używającą AJAX-a bez napisania nawet linijki kodu w java skrypcie. W rzeczy samej, używanie kontrolek aktywnych, prawie nie różni się w użyciu od zwykłych nieAJAX-owyh kontrolek webowych.</li>
<li>Wsparcie dla I18N oraz L10N - PRADO zawiera kompletne wsparcie dla tworzenia aplikacji wielojęzykowych i lokalnych</li>
<li>Zgodność z XHTML - Strony internetowe generowanie przez PRADO są zgodne z XHTML.</li>
<li>Przystosowanie istniejących prac - PRADO jest ogólnym frameworkiem skupiającym się na warstwie prezentacyjnej. Nie pozbawia on developerów z używania istniejących bibliotek klas czy też narzędzi. Np, kazdy może używać AdoDB czy też Creole do współdziałania z bazą danych w aplikacjach PRADO.
ś<li>Pozostałe cechy - Wszechstronna obsługa błędów/wyjątków oraz logowania komunikatów; standardowe keszowanie oraz selektywne kaszowanie danych wyściowych; rozszerzalna oraz lokalizowalna obsługa błędów; elastyczna autentykacja oraz autoryzacja; przedsięwzięcie króków chroniących przed atakami cross-site script (CSS), ochrona plików cookie, itd.</li>
</ul>

<h2 id="203">Do czego najlepiej nadaje się PRADO?</h2>
<p id="20009" class="block-content">
Stosowanie PRADO jest najbardziej wskazane w aplikacjach internetowych, które są wysoce interaktywne z użytkownikiem. Może być wykorzystywane do tworzenia systemów tak prostych jak internetowe blogi po kompleksowe rozwiązania e-commerce. Ponieważ PRADO wspiera programowanie zorietnowane oviektowo (OOP) poprzez własną metodologię, bazująca na komponentach, pasuje ono ekstremalnie dobrze do pracy grupowej oraz tworzenia aplikacji klasy enterpise [enterprise development].
</p>
<p id="20011" class="block-content">
PRADO przychodzi z kompletnym zestawem technik keszowanie, które pomagają przyśpieszyć aplikacje internetowe PRADO, by móc przystosować je do aplikacji o wysokim ruchu. Jego modularna architektura umożliwia developerom używać oraz podłączać różne moduły keszujące dla różnych potrzeb. Keszowanie wyjścia umożliwia każdemu selektywny wybór keszowania części renderowanej strony.
</p>

<h2 id="204">Jak PRADO reprezentuje się na tle innych frameworków?</h2>
<p id="20012" class="block-content">
PRADO często jest postrzegane jako jedyny w swoim rodzaju framework. Jego unikatowość polega głównie na programowaniu bazującym na komponentach oraz paradygmacie programowania sterowanego zdarzeniami, które stara się promować. Chociaż ten paradygmat nie jest nowością w aplikacjach desktopowych oraz nie jest nowy w kilku językaach programowania webowego, PRADO jest prawdopodobnie pierwszym frameworkiem umożliwiającym go.
</p>
<p id="20013" class="block-content">
Większość frameworków PHP skupia się głównie na odseparowaniu warstwy prezentacji i logiki i promuje wzorzec programowania MVC (model-view-kontroler, model-widok-kontroler). PRADO osiąga te same cele naturalnie poprez potrzebę prechowywania logiki w klasach a prezetnacji w template'ach. PRADO robi dużo więcej w sprawach [aspects] innych niż MVC. Wypełnia wiele białych plam w programowaniu webowym w PHP swoim bazującym na komponentach paradygmacie programowania, jego bogatym zestawem kontrolek webowych, jego wszechstronną obsługą baz danychm, jego elastyczną obsługą błedów oraz logowania oraz wiele wiele innych.
</p>

<h2>Czy PRADO jest wystarczająco stabilne?</h2>
<p>
Tak. PRADO jest zostało pierwszy raz opublikowane w sierpniu 2004 roku. Wiele zestawów testów zostało napisanych oraz często przeprowadzanych by upewnić sie o jakości PRADO. Był używany przez tysiące użytkowników oraz developerów oraz wiele aplikacji internetowych powstało w oparciu o niego. Bugi oraz żądania rozszerzenia są zarządzane poprzez system TRAC, także posiadamy wspaniałą społeczność użytkowników oraz zespół developerów by być pewnym, że żadne pytanie nie pozostanie bez odpowiedzi.
</p>

<h2 id="205">Historia PRADO</h2>
<p id="20014" class="block-content">
śPierwotna inspiracja PRADO pochodziła od Apache Taperstry. W trakcie projektowania i implemntacji, zapożyczyłem wiele idei z Borland Delphi oraz Microsodt ASP.NET. Pierwsza wersja prado ujrzała świat w czerwcu 2004 roku i została napisana w PHP4. Zachęcony (napędzony) przez konkurs kodowania w PHP5 Zenda, przepisałem PRADO do PHP5, co okazało się mądrym posunięciem, dziei nowemu modelowi obiektowemu dostarczonemu przez PHP5. PRADO zdobyło główną nagrodę w konkrusie Zenda, uzyskując najwięcej głosów zarówno wsród publiczności jak wśród sędziów.
</p>
<p id="20015" class="block-content">
W sierpniu 2004, PRADO zaczęło być hostowane przez SourceForge jako projekt open source. Wkrótce, stona projektu <a href="http://www.xisc.com/">xisc.com</a> została zaprezentowana publice. Wraz z fantastycznym wparciem zespołu developerów PRADO oraz użytkowników, PRADO rozwinęło się do wersji 2.0 w środku 2005 roku. W tej wersji, Wei Zhuo wniósł swój wkład do PRADO ze znakomitym wsparciem dla I18N oraz L10N.
</p>
<p id="20016" class="block-content">
W maju 2005, zdecydowaliśmy się całkowicie przepisać framewrork PRADO, by rozwiazać kilka kluczowych kwestii z wersji 2.0 oraz by porwać kilka fajnych cech [features] dostępncyh w Microsoft ASP.NET. Po około roku ciężkiej pracy z ponad 50.000l liniami nowego kodu, wersja 3.0 została w końcu udostępniona w kwietniu 2006r.
</p>
<p id="20017" class="block-content">
Poczynając od wersji 3.0, znaczny nakład jest kłądziony by zapewnić jakość oraz stabilność PRADO. Jeśli powiemy, że PRADO w wersjach 2.x oraz 1.x były dziełem potwierdzającym koncept, możemy powiedzieć, że PRADO 3.X wyrosło na projekt, który jest odpowiedni dla tworzenia plikacji biznesowych.
</p>
<div class="last-modified">$Id: AboutPrado.page 1703 2007-02-17 01:11:23Z aztech $</div></com:TContent>