Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jądro strony - co to w ogóle jest? :)
Forum PHP.pl > Forum > Przedszkole
Lame
Zastanawia mnie czym jest właściwie jądro aplikacji webowej, bądź po prostu jądro strony www. Ostatnio zainteresowałem się teamtyką engine'ów i myślę nad napisaniem własnego silnika (oczywiście w nieco dalszej perspektywie), stąd też moje wątpliwości. Jakie zadanie spełnia jądro strony? Czy inicjuje poszczególne moduły? Odpowiada za ich wzajemną komunikację? Czy jest to najczęściej zamknięta struktura np. klasa, czy raczej rozproszona biblioteka? A może istnieje tu spora dowolność, a określenie jądro strony jest definicją pojemną i ma wyznaczone jedynie pewne ramy funkcjonalne? W takim razie jakie? Czy ktoś mógłby jakoś schematycznie opisać formalne założenia pisania engine'u z jądrem strony tzn. jakie elementy winny w chodzić w jego skład i jaką rolę miałby w nim pełnić? Z góry dziękuję za odpowiedzi.
Lame
Przejrzałem już ten wątek, ale krótka dyskusja strukturalna przechodzi dość szybko na kwestie bardzo zaawansowane, a przynajmniej omawiane przy użyciu fachowego, nieznanego mi słownictwa (nie wszyscy studiują informatykę bądź piszą od lat w php). Myślę, że ogólne omówienie budowy engine'u i jądra tzn. struktury powiązań poszczególnych elementów i ich roli, nie jest aż tak skomplikowanym i praccchłonnym zadaniem dla kogoś kto takowy silnik sowjego czasu napisał. Ponawiam więc prośbę.
mike
Język w poście który przedstawił Ci hwao jest fachowy ponieważ sama idea pisania engine'u dla strony web jest zagadnieniem trudnym i zaawansowanym. Polecam zaznajomić sie z php na tyle dokładnie żeby mieć w małym palcu OOP, oraz poczytać o m.in. MVC.
bela
Cytat
idea pisania engine'u dla strony web jest zagadnieniem trudnym i zaawansowanym


ja wiem czy jest to aż tak trudne, jak to przedstawiasz? ez który jest zaawansowany zajmuje ~20 mb, a np. źródełka windows ~40 gb (gigabajtów smile.gif, więc chyba aż tak trudno to to nie jest

tak wygląda rozwojowa wersja mojego silniczka smile.gif
http://www.opb.ibplanet.pl/work/dev/bela_6...ass/kernel.phps
harmag
Widze ze temat pisania jadra ostatnio czesto wita na forum. Osobiscie nigdy nie pisalem jadra i patrzac chociazby na post powyzej i przegladajac fragmenty jadra bela_666 ciezko jest mi sobie wyobrazic jak powinno choc mniejwiecej wygladac gotowe jadro dla strony.

W innym temacie gdzie tez poruszony jest podobny watek piszecie o swoich metodach pisania jadra. Jedni pisza o podziale na moduly inni o wbudowaniu wszystkiego w sam kernel itp., a ja sluchajac tego z zewnatrz nadla mam pustke w glowie i zero wyobraznie czym jest jadro dla www:)

Mysle ze jako takie podstawy do pisania obiektowanego mam (4 rok walkowania c++) ale za napisanie tego nie wiem od ktorej stron sie zabrac. Stad moje pytanie:
- jak wy napisaliscie swoj pierwszy kernel ?

Moze posilkowaliscie sie jakims fajnym przykldem? Moze mozecie polecic jakis dobry artykul na temat podstaw budowania takiego jadra?

Z gory dziekuje za ew. pomoc.

Pozdrawiam.
bela
na webcity masz
dag
@harmag: Poszukaj o wzorcu MVC (Model-View-Controller). Jest to sprawdzony i polecany wzorzec (nie tylko jeśli chodzi o web app). Znajdziesz o nim m.in. na forum i artykule na php.pl.
harmag
Cytat(dag @ 2004-10-30 20:55:54)
@harmag: Poszukaj o wzorcu MVC (Model-View-Controller). Jest to sprawdzony i polecany wzorzec (nie tylko jeśli chodzi o web app). Znajdziesz o nim m.in. na forum i artykule na php.pl.

