Serwer WWW na przykªadzie Django cz.1

Wielkość: px
Rozpocząć pokaz od strony:

Download "Serwer WWW na przykªadzie Django cz.1"

Transkrypt

1 Serwer WWW na przykªadzie Django cz.1 Krzysztof Ciebiera 13 marca 2014 Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

2 1 Historia CGI PHP klasyczne 2 Wzorzec MVC Intuicja Przykªad 3 Django 4 Szablony Filrty Tagi Wªasne rozszerzenia Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

3 Wady podej±cia import MySQLdb print "Content-Type: text/html" print print "<html><head><title>books</title></head>" print "<body>" print "<h1>books</h1>" print "<ul>" connection = MySQLdb.connect( user='me', passwd='letmein', db='my_db') cursor = connection.cursor() cursor.execute("select name FROM books ORDER BY pub_date DESC LIMIT 10") for row in cursor.fetchall(): print "<li>%s</li>" % row[0] print "</ul></body></html>" connection.close() Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

4 Wady podej±cia Dlaczego musimy si ª czy w ten sposób z baz danych? Czy sami powinni±my pami ta o Content-Type i zamkni ciu bazy danych? Jak u»ywa tego samego kodu w ró»nych konguracjach? Co ma robi projektant stron, nie znaj cy pythona? Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

5 PHP "gg:mysql php example" $chandle = mysql_pconnect("localhost", $username, $password) or die("connection Failure to Database"); session_register("database"); $database=$query_string; mysql_select_db($database, $chandle) or die ("Database not found."); $tablelist=mysql_list_tables($database); echo "<H3>Available Tables in the ", $database, " Database:</ echo "<UL>"; $table = 0; while ($table < mysql_num_rows($tablelist)) {...$... Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

6 Filozoa Model Zawiera opis danych (baza danych) Widok Logika wy±wietlania Mapowanie Który url uruchamia któr funkcj widoku (odpowiednik kontrolera) Szablon Opisuje jak to wy±wietla Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

7 Model # models.py (the database tables) from django.db import models class Book(models.Model): name = models.charfield(maxlength=50) pub_date = models.datefield() Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

8 Widok # views.py (the business logic) from django.shortcuts import render_to_response from models import Book def latest_books(request): book_list = Book.objects.order_by('-pub_date')[:10] return render_to_response('latest_books.html', {'book_list': book_list}) Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

9 Mapowanie # urls.py (the URL configuration) from django.conf.urls.defaults import * import views urlpatterns = patterns('', (r'latest/$', views.latest_books), ) Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

10 Szablon # latest_books.html (the template) <html><head><title>books</title></head> <body> <h1>books</h1> <ul> {% for book in book_list %} <li>{{ book.name }}</li> {% endfor %} </ul> </body></html> Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

11 Jak uruchomi Django? Potrzebny jest python Virtualenv instalacja django, South, django-debug-toolbar django-admin.py startproject mysite mysite/manage.py mysite/mysite/ init.py mysite/mysite/settings.py mysite/mysite/urls.py mysite/mysite/wsgi.py python manage.py runserver :8080 (lokalnie) python manage.py runserver :8080 (publicznie) Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

12 Najprostsza aplikacja from django.http import HttpResponse import datetime def current_datetime(request): now = datetime.datetime.now() html = "<html><body>it is now %s.</body></html>" % now return HttpResponse(html) Ale sk d system wie,»e t funkcj nale»y uruchomi? Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

13 Mapowanie aplikacji from django.conf.urls.defaults import * from mysite.views import current_datetime urlpatterns = patterns('', (r'^time/$', current_datetime), ) Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

14 Wyra»enia regularne. (kropka) cokolwiek \d cyfra [A Z] wielka litera [a z] maªa litera [A Za z] jakakolwiek litera + jeden lub wi cej * zero lub wi cej 1,3 mi dzy jeden a trzy Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

15 Jak to dziaªa technicznie Django importuje settings.py Ustawia ROOT_URLCONF UrlConf odpowiada za przekazanie» dania do widoku (mamy sªabe wi zania) Widok odpowiada za zwrócenie HttpResponse Naprawd to jest odrobink bardziej skomplikowane Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

16 Dynamiczne URL mapowanie from django.conf.urls.defaults import * from mysite.views import current_datetime, hours_ahead urlpatterns = patterns('', (r'^time/$', current_datetime), (r'^time/plus/(\d{1,2})/$', hours_ahead), ) Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

17 Dynamiczne URL obsªuga def hours_ahead(request, offset): offset = int(offset) dt = datetime.datetime.now() + datetime.timedelta(hours=offset) html = "<html><body>in %s hour(s), it will be %s.</body></html>" % (offset, dt) return HttpResponse(html) Komunikaty o bª dach s sensowne. Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

18 Szablony 1 <html> <head><title>ordering notice</title></head> <body> <p>dear {{ person_name }},</p> <p>thanks for placing an order from {{ company }}. It's scheduled to ship on {{ ship_date date:"f j, Y" }}.</p> <p>here are the items you've ordered:</p> <ul> {% for item in item_list %} <li>{{ item }}</li> {% endfor %} </ul> Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

19 Szablony 2 {% if ordered_warranty %} <p>your warranty information will be included in the packaging.</p> {% endif %} <p>sincerely,<br />{{ company }}</p> </body> </html> Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

20 Szablony 3 >>> from django.template import Context, Template >>> t = Template("My name is {{ name }}.") >>> c = Context({"name": "Stephane"}) >>> t.render(c) 'My name is Stephane.' Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

21 Szablony 4 >>> from django.template import Template, Context >>> t = Template('Hello, {{ name }}') >>> print t.render(context({'name': 'John'})) Hello, John >>> print t.render(context({'name': 'Julie'})) Hello, Julie >>> print t.render(context({'name': 'Pat'})) Hello, Pat Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

22 Filtry (cz ± ) {{ name lower }} {{ my_text escape linebreaks }} {{ bio truncatewords:"30" }} {{ pub_date date:"f j, Y" }} {{ value cut:" " }} {{ value default:"nothing" }} {{ value default_if_none:"nothing" }} {{ value dictsort:"name" }} {{ value floatformat:3 }} {{ value urlize }} {{ value yesno:"yeah,no,maybe" }} Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

