Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - MWL

Strony: [1] 2 3 ... 11
1
Pytania i problemy / Grafika izometryczna
« dnia: 2011-03-02, 19:15 »
Czyli tak jak myślałem. Nie ważne czy gra w unrealu czy w przeglądarce, grafika nigdy nie będzie czymś niekłopotliwym do ogarnięcia dla programisty? :P

A może ktoś wie coś czego ja jeszcze nie??

2
Pytania i problemy / Grafika izometryczna
« dnia: 2011-03-02, 18:50 »
Na początek napiszę "OMG jak dawno mnie tutaj nie było". Jak to się mówi, jak trwoga to do moda, czy jakoś tak :P

Przechodząc jednak do sedna sprawy. Nudzi mi się w domu i chcę sobie zrobić coś w rodzaju prostej gry strategicznej na przeglądarkę. Wszystko bardzo fajnie, ale mam jeden, dość duży problem, mianowicie zastanawiam się w jaki sposób rozwiązać problem z grafiką. Szkoda mi pieniędzy (tak tak, żyd) na grafika (a właściwie to jak wyobrażę sobie ogrom pracy to pewnie byłoby to roczne zatrudnienie) więc trzeba sobie jakoś samemu poradzić.

Pytanie konkretne brzmi: Czy macie jakieś rozwiązania na tworzenie grafiki izometrycznej? Czy ktoś z was się tym bawił i czy macie do tego jakiś specjalny program (albo opcję w Fireworks/Photoshop)?

3
Forum / [Sonda] Koszulki theModders
« dnia: 2009-06-25, 17:23 »
mudżyńsko-wiggerska wersja będzie kosztować dodatkowy czołg :)

4
Forum / [Sonda] Koszulki theModders
« dnia: 2009-06-25, 16:39 »
Może zrobić bitwę 2D z tą koszulką??

5
Forum / [Sonda] Koszulki theModders
« dnia: 2009-06-25, 16:32 »
Jeśli się uda to najprawdopodobniej wydamy serię 20 max 50 sztuk, tylko dla wybrańców :)
Czytaj 20 pierwszych lub 50 pierwszych osób

6
Forum / [Sonda] Koszulki theModders
« dnia: 2009-06-25, 16:23 »
Jak, wyżej. Niech wszyscy wiedzą że ludzie z the modders to ludzie z the modders :)

7
Forum / Meeting
« dnia: 2009-06-23, 11:47 »
powoli mi, nie wiem jak Zdunkowi też wszystko się rozpierdala więc nie wiem czy będę...

8
Forum / Meeting
« dnia: 2009-06-22, 12:17 »
Walić kasę, ważne że to na zadupiu :P  I za bardzo nie ma połączenia nawet :D

9
Prace 2D / Webdesign
« dnia: 2009-06-22, 11:53 »
Zdunek, ciągle pierdzielisz "trudny do pocięcia". Obydwaj doskonale wiemy że obejść idzie wszystko, a sztuka wymaga poświęceń. Moim zdaniem nie należy oceniać pracy pod względem technicznym (cięcie), tylko użytecznym (inaczej usability).

10
PHP / MVC
« dnia: 2009-06-22, 10:50 »
Napisałem sobie tutorial, dla trochę bardziej zaawansowanych w PHP o MVC. Mam zamiar zamieścić u siebie na blogu. Tym czasem idzie na TM.

MVC dla początkujących.

Tak, tak jest już bardzo dużo artykułów o tym jak działa model, widok i kontroler. Mimo to żaden z nich nie został dobrze zinterpretowany przeze mnie, i dopiero videocasty z zend framework uświadomiły mi jak to wszystko powinno wyglądać. Tak więc postanowiłem napisać własny, prosty i zrozumiały tutorial. A więc zaczynamy.

MVC, już zapewne słyszałeś o tym skrócie, oznacza on "Model View Controller" czyli nazwy warstw aplikacji.

Zakładamy że chcemy zrobić aplikację internetową, która będzie służyła do celów szpiegowania ludzi z naszego miasta. Tematyka nie typowa, ale może zainteresować. Podstawową funkcjonalnością naszej aplikacji będzie dodawanie danych na temat ludzi. Jak się teraz do tego zabrać? Najlepszym sposobem było by zaprojektowanie jakiegoś systemu który wywoływał by odpowiednie akcje (w naszym przypadku będzie to tylko dodawanie i wyszukiwanie ludzi). I tu najlepiej sprawdza się Model Widok i Kontroler, czyli filozofia separacji wywoływania zadań, pobierania danych i rysowania interfejsu.