rzeczywiscie idea MVC wyglada przejzyscie i ciekawie (czytalem artykul na php.pl). Na webcity jest 4-czesciowy artykul o pisaniu silnika, ale tam autor juz w drugiej czesci skupia sie na tworzeniu sytemu dla szablonow, co mnie troszke przeroslo smile.gif no ale bede walczyl. dzieki.
Lame
W ogóle nie rozumiem takiego podejścia - jak ktoś się pyta o jakąś bzdurę, ma kłopot z jakimś tam stronnicowaniem czy nie zna komendy mysql itp. słowem pyta się o rzecz na którą odpowiedź znajdzie w pierwszym lepszym kursie i-netowym, na drugiej stronie podręcznika, czy też odpowiedź nasuwa się sama, ale gość zapomniał pomyśleć - wnet zlatuje się cała rzesza "pomagierów" i tłumaczy mu dumnie co i jak, a nawet jeszcze gotowy kod na dokładkę dorzuci. Ale gdy tylko zapytać się o coś co być może wymaga nawet tyle samo zainteresowania co w/w przypadki, ale tyczy się rzeczy poważniejszej, odpowiedzią jest milczenie, lub parę rzuconych na odczepne pustych słów. Tak się składa, że znam dość dobrze OOP (bawiłem się nieco C++), ale nie o tym tu mowa. Raczej powinienem wreszcie powiedzieć, iż z podanego wątku nijak wywniokować się nie da struktury engine'u i jądra, co najwyżej bardzo mdły zarys można z tego sobie wykoncypować, a i to pewnie fałszywy. Najwyraźniej źle trafiłem bo to forum chyba nie służy pomocy i celom informacyjnym, a próbuje udawać koncik wzajemnej adoracji smile.gif Wiem - niewybredny żart, ale czy naprawdę nie mogę się spodziewać, iż ktoś będzie tak dobry i odpowie na moje pytania i prośby? Z MVC się zapoznam, ale teraz liczę na jakieś ogólne zarysowanie problemu, czytałem artykuł na Webcity już dawno temu (nie sądze by tamtejsze smile.gif jądro było jądrem pełną gębą, czytałem jeszcze parę artykułów o engine'ach, ale wszystkie dość pobieżne bądź nie mające wiele wspólnego z prawdziwym, poważnym silnikiem. Czy to naprawdę tak trudno komuś pomóc, naprowadzić...? zarysować schemat?
dag
@Lame nie rozumiem Cię. Napisałeś, że zapoznałeś się ze wzorcem MVC. Wnioskuje, że wiesz jak on wygląda i go rozumiesz. Więc w czym problem? Zadaj jakieś konkretne pytanie.
ActivePlayer
Jakies 2 miesiące temu miałem taki sam problem jak Ty... odpowiedzi na Twoje pytanie jednoznacznej nie ma... jadro... przedewszystkim musisz sam wiedziec co do czego ma sluzyc, jakie wymagania masz co do niego... czytaj duzo o OOP, MVC... sproboj napisac cos wlasnie na podstawie MVC... potem juz pojdzie z gorki...
Lame
Napisałem, że z wzorcem MVC się zapoznam smile.gif Mniejsza o to - sam do tego dojdę, ale miło by jednak było usłyszeć coś o jądrze i engine'ie od kogoś kto takowy napisał - a przecież to kilka linijek np. jądro inicjuje poszególne moduły i odpowiada za komunikację między nimi, klasa Page parsuje URL i przekazuje informacje klasie Templates, która na tej podstawie wczytuje odpowiedni plik tpl, parsuje go i wypluwa kod wyjściowy itp. (wiem, że napisałem tu bzdury, ale pokazuję jedynie o co mi chodzi).
hwao
Qrde ja pare razy pisalem i to wg mnie nie ma tak ze ktos Ci wytlumacyz i to zrozumiesz musisz sam probowac. Sam sie uczylem sam i doszlem do takiego jakie jest mi wygodne dziala dobrze...

Odpalam je (jest klasa) podaje jako argument scierzke ono laduje wsszytko tworzy referencje do biektu zapisuje je w static i potem mam np Core::Get( 'co' ); albo zapis ale to juz inna hisotria. Ono inicjuje db widok kontroler widko sprawdza co bedzie i przygotowywuje dane do zwrocenia kontrolre jakie moduly potrzebne odpala je przeszyla dane do widoku ktorzy parsuje i wysietla. Całosc dziala :-)
harmag
to ja z innej strony spytam. moze ktos z was ma gdzies w glebinach swojego dysku jakies napisane przez siebie x czasu temu male jadro i moze spokojnie podzielic sie teraz jego zrodlami ?
Vengeance
masz jakąs abstrakcje na baze danych, error handler, session handler [itd...] i COŚ musi to wszystko połączyć w całość.
Mozesz zrobic to przy pomocy klasy engine/kernel/jadro jak zwal tak zwal. budowa ma byc taka jak ci odpowiada. przeciez piszesz dla siebie i ty bedziesz to rozwijal. wazne zeby w miare latwo i optymalnie spelnialo twoje zalozenia.
nie ma gotowego przepisu. to jak i w gotowaniu smile.gif potrawa jedna przepisow tyle ilu ludzi na swiecie (- ci ktorzy gotowac nie umieja).
Lame
Dzięki za odpowiedzi. Pytanie z innej beczki - czy ktoś może się orientuje co się stało ze stronką http://www.phppatterns.com questionmark.gifquestionmark.gif
hwao
Moje Core piane x czas temu i dzialalo wszytko dobrze
http://amnesty.scene.pl/~szacool/hwao/php/...core.class.phps

Co do strony http://www.phppatterns.com prosze zalozyc temat odpowiedni na hydeparku i tu sie nie rozpisywac posty nie na temat tematu(ppostu 1wszego) beda usuwane.
Lame
Już zmykam do odpowiedniego działu. Stukrotne dzięki za kod jądra smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.