Budowanie interfejsów do baz danych Wprowadzenie Organizacja zajęć O sobie O Projekcie Termin rozpoczęcia Tematyka (propozycje?) Narzędzia (pendrive lub hosting) 2008 Szczepan Bednarz 2 z 20 Bazy danych : MySQL, PostreSQL, SQLite, Oracle, Informix, msql, Microsoft SQL Server Klient-serwer (porty, gniazda, rurki) Klient? Bazy danych Klient owa, Linux owa, MacOSX Aplikacja bazodanowa, WindowsXP 2008 Szczepan Bednarz 3 z 20 2008 Szczepan Bednarz 4 z 20 1
O SZBD (za Wikipedią ): Interfejs uŝytkownika do DB Niezbędne mechanizmy środki do gromadzenia, utrzymywania i administrowania trwałymi i masowymi zbiorami danych, środki zapewniające spójność i bezpieczeństwo danych, sprawny dostęp do danych (zwykle poprzez język zapytań, np. SQL), środki programistyczne słuŝące do aktualizacji/przetwarzania danych (API dla popularnych języków programowania), jednoczesny dostęp do danych dla wielu uŝytkowników (z reguły realizowany poprzez transakcje), środki pozwalające na regulację dostępu do danych (autoryzację), środki pozwalające na odtworzenie zawartości bazy danych po awarii, środki do zarządzania katalogami, schematami i innymi metadanymi, środki optymalizujące zajętość pamięci oraz czas dostępu (np. indeksy), środki do pracy lub współdziałania w środowiskach rozproszonych. Dodatkowe mechanizmy zarządzanie wersjami i danymi nietrwałymi, przechowywanie i udostępnianie danych multimedialnych, wygodne (wizyjne) środowiska do tworzenia aplikacji, pomosty do współpracy z innymi systemami, wspomaganie dla perspektyw, procedur składowanych i aktywnych reguł, pakiety statystyczne, pakiety dla przeprowadzania analiz (eksploracji danych), pakiety do tworzenia hurtowni danych, środki udostępniające bazę danych w sieci, itd. = Bardzo Dobry Sposób na Przechowywanie, Udostępnianie i Analizę Danych Co to jest UI i po co? Rodzaje: CLI ( czarny ekran, wiersz poleceń, szybkość, cena, elastyczność) GUI ( okienka, wygoda czasem pozorna, np. M$ Access, OpenOfficeBase) (via przeglądarka, j.w.) 2008 Szczepan Bednarz 5 z 20 2008 Szczepan Bednarz 6 z 20 Interfejsy Wikipedia Google Fora dyskusyjne Serwisy informacyjne y aukcyjne Sklepy internetowe propozycje na temat projektu ;) Języki skryptowe CPU, Memory, HDD cena/ilość Wysoki poziom abstrakcji Struktury danych Projektowanie, pielęgnacja kodu, odpluskwianie Obiektowość Biblioteki Specjalizacja OpenSource 2008 Szczepan Bednarz 7 z 20 2008 Szczepan Bednarz 8 z 20 2
Języki skryptowe - OpenSource Darmowe, wolne (LGPL,GPL), bezpieczne, elasyczne Społeczność: fora, grupy dyskusyjne, wiki-doc, spotkania Miliony projektow: SourceForge, RubyForge, Tigris.org, BountySource, BerliOS, JavaForge GNU Savannah, + ciągle powstające nowe serwisy Języki skryptowe Tcl/Tk prostota, rozszerzalność, osadzalność, GUI Perl praktyczny, zabójczo elastyczna i wieloznaczna składnia (PerlGolf) Python - OO PHP specjalnie pod kątem JavaScript specjalnie do wykonywania przez Przeglądarki owe Ruby OO, elegancki, RoR! i wiele wiele innych 2008 Szczepan Bednarz 9 z 20 2008 Szczepan Bednarz 10 z 20 Interfejs = plan wykładów Lektura Model-View- Controller = MVC SQL silnik (było) XHTML (będzie) PHP (będzie) XHTML PHP SZDB HTML / XHTML / CSS webmaster.helion.pl algorytmy.pl/doc/xhtml gajdaw.pl PHP www.webinside.pl/php/kursy http://www.php.net/manual/pl/ 2008 Szczepan Bednarz 11 z 20 2008 Szczepan Bednarz 12 z 20 3
Karta sieciowa, kabel (WIFI?) IP Routing Adresy, DNS Porty y usług Klient Protokół (np. HTTP, FTP, POP) Strony - historia Statyczne (HTML, nie spełnianie standardów, brzydota animowane GIFy ;) Dynamiczne 1 (CGI, SSI) Dynamiczne 2 (XHTML,PHP,ASP,JS,AJAX) 2008 Szczepan Bednarz 13 z 20 2008 Szczepan Bednarz 14 z 20 Serwowanie stron Serwowanie stron Statyczne owa Dynamiczne (CGI, FastCGI) owa Skrypt CGI 2008 Szczepan Bednarz 15 z 20 2008 Szczepan Bednarz 16 z 20 4
Serwowanie stron Bezpieczeństwo Dynamiczne PHP Moduł PHP owa Temat rzeeeeka Bezpieczeństwo skryptów PHP Bezpieczeństwo kodu SQL Najsłabsze ogniwo 2008 Szczepan Bednarz 17 z 20 2008 Szczepan Bednarz 18 z 20 Nie odkrywać koła na nowo! Frameworki (www.phpframeworks.com) Biblioteki (PEAR, PECL, SF itd) Wzorce projektowe (designpatterns) Dostosowanie istniejących rozwiązań CMS (content managment system) Wiki Plugins/AddOns/Modules/Patch/config/ Własne DzierŜawa domeny Hosting (LAMP) Oprogramowanie (własne/opensource/komercyjne) 2008 Szczepan Bednarz 19 z 20 2008 Szczepan Bednarz 20 z 20 5