23 Tag if w szablonie {% if today_is_weekend %} <p>welcome to the weekend! {% else %} <p>get back to work.</p> {% endif %} mo»na u»y and, or, not pusta lista ([]), tupla (()), sªownik ({}), string (), zero (0), i None s False nie ma nawiasów i ª czenia or i and Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

24 Tag for w szablonie {% for country in countries %} <h1>{{ country.name }}</h1> <ul> {% for city in country.city_list %} <li>{{ city }}</li> {% endfor %} </ul> {% endfor %} Z fora nie mo»na wyskoczy Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

25 W tagu for s dost pne forloop.counter licznik forloop.counter0 licznik o bazie 0 forloop.revcounter licznik odwrotny forloop.revcounter0 licznik odwrotny o bazie 0 forloop.rst czy pierwszy forloop.last czy ostatni forloop.parentloop referencja do wy»szego forloopa Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

26 Inne rzeczy {% ifequal variable 1 %} {% ifequal variable 1.23 %} {% ifnequal variable 'foo' %} {% ifnequal variable "foo" %} {# This is a comment #} Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

27 Escape {% autoescape on %} {{ body }} {% endautoescape %} {% load cycle from future %} % for o in some_list %} <tr class="{% autoescape off %} {% cycle rowvalue1 rowvalue2 %} {% endautoescape %}">... </tr> {% endfor %} Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