Wytłumaczę na czym polega MVC w teorii.
Model - coś co zwraca nam potrzebne dane. I tak na przykład użyjemy modelu by wyszukać jakieś dane, czy dodać je do źródła danych.
Widok (View - V) - coś co rysuje nam interfejs, w naszym przypadku stronę.
Kontroler (Controller - C) - czyli to co zajmować się będzie tym by aplikacja działała jak trzeba.

Na początek stwórzmy plik index.php o takiej treści

<?php
// definujemy podstawową konfigurację
if(isset($_GET['module'])) $module = strtolower($_GET['module']).'Controller';
else $module = 'indexController';

if(isset($_GET['action'])) $action = strtolower($_GET['action']).'Action';
else $action = 'defaultAction';

if(!@include_once('classes/controllers/'.$module.'.php'))
{
// tutaj możesz zamieścić coś na wypadek nie odnalezienia strony
die('Nie odnaleziono strony.');
}

$controller = new $module;
if(method_exists($controller, $action)) $controller -> $action();
else die('Nie odnaleziono strony.');

?>

Mamy przygotowany plik, teraz czas na katalog z klasami. Utwórzmy sobie katalog classes a w nim podkatalogi controllers, models oraz views. W pierwszym z nich zamieszczać będziemy kontrolery które będą pobierały dane z modelu, formowały je odpowiednio i rysowały za pomocą widoków. Jeśli zinterpretujemy kod zrozumiemy że jego zadaniem jest po pierwsze załadowanie odpowiedniej klasy, a po drugie uruchomienie odpowiedniej funkcji (inaczej metody) z instancji naszej klasy jeśli oczywiście ona istnieje.

Zajmijmy się napisaniem naszego pierwszego kontrolera. Nazwijmy go indexController.php i zapiszmy w nim kod naszej nowej klasy. Będzie ona miała za zadanie narysować nagłówek strony, część główną i stopkę strony, oraz wywołanie takich metod z modelu których wymagać będzie nasza aplikacja. Zapiszemy więc taki kod:

<?php
// Tworzymy klasę kontrollera
class indexController
{

public function defaultAction()
{
include('classes/views/header.php');

echo '<h1>Witamy w szpegMachina 1.0</h1>';
echo '
<form action="?action=search" method="get">
<input type="text" name="name" /><br />
<button type="submit">Szukaj</button>
</form>';

include('classes/views/footer.php');
}

}
?>

Napisaliśmy nasz pierwszy kontroler. Ale czy na pewno poprawnie? NIE! Zadaniem kontrolera nie jest wypisywanie danych za pomocą echo tylko łączenie potrzebnych modeli z widokami. Nasz kod powinien więc wyglądać raczej tak:

<?php
// Tworzymy klasę kontrollera
class indexController
{

public function defaultAction()
{
include('classes/views/header.php');

include('classes/views/index/default.php');

include('classes/views/footer.php');
}

}
?>

Można sobie pomyśleć że nie ma to żadnego znaczenia, jednakże łatwo tu zauważyć po co nam w ogóle potrzebny MVC. Jeśli będziemy w jakikolwiek sposób chcieli zmodyfikować wygląd nie będziemy musieli babrać się w kontrolerze, a tym samym obawiać się że coś spieprzymy. Gotowe nasz pierwszy kontroler został zapisany, a w nim pierwsza jego akcja. Nie użyliśmy w nim modelu, jednak zrobiłem to celowo. Należy zapamiętać że model nie jest niezbędny do kontrolera, używa się go dopiero kiedy potrzebujemy zapisać czy pobrać jakieś dane. Dodamy teraz do naszego kodu metodę addAction, którą będziemy mogli uruchomić za pomocą odwołania get (?action=add).

<?php
...
public function addAction()
{
// klasycznie dodajemy nagłówek i stopkę
include('classes/views/header.php');

// jeśli wysłano dane będziemy je dodawać

if(!empty($_POST))
{
// sprawdzamy czy wszystkie dane są wprowadzone
if(!isset($_POST['name']) || !isset($_POST['desc']))
{
// jeśli jest nie tak jak trzeba wypiszemy informację o błędzie
include('classes/views/index/error.php');
}
else
{
// jest ok więc teraz czas na model
include('classes/models/spyModel.php');

// mamy już potrzebną nam klasę modelu, teraz instancja
$model = new spyModel();
$model -> add($_POST['name'], $_POST['desc']);
}
}

include('classes/views/footer.php');
}
...
?>

