Drupal Application Framework - metoda na aplikację sieciową

98
Jan Koprowski Jan Koprowski Drupal application framework Drupal application framework metoda na aplikację sieciową metoda na aplikację sieciową

description

Autor: Jan Koprowski Prezentacja ma na celu przedstawienie Drupala jako środowiska developerskiego będącego często bezdyskusyjną alternatywą dla typowych frameworków PHP, dla większości powstających dzisiaj projektów. Będzie to proste „case study”, w którym postaram się wykazać, iż czas tworzenia typowej aplikacji webowej z użyciem Drupala jest znacznie krótszy od tworzenia tej samej aplikacji z użyciem frameworka.

Transcript of Drupal Application Framework - metoda na aplikację sieciową

Page 1: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal application frameworkDrupal application frameworkmetoda na aplikację sieciowąmetoda na aplikację sieciową

Page 2: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

DrupalDrupalmetoda dla wygodnychmetoda dla wygodnych

Page 3: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

DrupalDrupalmetoda dla leniwychmetoda dla leniwych

Page 4: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Kilka słów o mnieKilka słów o mnie

Tu byłemTu byłem

Page 5: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Kilka słów o mnieKilka słów o mnie

Tu byłemTu byłem

Tu trafiłemTu trafiłem

Page 6: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Kilka słów o mnieKilka słów o mnie

Tu byłemTu byłem

Tu trafiłemTu trafiłem

Tu pracujęTu pracuję

Page 7: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Kilka słów o mnieKilka słów o mnie

Tu byłemTu byłem

Tu trafiłemTu trafiłem

Tu pracujęTu pracuję

Page 8: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Kilka słów o mnieKilka słów o mnie

Tu byłemTu byłem

Tu trafiłemTu trafiłem

Tu pracujęTu pracuję

Page 9: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 10: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 11: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 12: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 13: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 14: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 15: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Punkt wyjściaPunkt wyjścia

LOLO

Page 16: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Od czego zaczynamy Od czego zaczynamy naszą przygodę z naszą przygodę z

PHP?PHP?

Page 17: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Od czego zaczynamy naszą przygodę z PHP?Od czego zaczynamy naszą przygodę z PHP?

<?php echo „Hello world”;?>

Page 18: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Nasza wiedza ewoluujeNasza wiedza ewoluuje

<?php switch ($site) { case 0: { include('news.php'); break; } case 1: { include('contact.php'); break; } default: { include('main.php'); break; } }?>

Page 19: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Nasza wiedza ewoluujeNasza wiedza ewoluuje

