![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 1 Dołączył: 15.10.2009 Skąd: gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Witam
Przymierzam sie do napisania na potrzeby pracy inż. interfejsu WWW do zarządzania serwerem dostępowym Linux. Mam pewną wiedzę odnośnie sieci komputerowych i Linux'a, bo to główny cel mojej pracy i specjalizacja moich studiów jednak interfejs WWW ma być integralną częścią pracy i również tą jej część mam zamiar stworzyć w sposób maksymalnie zbliżony do ideału. Pytanie jak pisać ...nowocześnie, wydajnie, bezpiecznie i według standardów ? Rozumiem, że od strony wyświetlania zawartości stron to powinien to być : xml 1.0 Xhtml 1.1 (xhtml 1.0 Strict) CSS 2.0 (DOM) Powiedzmy, że o to się nie boję bo są standardy W3C i validatory, jednak do tego na 100% zostanie użyty PHP 5.x i SQLite 3.x i pytanie : czy są jakieś ogólnoświatowe konwencje pisania kodu ? komentowania ? walidacji ? testowania ? Czy w takiej aplikacji powinno się skorzystać z jakichś wspomagaczy jak szablony Smarty ? Czy w ogóle to już jest na tyle złożona aplikacja, że należało by pisać obiektowo, a nie strukturalnie ? Może praca inż. obliguje do pisania każdej aplikacji w PHP obiektowo ? Czy to na tyle złożone przedsięwzięcie, że powinienem zainteresować sie CVS lub SVN ? Nie liczę na wykład, a jedynie na uwagi i wskazówki oraz krytykę popartą argumentami. Z góry dziękuję i pozdrawiam (IMG:style_emoticons/default/worriedsmiley.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 9 Dołączył: 14.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zazdroszczę takiej pracy. Osobiście sprawy validatorów kodu xhtml czy css zostawiłbym na koniec, bo wg mnie (oczywiście zaraz będzie krytyka (IMG:style_emoticons/default/smile.gif) ) bawić się w validację to tak jak zamiatać chodnik po jego zbudowaniu. Strona się dobrze wyświetla w FF Ie7, IE8, Operze i kilku innych - jest ok. Jeśli nie współpracujesz z fanatycznym kolesiem tworzącym szablony, który po prostu musi mieć wszystko jak należy, to kilka errorów w walidatorze nie jest problemem. No chyba, że chcesz stronę wyświetlac na czymś więcej niż monitor komputera. Piszę tak, bo na pewno nie jesteś osobą, co zapomni sobie zamknąć tag <h1> i dziwi się co jest grane na ekranie. Wspomagacze jak szablony Smarty nie są potrzebne do szczęścia. W samym PHP można tworzyć szablony. Przykład: ftp://ftp.helion.pl/przyklady/php5tp.zip rozdział 11. Ale lepiej nie rezygnować z jakichkolwiek szablonów, bo późniejsza zmiana wyglądu strony bedzie bardzo kłopotliwa. DOM - to API dla obiektów tworzących dany dokument. Służy do zarządzania obiektami tworzącymi stronę www. Osobiście nigdy nie myślę nawet o tym, gdy aplikacja ma być skuteczna, a nie super ładna. Ogólnoświatowe konwencje pisania kodu, to chyba dzisiaj wzorzec MVC. Osobno masz dostęb do danych (model - M), osobno logikę (kontroler - C) i osobno wyświetlanie wszystkiego (widok V). Zmiana w jednej częsci nie powoduje konieczności ingerencji w drugą. Zamiana zapisanych informacji w plikach na zapis ich w bazie danych nie powoduje strat moralnych oprócz tego, że trzeba przerobić Model. Są do tego frameworki (np. Symfony) ale bez frameworka też można samemu sensownie wszystko poukładać. Pisanie strukturalne - jedna dziedzina problemu - jedno rozwiązanie (np. Turbo Pascal) - dzieś się tego nie stosuje, bynajmniej nie przy www, Pisanie proceduralne - to tzw. styl wolnych funkcji. Funkcje rozwiązują konkretny problem i zwracają jedną informację (np. sinus kąta) lub procedury rozwiązuja problem i zwracają zero lub więcej niż jedeną informację (np. włączenie muzyczki - nie zwraca żadnej informacji). Każdy ma dostęp do takiej funkcji. Możesz do takowej wrzucić stringa, choć wymaga boolean'a i bez ciągłego debugowania namnożą się ciekawe błędy. Nie masz też dziedziczenia, a więc tzw. polimorfizm odpada (który np. pozwala ograniczyć ogromne ilości instrukcji warunkowych do jednej). Porównaj wizytówkę na 3 przykładach - to wyjaśnia ewolucję porcji informacji od zmiennej w kierunku obiektu. 1. zmienne - każda informacja (imię, nazwisko, telefon) to osobna zmienna, 2. tablice - wszystkie informacje z wizytówki znajdują się w jednej tablicy, 3. obiekty - wszystkie informacje w jednym obiekcie + funkcje do operowania na tych informacjach + ograniczony dostęp (obiekt od wygrywania muzyki nie uruchomi przez pomyłkę funkcji dla obiektów od wyświetlania wizytówek i nie spowoduje błędu). Od Ciebie zależy wybór. Obiekty są "lepsze" ale trzeba się ich poprostu nauczyć. U mnie w firmie wolą przyjąć osobę (bez doświadczenia, zaraz po studiach) do programowania obiektowego w C++, która co kolwiek robiła obiektowo i nie zna składni języka C (podobna do C++), niż taką co zna składnię C, ale nie kojarzy obiektów. Ciekawy jestem jednej rzeczy - DLACZEGO PHP I SQLITE (IMG:style_emoticons/default/questionmark.gif) ? Pozdrawiam Ten post edytował Wiktor P. 13.12.2009, 10:20:42 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 1 Dołączył: 15.10.2009 Skąd: gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Bardzo dziekuję za tak wyczerpującą odpowiedz!
Czemu PHP i SQLite hmm, zastanawia mnie czemu nie (IMG:style_emoticons/default/biggrin.gif) Mam zamiar zastosować ten tandem ponieważ przy niewielu operacjach i niewielu danych to dobry "silnik do mielenia informacji" pomiędzy plikami w systemie, a widokiem strony WWW (IMG:style_emoticons/default/biggrin.gif) Same zmiany w systemie będzie wdrażał osobny demon c/c++ albo bash. Php ma za zadanie odebrać info od użytkownika , posprawdzać w bazie, wygenerować lub czasem zmienić zawartości plików w odpowiednim folderze i na koniec uaktualnić wpisy w bazie. Jeszcze sie dopytam czy nie będzie nadużyciem jeżeli skorzystam z darmowego szablonu ? (chodzi o wygląd strony ) Dziękuję i pozdrawiam |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Cytat Jeszcze sie dopytam czy nie będzie nadużyciem jeżeli skorzystam z darmowego szablonu ? (chodzi o wygląd strony ) Skoro sa freeware to nie sam wykorzystuje jeden sam do strony domowej mojego fw bo na grafice ani css sie nie znam. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 02:22 |