No i mamy gotowy kontroler z użytym modelem jeśli jest potrzebny. Czas więc zapisać model, którego użyliśmy.

<?php
class spyModel
{

public function add($name, $desc)
{
// na początek połączymy się z bazą danych
$connect = mysql_connect('localhost', 'root', 'pass');

// nie możemy zaomnieć o filtrowaniu danych
$name = mysql_real_escape_string($name);
$desc = mysql_real_escape_string($desc);

// teraz odpowiednie zapytanie
mysql_query('...');

// jeśli wystąpił błąd zwrcamy fałsz
if(@mysql_error()) return FALSE
else return TRUE;
}

}
?>

Zrobione. Teraz możemy odwołać się do tego modelu i użyć go w odpowiedniej sytuacji.

Tak właśnie działa MVC. Mamy podział i w dowolnym momencie możemy pozmieniać logikę aplikacji nie psując przy tym innych modułów. Dzięki temu możemy łatwo zarządzać naszą aplikacją. Zastosowany przeze mnie Model Widok Kontroler to najprostsze możliwe rozwiązanie tego wzorca projektowego. Do swoich rozwiązań można oczywiście dodać o wiele bardziej skomplikowane mechanizmy, udostępnić rodziców klasą, tak żeby zbierały różnorakie informacje itd.

Mam nadzieję że mój artykuł był prosty i zrozumiały, a także to że nie będziesz miał już więcej problemów ze zrozumieniem wzorca.

11
HTML i CSS / HTML 5
« dnia: 2009-06-22, 10:48 »
Ostatnio sobie poczytuję o HTML 5, nowy projekt z 2004 roku obecnie coraz bardziej popularny, najprawdopodobniej zastąpi xHtml 1.0 polecam poczytać: http://www.whatwg.org/specs/web-apps/current-work/

12
Webmastering / Początki z javascriptem
« dnia: 2009-06-22, 10:44 »
Osobiście polecam darmowe videoarty na uw teamie: http://www.uw-team.org/index.php?id=videoarty&dzial=js

13
Forum / Meeting
« dnia: 2009-06-22, 10:30 »
1. Shergar
2. Thor
3. Fenix
4. Królik
5. Zdunek
6. Hwep
7. kazzmir
8. Aver
9. Kyro
10. OR
11. MWL

Marcin Lenkowski, Koszalin (koło Koszalina xD)

14
Forum / Meeting
« dnia: 2009-06-08, 19:01 »
Będę na bank :lol2:

Jak będzie to dorwiemy Pingwinka :/  Nie będzie ataków na iFotos xD

No to tak jakby ktoś nie wiedział że ja od CreaWebusa:
Marcin Lenkowski
Koszalin (nie powiem więcej bo będzie wiadomo gdzie się schował złodziej)
lenkowski [at] creaweb [dot] pl

A jak OR nie ruszy dupy to wiesz co możesz zrobić w wolnym czasie jak będziesz w tej Warszawie Zdunek ;]  Uprzedzam, będzie bolało!

15
HTML i CSS / Problem z borderami przy validatowaniu ;/
« dnia: 2009-04-18, 22:31 »
lepiej style="border:none;"

16
HTML i CSS / Wersje CSS
« dnia: 2009-03-01, 17:25 »
tu bym się kłócił, edytor zamykający znaczniki (jak dreamweaver czy eclipse PDT) i nie ma problemu

17
Prace 2D / Webdesign
« dnia: 2009-01-01, 17:58 »
Jedaith szacunek, doszedłeś do sedna, to jest naprawdę świetne i mi się podoba. Jeśli nadal będziesz ćwiczył sądzę że naprawdę dużo osiągniesz. Już teraz na podstawie tych projektów mogę powiedzieć ze jest dobrze, ale nie spoczywaj na laurach, pozdrawiam.

18
Oceny / PoziomkaZ
« dnia: 2009-01-01, 17:50 »
Nowa strona poziomki, www.poziomkaz.pl Jak się podoba?

19
Webmastering / Jaki CMS pod skórkę?
« dnia: 2009-01-01, 17:46 »
Nic nie mówię, ale to wygląda bezczelnie jak brzydka kopia poziomkowej strony.
A ja polecam wordpress'a tu będzie najłatwiej (moim zdaniem).

20
Oceny / CreaWeb
« dnia: 2008-12-07, 15:28 »
nie wiem ludzie co wy chcecie. Czy wszystko musi być ze sobą powiązane? Internetem jest cały świat. Mi globus się podoba i tyle :lol2:

Strony: [1] 2 3 ... 11
Do góry