<?php mysql_connect( ... mysql_select_db( ... mysql_query ( ...?>

Page 20: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Nasza wiedza ewoluujeNasza wiedza ewoluuje

<?php mysql_connect( ... mysql_select_db( ... mysql_query ( ...?>

<?php session_start(); $_SESSION['login'] = ?>

Page 21: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Nasza wiedza ewoluujeNasza wiedza ewoluuje

<?php mysql_connect( ... mysql_select_db( ... mysql_query ( ...?>

<?php session_start(); $_SESSION['login'] = ?>

<?php while ($row = mysql_fetch ...) { echo '<h2>'. $title . '</h2>'; }?>

Page 22: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Zaczynami mieć obraz PHPZaczynami mieć obraz PHP

Page 23: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Zaczynami mieć obraz PHPZaczynami mieć obraz PHP

Page 24: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Zaczynami mieć obraz PHPZaczynami mieć obraz PHP

Page 25: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Małe projekty buduje się fajnieMałe projekty buduje się fajnie

Page 26: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Duże gorzejDuże gorzej

Page 27: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Dochodzimy do czegoś takiegoDochodzimy do czegoś takiego

Page 28: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Niektórzy zaczynają porządkowaćNiektórzy zaczynają porządkować

Page 29: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Inni są sprytniejsiInni są sprytniejsi

Page 30: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Twój wybór.Twój wybór.

Page 31: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Oszczędzasz swój czas!Oszczędzasz swój czas!

Page 32: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Wciąż myślisz o M.Wciąż myślisz o M.

MM

Page 33: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Wciąż myślisz M C.Wciąż myślisz M C.

MM

CC

Page 34: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Wciąż myślisz MVC.Wciąż myślisz MVC.

MM

CC

VV

Page 35: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

WyzwolenieWyzwolenie

Page 36: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Wyobraź sobie framework Wyobraź sobie framework

Page 37: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

W którym ktoś zaprojektował mechanizmyW którym ktoś zaprojektował mechanizmy

Page 38: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Usunął błędyUsunął błędy

Page 39: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

ZabezpieczyłZabezpieczył

Page 40: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

I oddał w twoje ręceI oddał w twoje ręce

Page 41: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Ten frameworkTen framework

Page 42: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

to Drupalto Drupal

Page 43: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Dzięki DrupalowiDzięki Drupalowi

a nie jak to zrobića nie jak to zrobić

Myślisz co chcesz osiągnąćMyślisz co chcesz osiągnąć

Page 44: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Dzięki DrupalowiDzięki Drupalowi

zamiast tworzyć nowezamiast tworzyć nowe

Poruszasz gotowymi trybikamiPoruszasz gotowymi trybikami

Page 45: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Dostrajaj to co istniejeDostrajaj to co istnieje

w miejscu interfejsu do bazy danychw miejscu interfejsu do bazy danych

Tworzysz aplikacjęTworzysz aplikację

Page 46: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

RóżnicaRóżnica

Page 47: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

RóżnicaRóżnica

Page 48: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

RóżnicaRóżnica

Page 49: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

RóżnicaRóżnica

Page 50: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Page 51: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Form framework

Page 52: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Form framework

Menu framework

Page 53: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Form encode

Menu framework

ACLframework

Page 54: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Form encode

Menu framework

Template framework

ACLframework

Page 55: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Form framework

Menu framework

Template framework

ACLframework

Twój moduł

Page 56: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

RSS moduł

Form framework

Menu framework

Template framework

ACLframework

Page 57: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Content moduł

Form framework

Menu framework

Template framework

ACLframework

Page 58: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Categorize moduł

Form framework

Menu framework

Template framework

ACLframework

Page 59: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal jako zestaw frameworkówDrupal jako zestaw frameworków

Form encode

Data framework

Template framework

Corepermissions, menu

Profile moduł

Page 60: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z frameworkiemBudowanie z frameworkiem

Page 61: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z frameworkiemBudowanie z frameworkiem

Page 62: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z frameworkiemBudowanie z frameworkiem

Page 63: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z frameworkiemBudowanie z frameworkiem

Page 64: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z DrupalemBudowanie z Drupalem

Page 65: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z DrupalemBudowanie z Drupalem

Page 66: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z DrupalemBudowanie z Drupalem

Page 67: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Budowanie z DrupalemBudowanie z Drupalem

Page 68: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

A gdy tak chcieć coś zmienić!A gdy tak chcieć coś zmienić!

Page 69: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Operacja na żywym organiźmieOperacja na żywym organiźmie

Page 70: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Zmiany we frameworkuZmiany we frameworku

Page 71: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Zmiany we frameworkuZmiany we frameworku

Page 72: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Dlaczego On nie zrobił API?Dlaczego On nie zrobił API?

Page 73: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Ile kodu utrzymujesz we frameworku?Ile kodu utrzymujesz we frameworku?

# find controllers/ models/ views/ -type f | xargs cat | wc -c# find controllers/ models/ views/ -type f | xargs cat | wc -c8369283692

Page 74: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Jak to jest w Drupalu?Jak to jest w Drupalu?

Page 75: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal - chcemyDrupal - chcemy

Page 76: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Różnica?Różnica?

Page 77: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Drupal - tabela do trzymania bazy danych?Drupal - tabela do trzymania bazy danych?

Page 78: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Zapis do tabeli w trakcie dodawania?Zapis do tabeli w trakcie dodawania?

Page 79: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Gdzie jest Wally?Gdzie jest Wally?

Page 80: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Gdzie jest mój kod?Gdzie jest mój kod?

Page 81: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Gdzie jest mój kod?Gdzie jest mój kod?

Page 82: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Gdzie jest mój kod?Gdzie jest mój kod?

Page 83: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Ile kodu utrzymujesz w Drupalu?Ile kodu utrzymujesz w Drupalu?

$ wc -c dispositions.module $ wc -c dispositions.module 17541754

Page 84: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Ile kodu ktoś utrzymuje za Ciebie?Ile kodu ktoś utrzymuje za Ciebie?

drupal-7.x-dev$ find . -type f | xargs cat | wc -cdrupal-7.x-dev$ find . -type f | xargs cat | wc -c87066728706672

Page 85: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Szanuj swój czasSzanuj swój czas

# find controllers/ models/ views/ -type f | xargs cat | wc -c# find controllers/ models/ views/ -type f | xargs cat | wc -c8369283692

$ wc -c dispositions.module $ wc -c dispositions.module 0175401754

0 * 104 = 0 * 10000

8 * 104 = 80000

Page 86: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Ilość błędów jest proporcjonalna do ilości napisanego koduIlość błędów jest proporcjonalna do ilości napisanego kodu

Page 87: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Na co starczy Ci czasu?Na co starczy Ci czasu?

Page 88: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Na co starczy Ci czasu?Na co starczy Ci czasu?

Page 89: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Na co starczy Ci czasu?Na co starczy Ci czasu?

Page 90: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Na co starczy Ci czasu?Na co starczy Ci czasu?

Page 91: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Na co starczy Ci czasu?Na co starczy Ci czasu?

Page 92: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

A jeżeli coś nie działa w Drupalu?A jeżeli coś nie działa w Drupalu?

Page 93: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

A jeżeli coś nie działa w Drupalu?A jeżeli coś nie działa w Drupalu?

Page 94: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Możemy bawić się swoimi klockamiMożemy bawić się swoimi klockami

Page 95: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Albo wspierać ruch OpenSourceAlbo wspierać ruch OpenSource

Page 96: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Od czego zacząć?Od czego zacząć?

Page 97: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Szkoła Deweloperów DrupalaSzkoła Deweloperów Drupala

Page 98: Drupal Application Framework - metoda na aplikację sieciową

Jan KoprowskiJan Koprowski

Brawa :PBrawa :P