28 Regroup cities = [{'name': 'Mumbai', 'population': '19,000,000', 'count {'name': 'Calcutta', 'population': '15,000,000', 'country': {'name': 'New York', 'population': '20,000,000', 'country': {'name': 'Chicago', 'population': '7,000,000', 'country': ' {'name': 'Tokyo', 'population': '33,000,000', 'country': 'J {% regroup cities by country as country_list %} <ul>{% for country in country_list %} <li>{{ country.grouper }} <ul> {% for item in country.list %} <li>{{ item.name }}: {{ item.population }}</li> {% endfor %} </ul> </li> {% endfor %}</ul> Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

29 URL {% url 'path.to.some_view' v1 v2 %} {% url 'path.to.some_view' arg1=v1 arg2=v2 %} url: ('^client/(\d+)/$', 'app_views.client') szablon: {% url 'app_views.client' client.id %} Przerwa Dok d to zmierza? Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

30 Load polls/ models.py templatetags/ init.py poll_extras.py views.py poll_extras.py: from django import template register = template.library() W szablonie: {% load poll_extras %} Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

31 Wªasny ltr W szablonie {{ somevariable cut:"0" }} ====== def cut(value, arg): """Removes all values of arg from the given string""" return value.replace(arg, '') register.filter('cut', cut) === albo def cut(value, arg): return value.replace(arg, '') Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

32 Wªasny tag 1 <p>the time is {% current_time "%Y-%m-%d %I:%M %p" %}.</p> ====== def do_current_time(parser, token): try: # split_contents() knows not to split quoted strings. tag_name, format_string = token.split_contents() except ValueError: raise template.templatesyntaxerror("%r \ tag requires a single argument" % \ token.contents.split()[0]) if not (format_string[0] == format_string[-1] \ and format_string[0] in ('"', "'")): raise template.templatesyntaxerror( "%r tag's argument should be in quotes" % tag_name) return CurrentTimeNode(format_string[1:-1]) Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

33 Wªasny tag 2 <p>the time is {% current_time "%Y-%m-%d %I:%M %p" %}.</p> ====== class CurrentTimeNode(template.Node): def init (self, format_string): self.format_string = format_string def render(self, context): return datetime.datetime.now().strftime(self.format_string) ===== register.tag('current_time', do_current_time) Dlaczego tak? Podziaª na kompilacj i wykonanie ma na celu przyspieszenie systemu. Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

34 Wªasny tag 3 W tki Tagi: proste, przypisa«, bloków django/template/defaulttags.py Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

35 Dziedziczenie szablonów 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="en"> <head><title>{% block title %}{% endblock %}</title></head> <body> <h1>my helpful timestamp site</h1> {% block content %}{% endblock %} {% block footer %} <hr> <p>thanks for visiting my site.</p> {% endblock %} </body> </html> Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

36 Dziedziczenie szablonów 2 {% extends "base.html" %} {% block title %}The current time{% endblock %} {% block content %} <p>it is now {{ current_date }}.</p> {% endblock %} {% extends "base.html" %} {% block title %}Future time{% endblock %} {% block content %} <p>in {{ hour_offset }} hour(s), it will be {{ next_time }}.</p> {% endblock %} </html> Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

37 Szablony staticles {% load staticfiles %} <link rel="stylesheet" type="text/css" href="{% static 'polls/style.css' %}" /> collectstatic django-admin.py collectstatic Zbiera wszystkie pliki statyczne projektu do STATIC_ROOT. Pliki mog by serwowane przez zewn trzny serwer. Krzysztof Ciebiera Serwer WWW na przykªadzie Django cz.1 13 marca / 37

Zaawansowany kurs języka Python

Zaawansowany kurs języka Python Środowisko Django początki 10 stycznia 2014 Plan wykładu 1 2 Plan wykładu 1 2 Co to jest Django Oparty o Pythona framework do tworzenia aplikacji internetowych. Co to jest Django Oparty o Pythona framework

Bardziej szczegółowo

Kurs rozszerzony języka Python

Kurs rozszerzony języka Python Środowisko Django początki 5 stycznia 2018 Plan wykładu 1 2 Plan wykładu 1 2 Co to jest Django Oparty o Pythona framework do tworzenia aplikacji internetowych. Co to jest Django Oparty o Pythona framework

Bardziej szczegółowo

Laboratorium Kierunki Rozwoju oprogramowania REST, Django

Laboratorium Kierunki Rozwoju oprogramowania REST, Django Laboratorium Kierunki Rozwoju oprogramowania REST, Django 1. Instalacja oprogramowania: sudo apt-add-repository universe && sudo apt-get upgrade sudo apt-get install python-pip -y sudo pip2 install django==1.9.2

Bardziej szczegółowo

Laboratorium 2. def detail(request, question_id): return HttpResponse("Patrzysz na pytanie %s." % question_id)

Laboratorium 2. def detail(request, question_id): return HttpResponse(Patrzysz na pytanie %s. % question_id) Laboratorium 2 1. Tworzenie widoków dla użytkownika. nazwa_aplikacji/views.py def detail(request, question_id): return HttpResponse("Patrzysz na pytanie %s." % question_id) def results(request, question_id):

Bardziej szczegółowo

Chatter Aplikacja internetowa

Chatter Aplikacja internetowa - 1 - Chatter Aplikacja internetowa Opis: Zastosowanie Pythona i frameworka Django (wersja 1.6.5) do stworzenia aplikacji internetowej Chatter; prostego czata, w którym zarejestrowani użytkownicy będą

Bardziej szczegółowo

pawel.rajba@gmail.com, http://kursy24.eu/

pawel.rajba@gmail.com, http://kursy24.eu/ pawel.rajba@gmail.com, http://kursy24.eu/ Wprowadzenie, struktura Podstawy Twig Adres i nawigacja Request, Response i parametry Ciasta, sesje i flash messages Model i baza danych Formularze Security Ilustracje

Bardziej szczegółowo

Zrąb webowy dla perfekcjonistów z terminami. autor: Kamil Adamczyk

Zrąb webowy dla perfekcjonistów z terminami. autor: Kamil Adamczyk Zrąb webowy dla perfekcjonistów z terminami autor: Kamil Adamczyk 1 Django napisany w Pythonie DRY czyli zasada nie powtarzaj się w odniesieniu do tworzenia aplikacji opensource'owy zrąb służący do tworzenia

Bardziej szczegółowo

Modele. Najcz. Metoda unicode definiuje sposób wyświetlania obiektu w postaci tekstowej. BooleanField - pole logiczne, True/False

Modele. Najcz. Metoda unicode definiuje sposób wyświetlania obiektu w postaci tekstowej. BooleanField - pole logiczne, True/False Ściaga z Django Modele 1 from django.db import models from django.contrib.auth.models import User 4 class Story(models.Model): 5 title = models.charfield(max_length=100, null=false, blank=false) 6 description

Bardziej szczegółowo

Kurs rozszerzony języka Python

Kurs rozszerzony języka Python Środowisko Django, cz. 2 12 stycznia 2018 Plan wykładu 1 2 Trochę teorii Obsługa żądań GET Obiekty formularzowe 3 Zarządzanie sesjami Polonizacja 4 Testy jednostkowe Symulowanie klienta Plan wykładu 1

Bardziej szczegółowo

WICKET VS. DJANGO. Leszek Gawron vs. Michał Leszczyński

WICKET VS. DJANGO. Leszek Gawron vs. Michał Leszczyński WICKET VS. DJANGO Leszek Gawron vs. Michał Leszczyński 0. Główne ficze 1. Środowisko developerskie AGENDA 2. Uruchomienie projektów 3. Warstwa DAO/serwisów 4. Tworzenie UI 5. Templating 7. i18n 8. Reusability

Bardziej szczegółowo

MVC w praktyce tworzymy system artykułów. cz. 1

MVC w praktyce tworzymy system artykułów. cz. 1 MVC w praktyce tworzymy system artykułów. cz. 1 Tworząc różnego rodzaju aplikacje natrafiamy na poważny problem utrzymania dobrej organizacji kodu przejrzystej oraz łatwej w rozbudowie. Z pomocą przychodzą

Bardziej szczegółowo

Serwer WWW na przykªadzie Django

Serwer WWW na przykªadzie Django Serwer WWW na przykªadzie Django formularze, widoki, sesje, u»ytkownicy 19 marca 2014 URLe Formularze Widoki generyczne klasowe Ciasteczka Sesje U»ytkownicy Routing from django.conf.urls import patterns

Bardziej szczegółowo

Programowanie i projektowanie obiektowe

Programowanie i projektowanie obiektowe Programowanie i projektowanie obiektowe CherryPy, Genshi Paweł Daniluk Wydział Fizyki Jesień 2016 P. Daniluk(Wydział Fizyki) PO w. IX Jesień 2016 1 / 20 Aplikacje webowe Podejście standardowe Serwer (np.

Bardziej szczegółowo

Serwer WWW na przykªadzie Django cz.3

Serwer WWW na przykªadzie Django cz.3 Serwer WWW na przykªadzie Django cz.3 Krzysztof Ciebiera 20 kwietnia 2010 Krzysztof Ciebiera () Serwer WWW na przykªadzie Django cz.3 20 kwietnia 2010 1 / 34 1 Formularze 2 Ciasteczka 3 Sesje 4 U»ytkownicy

Bardziej szczegółowo

Szkielety tworzenia aplikacji

Szkielety tworzenia aplikacji Szkielety tworzenia aplikacji dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 2017/2018 Kwestie organizacyjne Kontakt: mail: andrzej.grosser@icis.pcz.pl

Bardziej szczegółowo

Aplikacje WWW. Krzysztof Ciebiera. 3 kwietnia 2014

Aplikacje WWW. Krzysztof Ciebiera. 3 kwietnia 2014 Aplikacje WWW Krzysztof Ciebiera 3 kwietnia 2014 Bezpieczeństwo Clickjacking CSRF Cross site scripting (XSS) Migracje ContentType Tłumaczenia Testowanie - RequestFactory Clickjacking Użytkownik odwiedza

Bardziej szczegółowo

Jak okiełznać frontend w Django? Piotr Maliński www.python.rk.edu.pl

Jak okiełznać frontend w Django? Piotr Maliński www.python.rk.edu.pl Jak okiełznać frontend w Django? Piotr Maliński www.python.rk.edu.pl Problemy frontendu Trudne testowanie i debugowanie Różne przeglądarki Różne ustawienia przeglądarek Urządzenia dotykowe Przekazywanie

Bardziej szczegółowo

MVC w praktyce tworzymy system artykułów. cz. 2

MVC w praktyce tworzymy system artykułów. cz. 2 MVC w praktyce tworzymy system artykułów. cz. 2 W drugiej części artykułu o wzorcu MVC stworzymy część skryptu, odpowiedzialną za obsługę kategorii. Tworzymy kontroler kategorii Na początek stwórzmy plik

Bardziej szczegółowo

Programowanie funkcyjne w Pythonie

Programowanie funkcyjne w Pythonie Programowanie funkcyjne w Pythonie Koªo DSG 2013 Konrad Siek konrad.siek@cs.put.edu.pl dsg.cs.put.poznan.pl Paradygmat funkcyjny Paradygmat = sposób my±lenia o problemach Paradygmat funkcyjny Paradygmat

Bardziej szczegółowo

Kurs rozszerzony języka Python

Kurs rozszerzony języka Python Środowisko Django, cz. 3 19 stycznia 2018 Plan wykładu 1 2 Konstrukcja formularzy Walidacja i zapis 3 Ograniczenie dostępu 4 Plan wykładu 1 2 Konstrukcja formularzy Walidacja i zapis 3 Ograniczenie dostępu

Bardziej szczegółowo

Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter

Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter Konfiguracja i przygotowanie przykładowej aplikacji opartej o model Model-View- Controller Konfiguracja frameworka Zainstaluj na serwerze

Bardziej szczegółowo

Testy aplikacji webowych

Testy aplikacji webowych Testy aplikacji webowych 13 kwietnia 2016 Testy aplikacji webowych 13 kwietnia 2016 1 / 26 1 Ogólnie 2 Django Baza danych Widoki Zaawansowane 3 Selenium 4 Testy wydajno±ciowe 5 Test Driven Developement

Bardziej szczegółowo

Szkielety tworzenia aplikacji

Szkielety tworzenia aplikacji Szkielety tworzenia aplikacji dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/14 Kwestie organizacyjne Kontakt: mail: andrzej.grosser@icis.pcz.pl

Bardziej szczegółowo

Podstawy (X)HTML i CSS

Podstawy (X)HTML i CSS Inżynierskie podejście do budowania stron WWW momat@man.poznan.pl 2005-04-11 1 Hyper Text Markup Language Standardy W3C Przegląd znaczników Przegląd znaczników XHTML 2 Cascading Style Sheets Łączenie z

Bardziej szczegółowo

Zaawansowany kurs języka Python

Zaawansowany kurs języka Python 13 grudnia 2013 Plan wykładu 1 2 Wersje Cechy Plan wykładu 1 2 Wersje Cechy Schemat sieci HTTP, POP3, SMTP, FTP Application layer Transport layer TCP, UDP Internet Protokół UDP Cechy protokołu Protokół

Bardziej szczegółowo

Dokumentacja. Realizacja w portalu kalkulatora simple. (dane wprowadzane z klawiatury).

Dokumentacja. Realizacja w portalu kalkulatora simple. (dane wprowadzane z klawiatury). Dokumentacja Realizacja w portalu kalkulatora simple (dane wprowadzane z klawiatury). Krzysztof Opalski Spis treści I Ogólne informacje o kalkulatorze 2 1 Struktura projektu 2 2 Schemat działania kalkulatora

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Język PHP Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) BDiUS w. VIII Jesień 2013 1 / 43 Plan wykładu 1 Język PHP 2 Składnia PHP 3 Dostęp do bazy danych

Bardziej szczegółowo

Lista ToDo Aplikacja internetowa

Lista ToDo Aplikacja internetowa - 1 - Lista ToDo Aplikacja internetowa Opis: Realizacja prostej listy ToDo (lista zadań do zrobienia), jako aplikacji internetowej, z wykorzystaniem Pythona i frameworka Flask w wersji 0.10.1. Autorzy:

Bardziej szczegółowo

media Blitz wydajne sytemy szablonów

media Blitz wydajne sytemy szablonów Blitz wydajne sytemy szablonów Dlaczego stosować szablony? MVC Kontroler Model Widok Co to jest Blitz? Rozszerzenie PHP stworzone przez Alexey A. Rybak a. Regularnie rozwijany od 2005 roku. Szybki i lekki

Bardziej szczegółowo

PHP zaawansowane programowanie

PHP zaawansowane programowanie Programowanie Aplikacji Internetowych Wykład 7 PHP zaawansowane programowanie Opracował dr inż. Dariusz Trawicki Gdańsk 12.01.2011 1 PHP zaawansowane programowanie Wzorce projektowe Wzorzec MVC Warstwa

Bardziej szczegółowo

a) ile wynosiła populacja najbardziej i najmniej ludnego z województw (oraz jakie były ich nazwy)

a) ile wynosiła populacja najbardziej i najmniej ludnego z województw (oraz jakie były ich nazwy) Spis treści 1 TI:WTBD/Ćwiczenia 14 1.1 Sprawdzian 2 - SQL. 1.1.1 Grupa 1 1.1.2 przykład rozwiązania dla zadania gr. 1 1.1.3 Grupa 2 1.1.4 przykład rozwiązania dla gr. 2 TI:WTBD/Ćwiczenia 14 Sprawdzian

Bardziej szczegółowo

NoSQL Not Only SQL: CouchDB. I.Wojnicki, NoSQL. Apache CouchDB has started. Time to relax. Przetwarzanie dokumentów i widoków.

NoSQL Not Only SQL: CouchDB. I.Wojnicki, NoSQL. Apache CouchDB has started. Time to relax. Przetwarzanie dokumentów i widoków. Igor Wojnicki (AGH, KIS) PHP 23 października 2016 1 / 29 NoSQL Not Only SQL: CouchDB Apache CouchDB has started. Time to relax. Przetwarzanie dokumentów i widoków. Igor Wojnicki Katedra Informatyki Stosowanej,

Bardziej szczegółowo

I.Wojnicki, Tech.Inter.

I.Wojnicki, Tech.Inter. Igor Wojnicki (AGH, KA) Frameworks 28 maja 2012 1 / 31 Frameworks oraz Serwery Aplikacji Igor Wojnicki Katedra Automatyki Akademia Górniczo-Hutnicza w Krakowie 28 maja 2012 Igor Wojnicki (AGH, KA) Frameworks

Bardziej szczegółowo

Django. Æwiczenia praktyczne

Django. Æwiczenia praktyczne Django. Æwiczenia praktyczne Autor: Piotr Maliñski ISBN: 978-83-246-1888-0 Format: A5, stron: 88 Wykorzystaj mo liwoœci Django w swoim projekcie! Jak zainstalowaæ Django? Jak skonfigurowaæ framework i

Bardziej szczegółowo

(kod ten służy wprowadzeniu definicji mediany, nie jest to optymalna ani nawet szczególnie dobra implementacja obliczania mediany w praktyce!

(kod ten służy wprowadzeniu definicji mediany, nie jest to optymalna ani nawet szczególnie dobra implementacja obliczania mediany w praktyce! Spis treści 1 TI:WTBD/Kolokwium Poprawkowe 1.1 zadanie 1 1.1.1 1.2 zadanie 2 1.2.1 1.3 zadanie 3 1.3.1 TI:WTBD/Kolokwium Poprawkowe zadanie 1 Medianę sekwencji liczb można zdefiniować za pomocą następującego

Bardziej szczegółowo

Zaawansowany kurs języka Python

Zaawansowany kurs języka Python 5 stycznia 2012 Plan wykładu 1 2 Cechy Schemat sieci HTTP, POP3, SMTP, FTP Application layer Transport layer TCP, UDP Internet Protokół UDP Cechy protokołu Protokół jest bardzo prosty Brak kontroli dostarczonych

Bardziej szczegółowo

Wątki i komunikacja między nimi w języku Python

Wątki i komunikacja między nimi w języku Python Wątki i komunikacja między nimi w języku Python Czyli kolejny poziom abstrakcji. Michał Mazurek mazurek.michal@gmail.com http://www.ifresearch.pl January 14, 2008 Python? A co to? Python Interpretowany,

Bardziej szczegółowo

Wykład 5_2 Arkusze stylów dziedziczenie. Technologie internetowe Zofia Kruczkiewicz

Wykład 5_2 Arkusze stylów dziedziczenie. Technologie internetowe Zofia Kruczkiewicz Wykład 5_2 Arkusze stylów dziedziczenie Technologie internetowe Zofia Kruczkiewicz 1. Dziedziczenie stylów Zagnieżdżone elementy dziedziczą styl od elementów zagnieżdżających. Dziedziczenie stylu wynika

Bardziej szczegółowo

Programowanie wielowarstwowe i komponentowe

Programowanie wielowarstwowe i komponentowe Programowanie wielowarstwowe i komponentowe JSF 2 wprowadzenie Konfiguracja Eclipse - dodanie szablonu XHTML dla potrzeb JSF 1. Otwórz menu Window/Preferences. Następnie z drzewka wybierz Web/HTML Files/Editor/Templates.

Bardziej szczegółowo

Wprowadzenie do framework a Symfony

Wprowadzenie do framework a Symfony Wprowadzenie do framework a Symfony mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Bazuje na wzorcu projektowym MVC Niezależność od systemu bazodanowego Programowanie zorientowane

Bardziej szczegółowo

Laboratorium 6 Tworzenie bloga w Zend Framework

Laboratorium 6 Tworzenie bloga w Zend Framework Laboratorium 6 Tworzenie bloga w Zend Framework Przygotowanie bazy danych 1. Wykonaj skrypt blog.sql, który założy w bazie danych dwie tabele oraz wpisze do nich przykładowe dane. Tabela blog_uzytkownicy

Bardziej szczegółowo

Facelets ViewHandler

Facelets ViewHandler JSF i Facelets Wprowadzenie JSP (JavaServer Pages) są natywną i najczęściej używaną technologią do tworzenia warstwy prezentacyjnej dla JSF (JavaServer Faces) Istnieją alternatywne technologie opisu wyglądu

Bardziej szczegółowo

Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Uwierzytelnianie użytkowników, Obiekt session, Silniki

Bardziej szczegółowo

Poznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner 2013-03-11

Poznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner 2013-03-11 Poznaj ASP.NET MVC Kamil Cieślak Microsoft Student Partner 2013-03-11 Agenda Czym jest ASP.NET MVC? Wzorzec MVC ASP.NET MVC vs inne frameworki Bazy danych w ASP.NET MVC Jak zacząć? 2 Czym jest ASP.NET

Bardziej szczegółowo

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Statyczne strony HTML Wczytanie statycznej strony HTML sprowadza się do odebrania żądania przez serwer, odnalezienia właściwego pliku

Bardziej szczegółowo

OPT Open Power Template. System szablonów OPT. Przykładowy skrypt oraz szablon OPT OPT API

OPT Open Power Template. System szablonów OPT. Przykładowy skrypt oraz szablon OPT OPT API OPT Open Power Template System szablonów OPT System szablonów PHP5 Niektóre możliwości: Cache Nagłówki HTTP oraz kompresja Rozszerzalność Struktury kontrolne Wysokopoziomowe struktury Ułatwienia Wysoka

Bardziej szczegółowo

Przegląd języka Python. Łukasz Anwajler

Przegląd języka Python. Łukasz Anwajler Przegląd języka Python Łukasz Anwajler lukasz.anwajler@pjwstk.edu.pl Nie wierzcie mi na słowo Zaraz zobaczymy: czym jest Python dlaczego warto go używać jakie ma zastosowania gdzie z niego korzystają jakzacząć

Bardziej szczegółowo

Wprowadzenie do psql i SQL. Język komend psql. Podstawy instrukcji SELECT

Wprowadzenie do psql i SQL. Język komend psql. Podstawy instrukcji SELECT Wprowadzenie do psql i SQL 1 Bazy Danych Wykład p.t. Wprowadzenie do psql i SQL. Język komend psql. Podstawy instrukcji SELECT Antoni Ligęza ligeza@agh.edu.pl http://galaxy.uci.agh.edu.pl/~ligeza Wykorzystano

Bardziej szczegółowo

Zagadnienia. Konstrukcja bibliotek mysql i mysqli w PHP. Dynamiczne generowanie stron. Połączenie, zapytanie i sesja

Zagadnienia. Konstrukcja bibliotek mysql i mysqli w PHP. Dynamiczne generowanie stron. Połączenie, zapytanie i sesja Zagadnienia Konstrukcja bibliotek mysql i mysqli w PHP Dynamiczne generowanie stron Połączenie, zapytanie i sesja Podstawowe opakowanie dla zapytań SQL w PHP Zarządzania uŝytkownikami Włamania do mysql

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł

Bardziej szczegółowo

Programowanie zorientowane obiektowo. Mateusz Kołecki

Programowanie zorientowane obiektowo. Mateusz Kołecki Programowanie zorientowane obiektowo Mateusz Kołecki Plan MVC Wstęp Separacja odpowiedzialnośći Antyprzykład Dobry przykład Wady/zalety MVC MVC to tylko początek - wzorce projektowe Dlaczego chcemy używać

Bardziej szczegółowo

Przykład zastosowania notacji UML dla realizacji zastosowania wzorca Mediator (materiały dla studentów na prawach rękopisu)

Przykład zastosowania notacji UML dla realizacji zastosowania wzorca Mediator (materiały dla studentów na prawach rękopisu) Dr inż. Wojciech Koziński maj 2007 ZS ISEP WE PW Przykład zastosowania notacji UML dla realizacji zastosowania wzorca Mediator (materiały dla studentów na prawach rękopisu) Opis systemu (wzorca Mediator):

Bardziej szczegółowo

INSTALACJA I KONFIGURACJA SERWERA PHP.

INSTALACJA I KONFIGURACJA SERWERA PHP. LABORATORIUM 0 INSTALACJA I KONFIGURACJA SERWERA PHP. W celu poprawnego wykonywania zadań na laboratorium konieczne jest zainstalowanie na komputerze wyposażonym w system operacyjny Windows następujących

Bardziej szczegółowo

Podstawy wzorca MVC 2011-10-18 MODEL KON- TROLER WIDOK. Odpowiada za wyświetlenie danych użytkownikowi. Zawiera dane aplikacji oraz jej logikę.

Podstawy wzorca MVC 2011-10-18 MODEL KON- TROLER WIDOK. Odpowiada za wyświetlenie danych użytkownikowi. Zawiera dane aplikacji oraz jej logikę. Podstawy wzorca MVC MODEL KON- TROLER WIDOK Zawiera dane aplikacji oraz jej logikę. MODEL WIDOK Odpowiada za wyświetlenie danych użytkownikowi KON- TROLER KON- TROLER MODEL WIDOK Jedyna część aplikacji,

Bardziej szczegółowo

Wstęp. Ale po co? Implementacja

Wstęp. Ale po co? Implementacja Wstęp Mechanizm sesji jest jedną z podstawowych form komunikacji pomiędzy skryptami jako jedyna tablica z super globalnych nie jest widoczna dla użytkownika. Mimo, że PHP od wersji 4 staje się coraz bardziej

Bardziej szczegółowo

Konfiguracja po czenia pomi dzy serwerem OPC, a sterownikiem PLC dla sieci Profibus

Konfiguracja po czenia pomi dzy serwerem OPC, a sterownikiem PLC dla sieci Profibus Konfiguracja po czenia pomi dzy serwerem OPC, a sterownikiem PLC dla sieci Profibus 1 I. Konfiguracja stacji PC. 1. Po uruchomieniu SIMATIC Manager tworzymy nowy projekt wybieraj c menu File nast pnie

Bardziej szczegółowo

Kompozycja Proceduralna

Kompozycja Proceduralna Kompozycja Proceduralna Temat 11: Mechanizm szablonów stron dynamicznych na przykładzie PHP Piotr Habela Polsko-Japońska Wyższa Szkoła Technik Komputerowych 1 Plan prezentacji Role autorów w tworzeniu

Bardziej szczegółowo

Studium Podyplomowe Aplikacje i Us ugi Internetowe Tworzenie witryn internetowych 2012/2013. CakePHP część II

Studium Podyplomowe Aplikacje i Us ugi Internetowe Tworzenie witryn internetowych 2012/2013. CakePHP część II 1. Dodatkowe elementy aplikacji CakePHP część II Przygotowany w poprzedniej części projekt prezentuje podstawowe elementy aplikacji opartej o CakePHP takie jak: klasy modelu, kontrolery, widoki. W tej

Bardziej szczegółowo

Szkielety tworzenia aplikacji. Dr inż. Andrzej Grosser

Szkielety tworzenia aplikacji. Dr inż. Andrzej Grosser Szkielety tworzenia aplikacji Dr inż. Andrzej Grosser 2017 2 Spis treści 1. Podstawy Django 5 1.1. Instalacja Django................................ 5 1.2. Tworzenie projektu...............................

Bardziej szczegółowo

Powinieneś wiedzieć... Podstawowa znajomość PHP i wzorca MVC. Działają na wielu platformach i architekturach.

Powinieneś wiedzieć... Podstawowa znajomość PHP i wzorca MVC. Działają na wielu platformach i architekturach. Python kontra PHP czyli węże i słonie Trend web 2.0 przyniósł ze sobą nie tylko nowe podejście do tworzenia stron internetowych, ale również nowe technologie i narzędzia. Wielu z nas słyszało lub miało

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH

WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH Klasa: 3TIR - Technik informatyk Program: 351203 Wymiar: 4 h tygodniowo Podręcznik: Kwalifikacja E.14 Programowanie

Bardziej szczegółowo

Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH

Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH Michał Bujacz bujaczm@p.lodz.pl B9 Lodex 207 godziny przyjęć: środy i czwartki 10:00-11:00 http://www.eletel.p.lodz.pl/bujacz/ 1 Pytania weryfikacyjne:

Bardziej szczegółowo

Dynamiczne generowanie pliku PDF

Dynamiczne generowanie pliku PDF www.math.uni.lodz.pl/ radmat Do dynamicznego generowania pliku PDF wykorzystamy klasę FPDF. Załóżmy, że mamy formularz składający się z jednolinijkowego pola tekstowego, z którego będziemy pobierać np.

Bardziej szczegółowo

Tworzenie aplikacji w Django

Tworzenie aplikacji w Django Tworzenie aplikacji w Django Warsztaty IT, +48 603 604 291, szkolenia@warsztatyit.pl http://warsztatyit.pl/ Tworzenie aplikacji w Django Ćwiczenia 1 Poczatki projektu 1.1 Utwórz projekt gazetr 1.2 Skonfiguruj

Bardziej szczegółowo

Dlaczego PHP? - zalety

Dlaczego PHP? - zalety Dlaczego PHP? - zalety (+) bezpieczeństwo kodu - PHP wykonuje się po stronie serwera ( niezależność od przeglądarki) (+) bezpieczeństwo danych - wykorzystanie ssl i HTTPS (+) PHP jako moduł serwera WWW

Bardziej szczegółowo

Metaprogramowanie w Ruby

Metaprogramowanie w Ruby 24 marca 2011 Cechy języka Wieloparadygmatowy Imperatywny Typowanie Silne Dynamiczne Otwarte klasy Interpretowany Wszystko jest obiektem Moduły i mixiny Moduły Moduły pozwalają na łatwe włączanie ich kodu

Bardziej szczegółowo

Aplikacje Internetowe termin dodatkowy

Aplikacje Internetowe termin dodatkowy Aplikacje Internetowe termin dodatkowy dr in». Julian Szyma«ski mgr in». Marek Downar Katedra Architektury Systemów Komputerowych Wydziaª Elektroniki, Telekomunikacji i Informatyki Politechnika Gda«ska

Bardziej szczegółowo

Wykład 12. Programowanie serwera MS SQL 2005 w C#

Wykład 12. Programowanie serwera MS SQL 2005 w C# Wykład 12 Programowanie serwera MS SQL 2005 w C# Budowa procedur składowanych w C# Budowa funkcji składowanych w C# Wykorzystanie funkcji składowanych w C# po stronie klienta Tworzenie typów definiowanych

Bardziej szczegółowo

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3 Modelowanie numeryczne w fizyce atmosfery Sylwester Arabas (ćwiczenia do wykładu dr. hab. inż. Lecha Łobockiego) Instytut Geofizyki, Wydział Fizyki Uniwersytetu Warszawskiego 3. listopada 2011 r. Schemat

Bardziej szczegółowo

Google Web Toolkit. Piotr Findeisen

Google Web Toolkit. Piotr Findeisen Google Web Toolkit Piotr Findeisen findepi@students.mimuw.edu.pl Czym jest GWT kompilator Javy do Javascriptu biblioteki Java/Javascript emulacja części java.lang i java.util webowe okienka narzędzia do

Bardziej szczegółowo

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 8.1, opracowanie materiału: Piotr Nierebiński, Mateusz Turski (na podstawie materiału oryginalnego

Bardziej szczegółowo

Kurs rozszerzony języka Python

Kurs rozszerzony języka Python Wykład 2. 13 października 2017 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 4 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 4 Deklaracja klasy Klasy i obiekty Przykłady class Figura: Pierwsza

Bardziej szczegółowo

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37 Aplikacje bazodanowe Laboratorium 1 Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, 2017 1 / 37 Plan 1 Informacje wst pne 2 Przygotowanie ±rodowiska do pracy 3 Poj cie bazy danych 4 Relacyjne

Bardziej szczegółowo

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI SPIS TREŚCI 1.Dwie metody przekazu danych do serwera 2 2.Metoda GET przykład 3 3.Metoda POST przykład 4 4.Kiedy GET a kiedy POST 5 5.Szablony po co je stosować 7 6.Realizacja szablonu własną funkcją 8

Bardziej szczegółowo

OpenPoland.net API Documentation

OpenPoland.net API Documentation OpenPoland.net API Documentation Release 1.0 Michał Gryczka July 11, 2014 Contents 1 REST API tokens: 3 1.1 How to get a token............................................ 3 2 REST API : search for assets

Bardziej szczegółowo

Kurs języka Python. Wykład 14. Marcin Młotkowski. 25 stycznia 2010. Python i Apache Pythonowe platformy aplikacyjne. Dystrybucja aplikacji w U*IX

Kurs języka Python. Wykład 14. Marcin Młotkowski. 25 stycznia 2010. Python i Apache Pythonowe platformy aplikacyjne. Dystrybucja aplikacji w U*IX Wykład 14. 25 stycznia 2010 1 2 Dystrybucja aplikacji w U*IX Python w aplikacjach serwerowych CGI; FastCGI, SCGI: ulepszone CGI; WSGI: Web Server Gateway Interface mod_python Moduł mod_python Moduł do

Bardziej szczegółowo

s FAQ: 24/PL Data: DD/MM/RRRR

s FAQ: 24/PL Data: DD/MM/RRRR FAQ: 24/PL Data: DD/MM/RRRR Konfiguracja po czenia pomi dzy serwerem OPC, a sterownikiem PLC dla sieci Ethernet 1 FAQ: 24/PL I. Konfiguracja stacji PC. Data: DD/MM/RRRR 1. Po uruchomieniu SIMATIC Manager

Bardziej szczegółowo

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz Budowa aplikacji wielowarstwowych zastosowanie szablonów Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz Przykład 1 Zastosowanie szablonów Tworzenie kopii projektu typu Web Application o nazwie

Bardziej szczegółowo

Internetowe bazy danych

Internetowe bazy danych Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 6 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Kontrola dostępu

Bardziej szczegółowo

Pawel@Kasprowski.pl Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07

Pawel@Kasprowski.pl Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07 PHP i bazy danych Paweł Kasprowski pawel@kasprowski.pl Użycie baz danych Bazy danych używane są w 90% aplikacji PHP Najczęściej jest to MySQL Funkcje dotyczące baz danych używają języka SQL Przydaje się

Bardziej szczegółowo

ROZSZERZAJĄC FUNKCJONALNOŚCI MEMCACHED

ROZSZERZAJĄC FUNKCJONALNOŚCI MEMCACHED ROZSZERZAJĄC FUNKCJONALNOŚCI MEMCACHED Mariusz Gil mariusz.gil@scalability.pl 4Developers 2011, Warszawa BIO 2 CZYM JEST MEMCACHED? 3 DISTRIBUTED HASH TABLE 4 ZASADA DZIAŁANIA cache 1GB cache 1GB memcached

Bardziej szczegółowo

Bazy danych, 4. wiczenia

Bazy danych, 4. wiczenia Bazy danych, 4. wiczenia 2007-10-23 1 Plan zaj PL/SQL, cz ± II: tabele kursory sªu» ce do zmiany danych, procedury, funkcje, pakiety, wyzwalacze. 2 Tabele Deklaracja TYPE t_tab IS TABLE OF VARCHAR(20)

Bardziej szczegółowo

Podstawy programowania w Pythonie

Podstawy programowania w Pythonie Podstawy programowania w Pythonie Wykład 6 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 21 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania

Bardziej szczegółowo

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet Blok 2 - PHP Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Podstawy podstaw, czyli małe wprowadzenie do PHP, Podstawy

Bardziej szczegółowo

How to share data from SQL database table to the OPC Server? Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT.

How to share data from SQL database table to the OPC Server? Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT. Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT How to share data from SQL database table to the OPC Server? ANT tutorial Krok 1: Uruchom ANT Studio i dodaj do drzewka konfiguracyjnego

Bardziej szczegółowo

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3 3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0

Bardziej szczegółowo

Języki programowania wysokiego poziomu. Forum, Blog, Sample DB - wskazówki

Języki programowania wysokiego poziomu. Forum, Blog, Sample DB - wskazówki Języki programowania wysokiego poziomu Forum, Blog, Sample DB - wskazówki Wielokrotne użycie kodu Skrypt może włączać (przez inkluzję) inne skrypty; Służą do tego instrukcje (pseudo-funkcje): - include,

Bardziej szczegółowo

Zrąb JavascriptMVC. Krzysztof Płocharz. 6 kwiecień 2009. Uniwersytet Warszawski

Zrąb JavascriptMVC. Krzysztof Płocharz. 6 kwiecień 2009. Uniwersytet Warszawski Uniwersytet Warszawski 6 kwiecień 2009 Spis Treści 1 MVC Jak to wygląda w JavascriptMVC 2 Prawie jak klasy 3 Hierarchia Widoki Kontrolery Modele 4 Struktura katalogów Generatory kodu Generatory dokumentacji

Bardziej szczegółowo

Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )

Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2 ( $%%) )'20 )*0) 1 / ) Jzyk C++ cz 3 Jarosław Gramacki Instytut Informatyki i Elektroniki # $$%%& ' ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )!" 2 # $$%%& ' ( $%%/,))3 ( %* 2 / 4 ( ( *' *''*,

Bardziej szczegółowo

Kurs rozszerzony języka Python

Kurs rozszerzony języka Python Wykład 1. 6 października 2017 Plan wykładu 1 2 3 4 Plan wykładu 1 2 3 4 Wykładowca: Termin wykładu: piątek, 10:15 12:00, sala 119 Strona wykładu http://www.ii.uni.wroc.pl/ marcinm/dyd/python Materiały

Bardziej szczegółowo

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 3 PHP PHP - cechy PHP (Hypertext Preprocessor) bardzo łatwy do opanowania, prosta składnia, obsługuje wymianę danych z różnymi systemami baz danych pozwala na dynamiczne generowanie

Bardziej szczegółowo

Praca Dyplomowa Magisterska

Praca Dyplomowa Magisterska Internetowa Platform Edukacyjna w Technologii ZOPE Autor: Promotor: Dr in». Adam Doma«ski Politechnika l ska Wydziaª Automatyki, Elektroniki i Informatyki Kierunek Informatyka 22 wrze±nia 2009 Dlaczego

Bardziej szczegółowo

Elementy języka Scheme

Elementy języka Scheme Elementy języka Scheme Historia języka Lisp Historia języka Lisp Wyrażenia i ewaluacja wyrażeń Identyfikatory i wyrażenie let Wyrażenia lambda Definicje globalne Wyrażenia warunkowe Przypisanie Kontynuacje

Bardziej szczegółowo

Środowisko programisty

Środowisko programisty Środowisko programisty 1/35 Środowisko programisty Język Python cz. 3 dr inż. Grzegorz Michalski 7 kwietnia 2014 Środowisko programisty 2/35 Kod samotestujący Tworzenie def t e s t e r ( ) : p r i n t

Bardziej szczegółowo

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia

Bardziej szczegółowo

Dzi kuj za uwag! Spotkania z Pythonem. Cz ± 1 - podstawy - rozwi zania zada« Michaª Alichniewicz. Gda«sk 2014. Studenckie Koªo Automatyków SKALP

Dzi kuj za uwag! Spotkania z Pythonem. Cz ± 1 - podstawy - rozwi zania zada« Michaª Alichniewicz. Gda«sk 2014. Studenckie Koªo Automatyków SKALP Spotkania z Pythonem Cz ± 1 - podstawy - rozwi zania zada«michaª Alichniewicz Studenckie Koªo Automatyków SKALP Gda«sk 2014 Dzi kuj za uwag! Na licencji Creative Commons Attribution-NonCommercial-ShareAlike

Bardziej szczegółowo

Sphinx - system dokumentacji dla Pythona

Sphinx - system dokumentacji dla Pythona Sphinx - system dokumentacji dla Pythona (1/24) Sphinx - system dokumentacji dla Pythona Michał Jaworski docstrings Sphinx - system dokumentacji dla Pythona (2/24) docstrings Sphinx - system dokumentacji

Bardziej szczegółowo

PL/SQL. Zaawansowane tematy PL/SQL

PL/SQL. Zaawansowane tematy PL/SQL PL/SQL Zaawansowane tematy PL/SQL Cele Przypomnienie kursorów Przypomnienie procedur i funkcji składowanych Poznanie pakietów składowanych 2 Bazę danych Oracle możemy traktować jakby była złożona z dwóch

Bardziej szczegółowo

Zaawansowany kurs języka Python

Zaawansowany kurs języka Python Wykład 4. 23 października 2015 Plan wykładu 1 2 Pliki tekstowe Trwałość obiektów CSV Strumienie Plan wykładu 1 2 Pliki tekstowe Trwałość obiektów CSV Strumienie Protokół iteracyjny Producent Umiem dostarczać

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Język PHP Paweł Witkowski Wydział Matematyki, Informatyki i Mechaniki Jesień 2011 P. Witkowski (Wydział Matematyki, Informatyki i Mechaniki) BDiUS w. VIII Jesień 2011 1 /

Bardziej szczegółowo