Porównanie zrębów : Ruby on Rails i Lift
|
|
- Aleksander Kołodziejczyk
- 8 lat temu
- Przeglądów:
Transkrypt
1 Porównanie zrębów : on Rails i Lift Zagadnienia Programowania Obiektowego Wydział Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski
2 Spis treści 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
3 Spis treści 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
4 - wprowadzenie Czym jest? to interpretowany język programowania Powstał w 1995 roku, stworzony przez Yukihiro Matsumoto Podstawa popularnego zrębu on Rails 2005 rok - 2 ksiażki o i RoR najlepiej sprzedawanymi pozycjami z kategorii Programowanie Aktualna stabilna wersja Polecam spróbować w przegladarce:
5 Najważniejsze cechy Rubiego wieloparadygmatowość (funkcyjność, obiektowość, imperatywność, refleksyjność) otwarte oprogramowanie przenośność (Unix, DOS, Windows, Mac OS X, BeOS itd.) wiele implementacji: MRI, YARV, J, Rubinius prosta składnia automatyczne odśmiecanie pamięci przeciażanie operatorów obiektowość
6 Najważniejsze cechy Rubiego c.d. obsługa wyjatków wyrażenia regularne wbudowane w składnię liczby całkowite o dowolnych rozmiarach dodawanie metod do obiektów bloki i lambda wyrażenia Duck typing - dynamiczne typowanie moduły - rodzaj wielodziedziczenia możliwość zmiany praktycznie wszystkiego
7 Składnia Przykład Przypomina Perla, Pythona czy Smalltalka..ale wcięcia nie maja znaczenia Zwięzłe, czytelne programy..dzięki wszechobecnej obiektowości 5. times { p r i n t " W i t a j! " } # to to samo, co : 1. + ( 2 ) # i : 1. send " + ", 2
8 Składnia Przykład Przypomina Perla, Pythona czy Smalltalka..ale wcięcia nie maja znaczenia Zwięzłe, czytelne programy..dzięki wszechobecnej obiektowości 5. times { p r i n t " W i t a j! " } # to to samo, co : 1. + ( 2 ) # i : 1. send " + ", 2
9 Obiektowość Przykład class Person a t t r _ r e a d e r : name, : age def i n i t i a l i z e (name, = name, age end def <=>( person <=> person. age end def to_s " #@name (#@age) " end end
10 Bloki, domknięcia, wyrażenia lambda Przykład 1 search_ engines = %w[ Google Yahoo MSN]. map do engine " h t t p : / / www. " + engine. downcase + ". com" end Przykład 2 lambda { a p a+a } # procedury to o b i e k t y! p = proc { a p a+a } p. c a l l 7 # wynik : 14
11 Mixin-y i dziedziczenie Brak wielodziedziczenia, ale... Przykład class MyArray i n c l u d e Enumerable end
12 Elastyczność Rubiego Przykład class Numeric def plus ( x ) s e l f. + ( x ) end end y = 5. plus 6 # y wynosi t e r a z 11
13 Dodawanie metod do obiektów Przykład class Foo def greet p r i n t " Hello, world! \ n " end end x=foo. new ; y=foo. new class << y def greet p r i n t " Goodbye, world! \ n " end end
14 Spis treści 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
15 Historia Twórca- Martin Odersky Pizza - funkcyjność na JVM (funkcje wysokiego rzędu, klasy generyczne, dopasowywanie wzorców) Generic Java javac "I wanted to start with a clean sheet, and see whether I could design something that s better than Java." Oparty o JVM, integracja z Java (można używać na.net) Poczatek prac: 2002, pierwsza publiczna wersja: 2003, wersja 2.0: 2006, obecnie zbliża się 2.8
16 System typów Statyczne i silne typowanie. Ale kompilator jest inteligentny: Przykład scala > v a l x = " abc " x : java. lang. S t r i n g = abc scala > def add ( i : I n t, j : I n t ) = i + j add : ( I n t, I n t ) I n t
17 Ważne cechy języka Skalowalny- skrypty i wielkie aplikacje, wydajny (jak Java) XML jako część języka Przykłady scala > v a l xml = <div >abc< / div > xml : scala. xml. Elem = <div >abc< / div > Przykład Minimalna składnia, operatory sa metodami scala > v a l x = ( 1 ). + ( 2 ) x : scala. I n t = 3
18 Funkcyjność: funkcje Deklaracja v a l f : I n t => S t r i n g = x => " Number : " + x def w42( f : I n t => S t r i n g ) = f ( 42) Częściowa aplikacja def plus ( a : I n t, b : I n t ) = "Sum i s " + ( a + b ) v a l p = plus (42, _ : I n t )
19 Funkcyjność: domknięcia Przykłady var s t a t e = 1 v a l f = ( i : I n t ) => s t a t e += i f ( 42) / / s t a t e == 43
20 Funkcyjność cd. Parametry typów def append[u >: T](x: U) =... //U musi być nadklasa T def append[u <: T](x: U) =... //U musi być podklasa T Dopasowywanie wzorców Niezmienność (val kontra var)
21 Obiektowość Funkcja też jest obiektem Nie ma typów prostych Przykłady scala > ( 1 ). t o S t r i n g res2 : java. lang. S t r i n g = 1 Obiekt jest obiektowy (a statyczność nie)
22 Trait: Cechy Scali Trait = Interfejs z Javy (kontrakt) + Mixin z Rubiego (częściowa implementacja) bez wielodziedziczenia (linearyzacja) Przykłady class Animal t r a i t Furry extends Animal t r a i t HasLegs extends Animal t r a i t FourLegs extends HasLegs class Cat extends Animal with Furry with FourLegs / / Cat > FourLegged > HasLegs > F u r r y > Animal
23 Współbieżność z aktorami Współbieżność z aktorami Aktor- asynchroniczny komponent odbierajacy, wysyłajacy (actor! msg) i odpowiadajacy (reply()) na wiadomości Aktor to nie watek. Kiedy aktor czeka, watek jest zwalniany. W pamięci mamy kontynuację. Niezmienność => nie potrzeba blokad
24 Spis treści 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
25 Popularność Indeks TIOBE: 1 Java % 2 C % % %
26 Twitter Przykład z prawdziwego świata : 1 "We like that it s such a full featured language, that it s fun to code in." 2 Kiepskie watki, problemy z długo żyjacymi procesami, gorsza wydajność 3 "I think it may just be a property of large systems in dynamic languages, that eventually you end up rewriting your own type system, and you sort of do it badly. You re checking for null values all over the place."
27 Twitter Przykład z prawdziwego świata : 1 Some of the core collection libraries in are not quite up to snuff yet. And apparently they are working on that right now." 2 "It still seems like IDE and editor support is, perhaps not in its infancy, but in its awkward teenage years."
28 Spis treści Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
29 on Rails - filozofia Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych on Rails powstał w 2004 roku, stworzony przez Davida Heinemeiera Hanssona. Filozofia języka opiera się na: DRY - Don t Repeat Yourself Convention over Configuration (Konwencja Ponad Konfiguracja) REST (Representational State Transfer)
30 Lift - Historia Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Twórca Lift jest David Pollak. Wersja 1.0 została opublikowany w lutym Obecnie mamy wersję 1.6 Chyba najnowszy zrab webowy, wyciaga wnioski z wcześniejszych: Rails - znakomita obsługa CRUD Seaside - podział na komponenty Wicket - View first Lift -> -> JVM (bliblioteki Javy, Tomcat, Maven, Jetty,...)
31 Spis treści Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
32 Lift - Konfiguracja Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Czego nam potrzeba? (Przykładowy zestaw) Eclipse + Eclipse Plugin Maven + folder artefaktów Żadnych konfiguracyjnych plików xml, zamiast nich klasa bootstrap.boot
33 RoR - Jak zaczać? Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Konieczna jest instalacja: języka Gems systemu zarzadzania baza danych A jeślibyśmy chcieli się pochwalić innym: serwera WWW odpowiedniego dodatku pozwalajacego uruchamiać na serwerze
34 RoR - Tworzenie projektu Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Spróbujmy...
35 Spis treści Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
36 RoR - widoki Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Wyraźny podział MVC Wsparcie XML REST
37 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Lift - Renderowanie: snippety i widoki Widok może się zakraść do kontrolera, logika do widoku nie (View first) Renderowanie oparte na komponentach i XML Snippet (strzęp)- funkcja wypełnia XML pożadanymi wartościami
38 Lift - Renderowanie: widoki Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych View (widok) - funkcja generuje kod XMLa (LiftView, InsecureLiftView, dispatch) Widok class ExpenseView extends L i f t V i e w { o v e r r i d e def dispatch = { case " enumerate " => doenumerate _ } def doenumerate ( ) : NodeSeq = { < l i f t : surround with=" d e f a u l t " at=" content " > { expenseitems. totable } < / l i f t : surround > } }
39 Lift - Mapa strony Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Z poziomu metody Boot możemy zarzadzać dostępnościa poszczególnych stron, dzielić je na grupy, ukrywać Menu.builder,.title,.group,.item Hidden, If (i Unless), LocGroup, Template (wskazuje wzorzec dla tego odsyłacza), Snippet, LocSnippet (wskazuja snippet do wykonania)
40 Interaktywny chat, Comet Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Pokaz praktyczny.
41 Spis treści Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
42 Lift Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Konfiguracja w Boot Dostępne zręby: Mapper, Recored (także integracja z JPA) Wszystko obiektowo (choć można też pisać zapytania ) By, NotBy, By_>, ByList (IN), NullRef, Like TreeNode.findAll(ByRef(TreeNode,parent, TreeNode.id)) BySql( amount between? and?, lowval, highval)) MetaMegaProtoUser
43 RoR a bazy danych Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych Prosta konfiguracja Podział na bazę rozwojowa, testowa i produkcyjna Odsunięcie od SQLa
44 Spis treści Który lepszy i do czego? 1 2 Wprowadzenie Konfigurowanie aplikacji Podstawowe sposoby prezentacji danych Sposoby łaczenia się z baza danych 3 Który lepszy i do czego?
45 Który lepszy i do czego? Główne cechy RoRa + Dobra dokumentacja + Zaangażowana społeczność + Szybki start + Skalowalność (mimo wszystko) + Wyraźny podział MVC Przeciętna wydajność Problemy wpasowania w inne systemy
46 Który lepszy i do czego? Główne cechy RoRa + Dobra dokumentacja + Zaangażowana społeczność + Szybki start + Skalowalność (mimo wszystko) + Wyraźny podział MVC Przeciętna wydajność Problemy wpasowania w inne systemy
47 Który lepszy i do czego? Główne cechy Lifta + Dobra wydajność + Szybko rosnaca społeczność + Oparty na języku, który daje duże możliwości (ale zawsze można pisać jak w Javie) + Możliwość integracji z Java + Nie ma logiki w widoku + Wbudowane wsparcie dla sieci czasu rzeczywistego Mała społeczność (google group: ok członków, 14 XII 09) Słaba dokumentacja Wymaga kompilacji
48 Który lepszy i do czego? Główne cechy Lifta + Dobra wydajność + Szybko rosnaca społeczność + Oparty na języku, który daje duże możliwości (ale zawsze można pisać jak w Javie) + Możliwość integracji z Java + Nie ma logiki w widoku + Wbudowane wsparcie dla sieci czasu rzeczywistego Mała społeczność (google group: ok członków, 14 XII 09) Słaba dokumentacja Wymaga kompilacji
49 Zwycięzca Który lepszy i do czego?... czas pokaże
50 Zwycięzca Który lepszy i do czego?... czas pokaże
51 Dodatek Więcej informacji Więcej informacji I Oficjalna strona. (Także po polsku) Oficjalna strona on Rails. (Także po polsku) Przewodniki po on Rails. (Wersja angielska bardziej rozbudowana) Strona domowa Scali
52 Dodatek Więcej informacji Więcej informacji II Twitter on. A Conversation with Steve Jenson, Alex Payne, and Robey Pointer Bill Venners. twitter_on_scala.html Strona domowa Lifta The Definitive Guide to Lift Chen-Becker, Danciu, Weir http: //groups.google.com/group/the-lift-book
53 Dodatek Więcej informacji Więcej informacji III Lift: View first David Pollak. View_First
Czym jest Ruby on Rails?
Czym jest Ruby on Rails? Ruby on Rails - napisany w języku Ruby framework open source do szybkiego tworzenia aplikacji internetowych w oparciu o architekturę MVC David Heinemeier Hansson twórca Rails Ruby
Programowanie obiektowe
Programowanie obiektowe Podstawowe cechy i możliwości języka Scala mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 2017 1 / 32 mgr inż. Krzysztof Szwarc Programowanie obiektowe Informacje
Wykład nr 1 Język Ruby i framework Rails
Wykład nr 1 Język Ruby i framework Rails Elektroniczne Przetwarzanie Informacji Konsultacje: czw. 14.00-15.30, pokój 3.211 Historia Rubiego i Railsów 1993 Yukihiro Matsumoto San, Japonia 1995 pierwsze
WYKORZYSTANIE JĘZYKA GROOVY W TESTACH JEDNOSTKOWYCH, INTEGRACYJNYCH I AUTOMATYCZNYCH. Mirosław Gołda, Programista Java
WYKORZYSTANIE JĘZYKA GROOVY W TESTACH JEDNOSTKOWYCH, INTEGRACYJNYCH I AUTOMATYCZNYCH Mirosław Gołda, Programista Java Agenda Kilka słów o języku Groovy Wpięcie Grooviego w projekt Springowy Testy jednostkowe
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Aplikacje webowe z wykorzystaniem. Scala i Lift. Opracował: Mikołaj Sochacki
Aplikacje webowe z wykorzystaniem Scala i Lift Opracował: Mikołaj Sochacki Jaki język będzie dla mnie najlepszy? Dynamiczny + szybkość pisania + krótki czas potrzebny na opanowanie - więcej pisania testów
Kurs języka Ruby. Ruby on Rails ActionPack
Kurs języka Ruby Ruby on Rails ActionPack Co to jest RoR: Środowisko do szybkiego tworzenia aplikacji webowych Garść informacji Stworzony przez Davida Heinemeiera Hanssona DRY Don't Repeat Yourself Mnóstwo
Ruby i Ruby on Rails. Mateusz Drożdżyński
Ruby i Ruby on Rails Mateusz Drożdżyński Co to Ruby? Dynamiczny, obiektowy język programowania, stworzony przez Yukihiro Matsumoto Pojawił się w tym samym roku co Java (1995) Przejrzysta, prosta i intuicyjna
Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Ruby on Rails. Supersilnik WWW. Łukasz Włodarczyk
Ruby on Rails Supersilnik WWW Łukasz Włodarczyk Spis Treści Co to jest Ruby? Dlaczego Ruby? Co to jest Rails? Historia Ruby on Rails Filozofia Ruby on Rails Jak działa technologia Rails? Ruby on Rails
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
Programowanie w Ruby
Programowanie w Ruby Wykład 1 Marcin Młotkowski 3 października 2012 Plan wykładu Sprawy organizacyjne Wykład Źródła wiedzy Zaliczenia O języku Historia i pochodzenie języka O języku Instrukcje złożone
ASP.NET MVC. Grzegorz Caban grzegorz.caban@gmail.com. 20 stycznia 2009
ASP.NET MVC Grzegorz Caban grzegorz.caban@gmail.com 20 stycznia 2009 Agenda Przyczyna powstania Co to jest ASP.NET MVC Architektura Hello World w ASP.NET MVC ASP.NET MVC vs ASP.NET WebForm Przyszłość framework'a
Scala - programowanie obiektowo-funkcyjne
Program szkolenia: Scala - programowanie obiektowofunkcyjne Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Scala - programowanie obiektowo-funkcyjne Scala-Scala Scala developerzy
Wprowadzenie do języka Ruby
Aleksander Pohl apohllo.pl Krakow Ruby Users Group 19. maja 2007 Kilka słów o Ruby Yukihiro Matz Matsumoto: [...] Poszukiwałem języka potężniejszego od Perla i bardziej obiektowego od Pythona. Wówczas,
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
Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i
Program szkolenia: Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Produktywne tworzenie aplikacji webowych z
Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008
Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
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
EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails
EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails Plan prezentacji Framework Rails Ruby on Rails podstawowe założenia DRY: nie powtarzaj się Ruby on Rails podstawowe założenia DRY: nie powtarzaj
Google Web Toolkit Michał Węgorek ZPO 2009
Google Web Toolkit Michał Węgorek ZPO 2009 Plan prezentacji Czym jest GWT? Co daje GWT motywacja Po co tłumaczyć Javę do JavaScriptu? - AJAX niebezpieczeństwa - Przewaga GWT nad AJAX - RPC - Utrzymywanie
TorqueBox. Moc Javy piękno Rubiego
TorqueBox Moc Javy piękno Rubiego Marek. JBoss AS 7 + = No, do rzeczy panie! Dziś w menu: 50 / 40 / 10 Czym jest TorqueBox? Ruby i Java? Huh? DO RZECZY! Cel. Web: Rails, Sinatra, Rack. Ponadto: wiadomości,
Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016
Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal
Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin
Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Czym jest Spring Boot? Spring Boot jest szkieletem aplikacji, opiera się o Spring Framework czyli Framework szeroko
Programowanie w Ruby
Programowanie w Ruby 1 Marcin Młotkowski 8 października 2018 Plan wykładu 1 2 Źródła wiedzy Zaliczenia 3 4 5 Marcin Młotkowski Programowanie w Ruby 2 / 432 Informacje organizacyjne Strona wykładu http://www.ii.uni.wroc.pl/~marcinm/dyd/ruby/
Scala. Obiektowo-funkcyjny język programowania. Zbyszek Skowron
Scala Obiektowo-funkcyjny język programowania Zbyszek Skowron 4 czerwca 2007 Wprowadzenie Scala jest obiektowo-funkcyjnym jezykiem programowania zaprojektowanym przez Martina Odersky'ego. Inne projekty
Programowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r.
Programowanie w Javie cz. 1 Wstęp Łódź, 24 luty 2014 r. Prawdy i mity o Javie Java jest techniką webową? (tak, platforma Java EE, aplety) Java jest bezpieczna? (tak, aplety, brak operowania na pamięci)
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
Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
Programowanie MorphX Ax
Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn
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ąć
Programowanie obiektowe
Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy
JavaScript funkcyjność
JavaScript funkcyjność WWW 9 kwietnia 2014 Możliwości tworzenia dynamicznych stron WWW HTML i CSS. Skrypty CGI (Perl, PHP). Serwery (django, java). Plug-iny. Ksiażka Większość przykładów pochodzi z ksiażki:
ym4r Google Maps w Ruby on Rails
Krakow Ruby Users Group 25. listopada 2006 Google Maps Kilka słów o Google Maps API Google Maps API interfejs programistyczny pozwalajacy na wyświetlenie na stronie WWW mapy wybranego rejonu Ziemi: Aktualna
Java - wprowadzenie. Programowanie Obiektowe Mateusz Cicheński
Java - wprowadzenie Programowanie Obiektowe Mateusz Cicheński O języku Czym jest Java Cechy charakterystyczne języka Przykładowe zastosowania Składnia języka Podstawowe typy Wybrane słowa kluczowe Plan
CouchDB. Michał Nowikowski
CouchDB Michał Nowikowski Agenda Wprowadzenie do CouchDB Mój przypadek Wyniki i wnioski Dokumenty CouchDB Format JSON Pary nazwa wartość Możliwe tablice i struktury Załączniki Brak limitów na liczbę i
Wybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej JSP - Java Server Pages dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2019 Aplikacje i skrypty WWW klasyfikacja
Aplikacje Internetowe, Servlety, JSP i JDBC
Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny
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
C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop Spis treści
C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop. 2016 Spis treści Spis rysunków 11 Spis tabel 13 Przedmowa 15 Wprowadzenie 17 Podziękowania 27 O autorach 29 1 Wprowadzenie
Spring Framework - wprowadzenie i zagadnienia zaawansowane
Program szkolenia: Spring Framework - wprowadzenie i zagadnienia zaawansowane Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Spring Framework - wprowadzenie i zagadnienia
Podstawy i języki programowania
Podstawy i języki programowania Laboratorium 1 - wprowadzenie do przedmiotu mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 16 października 2017 1 / 25 mgr inż. Krzysztof Szwarc Podstawy i
WYKŁAD 1 ANGULARJS CZĘŚĆ 1
WYKŁAD 1 ANGULARJS CZĘŚĆ 1 DEFINICJA ANGULARJS Framework JavaScript na licencji open-source wykorzystywany do tworzenia aplikacji SPA (single page applications) w oparciu o wzorzec projektowy Model-View-Controler.
Programowanie obiektowe. Wprowadzenie
1 Programowanie obiektowe Wprowadzenie 2 Programowanie obiektowe Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
OpenLaszlo. OpenLaszlo
OpenLaszlo Spis Treści 1 OpenLaszlo Co to jest? Historia Idea Architektura Jako Flash lub DHTML Jako servlet lub SOLO Jak to działa? Język LZX Struktura programu Skrypty Obiekty i klasy Atrybuty i metody
Programowanie w Ruby
Programowanie w Ruby Wykład 11 Marcin Młotkowski 19 grudnia 2012 Plan wykładu Modele danych i bazy danych Modele danych Migracje Bazy danych w Railsach Rusztowania Walidacja modeli Modele danych Definicje
Programowanie obiektowe zastosowanie języka Java SE
Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z
Język programowania Scala + aktorzy Akka
Język programowania Scala + aktorzy Akka Marek Skórkowski Plan prezentacji: Aktorzy Akka Scala 1. Wprowadzenie (AS) 2. Scala(MS) 3. Nawiasy, kropki... (MS) 4. DSL (MS) 5. Wielodziedziczenie(MS) 6. Package
Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o
Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa
Programowanie RAD Delphi
Programowanie RAD Delphi Dr Sławomir Orłowski Zespół Fizyki Medycznej, Instytut Fizyki, Uniwersytet Mikołaja Kopernika w Toruniu Pokój: 202, tel. 611-32-46, e-mial: bigman@fizyka.umk.pl Delphi zasoby Aplikacje
Wykład 0 Informacje Podstawowe
Paradygmaty Programowania Wykład 0 Informacje Podstawowe Nieliniowej, WMiI UŁ 1 Informacje Ogólne (22 luty 2013) Wykłady: piątek, 10.00-12.00, D103 Wykłady: 1 wprowadzający +10 wykładów głównych Zaliczenie
Projektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz
Projektowanie oprogramowania Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz 1 Wykonanie czterowarstwowej aplikacji EE z dostępem do bazy danych,
1 Atrybuty i metody klasowe
1 Atrybuty i metody klasowe Składowe klasowe (statyczne) Każdy obiekt klasy posiada własny zestaw atrybutów. Metody używają atrybutów odpowiedniego obiektu. Czasem potrzeba atrybutów wspólnych dla wszystkich
Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8
Początki Javy Java została pierwotnie zaprojektowana dla telewizji interaktywnej, ale była to zbyt zaawansowaną technologią dla branży cyfrowej telewizji kablowej. James Gosling, Mike Sheridan i Patrick
JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.
JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod
Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA
Java w 21 dni / Rogers Cadenhead. Gliwice, cop. 2016 Spis treści O autorze 11 Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA Dzień 1. Rozpoczynamy przygodę z Javą 21 Język Java 21 Programowanie obiektowe 24 Obiekty
PyPy's Approach to Virtual Machine Construction
PyPy's Approach to Virtual Machine Construction Armin Rigo, Samuele Pedroni Prezentacja: Michał Bendowski Czym jest PyPy? Implementacja Pythona w Pythonie - wydajniejsza niż oryginalna implementacja w
Podstawy programowania. Wprowadzenie
Podstawy programowania Wprowadzenie Proces tworzenia programu Sformułowanie problemu funkcje programu zakres i postać danych postać i dokładność wyników Wybór / opracowanie metody rozwiązania znaleźć matematyczne
Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.
Polimorfizm jest filarem programowania obiektowego, nie tylko jeżeli chodzi o język C++. Daje on programiście dużą elastyczność podczas pisania programu. Polimorfizm jest ściśle związany z metodami wirtualnymi.
Python wstęp do programowania dla użytkowników WCSS
Python wstęp do programowania dla użytkowników WCSS Dr inż. Krzysztof Berezowski Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Wprowadzenie CHARAKTERYSTYKA JĘZYKA Filozofia języka
Programowanie obiektowe Wykład 1: Wprowadzenie
Programowanie obiektowe Wykład 1: Wprowadzenie dr inż. Marcin Luckner mluckner@mini.pw.edu.pl Wersja 1.1 23.02.2018 Java - historia Java jako język programowania Język programowania powstały w 1995. Oparty
Programowanie obiektowe
Programowanie obiektowe Laboratorium 11 - przegląd wybranych wzorców mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 24 maja 2017 1 / 38 mgr inż. Krzysztof Szwarc Programowanie obiektowe Wzorce
Dokumentacja projektu QUAIKE Architektura oprogramowania
Licencjacka Pracownia Oprogramowania Instytut Informatyki Uniwersytetu Wrocławskiego Jakub Kowalski, Andrzej Pilarczyk, Marek Kembrowski, Bartłomiej Gałkowski Dokumentacja projektu QUAIKE Architektura
Programowanie w Ruby
Programowanie w Ruby Wykład 11 Marcin Młotkowski 19 grudnia 2014 Plan wykładu 1 Projekt 2 Modele danych 3 4 5 Marcin Młotkowski Programowanie w Ruby 2 / 38 Zasady Projekt Składowe projektu przynajmniej
Programowanie i projektowanie obiektowe
Programowanie i projektowanie obiektowe Obiekty i klasy w Pythonie Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) PO w. III Jesień 2013 1 / 23 Klasy i obiekty Klasy w implementacji
E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.
E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL. Autor: Larry Ullman Poznaj zasady wirtualnego handlu i zarabiaj prawdziwe pieniądze Jak stworzyć doskonałą witrynę sklepu internetowego? Jak
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
JAX-RS czyli REST w Javie. Adam Kędziora
JAX-RS czyli REST w Javie Adam Kędziora Webservice Usługa sieciowa (ang. web service) komponent programowy niezależny od platformy i implementacji, dostarczający określonej funkcjonalności. SOAP,UDDI,XML,WSDL
Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC
Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:
Wstęp do programowania
Wstęp do programowania Programowanie funkcyjne Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. XIV Jesień 2013 1 / 25 Paradygmaty programowania Programowanie imperatywne Program
Zwinne i lekkie aplikacje webowe z. Jacek Laskowski http://www.jaceklaskowski.pl
Zwinne i lekkie aplikacje webowe z Jacek Laskowski http://www.jaceklaskowski.pl A prelegent to kto? Entuzjasta Java EE 5, OSGi i ostatnio Grails Założyciel i lider Warszawa JUG Członek zespołu NetBeans
Inteligentny czujnik w strukturze sieci rozległej
Inteligentny czujnik w strukturze sieci rozległej Tadeusz Pietraszek Zakopane, 13 czerwca 2002 Plan prezentacji Problematyka pomiarów stężenia gazów w obiektach Koncepcja realizacji rozproszonego systemu
Programowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Język programowania Scala / Grzegorz Balcerek. Wyd. 2. Poznań, cop Spis treści
Język programowania Scala / Grzegorz Balcerek. Wyd. 2. Poznań, cop. 2016 Spis treści Przedmowa 1 Stosowana notacja 1 1. Wprowadzenie 3 1.1. Konsola interaktywna języka Scala 3 1.2. Zmienne 5 1.3. Wartości
KOTLIN. Język programowania dla Androida
KOTLIN Język programowania dla Androida Historia Kotlin został opracowany przez firmę JetBrains Prace rozpoczęto w 2011 r., od 2012 r. dostępny na licencji Apache 2. Nazwa pochodzi od wyspy koło Petersburga
Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio
Czym jest jpalio? jpalio to unikalna platforma technologiczna pozwalająca na stworzenie szeregu produktów dostosowanych do indywidualnych preferencji klienta. W naszej ofercie znajduje się m.in. system
Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat
Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych
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
- dodaj obiekt tekstowy: /** Maciej */ Stage { title : "First JavaFX App" scene: Scene { width: 300 height: 300 content: [ ] } }
1. Krótki opis technologii JavaFX jest technologią do tworzenia bogatych wizualnie aplikacji internetowych (RIA Rich Internet Application), przeznaczona nie tylko pod wiele systemów operacyjnych, ale też
JAVA EE MODEL APLIKACJI. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
JAVA EE MODEL APLIKACJI Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Architektura aplikacji 2 Java EE od początku była projektowana z myślą o aplikacjach klasy enterprise
Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017
Wykład 13 14 czerwiec 2017 Java vs cpp - podobieństwa Podobny sposób definiowania klas. Występowanie typów podstawowych: boolean, char, byte, short, int, long, float, double. Podobna zasada definiowania
Java Developers Day. Silniki reguł biznesowych
Java Developers Day Silniki reguł biznesowych Mariusz Kaczor mariusz.kaczor@altkom.pl Łukasz Szandecki lukasz.szandecki@altkom.pl slide 1 Agenda Mamy problem.. Programowanie deklaratywne Drools przykład
Komunikacja Człowiek-Komputer
Komunikacja Człowiek-Komputer Wprowadzenie do Python a Wojciech Jaśkowski Instytut Informatyki Politechnika Poznańska Wersja: 14 października 2013 Hello world print( Hello world ) Dlaczego Python? Prosty
Programowanie w języku Java WYKŁAD
Programowanie w języku Java WYKŁAD dr inż. Piotr Zabawa Certyfikowany Konsultant IBM/Rational e-mail: pzabawa@pk.edu.pl www: http://www.pk.edu.pl/~pzabawa 26.05.2014 WYKŁAD 13 Refleksja Data Access Object
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe
Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache
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 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji
Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: DED/FSJS Full Stack JavaScript z Angular i Nest Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających podstawową wiedzę w zakresie JavaScript,
Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński
Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński Plan Prezentacji. Programowanie ios. Jak zacząć? Co warto wiedzieć o programowaniu na platformę ios? Kilka słów na temat Obiective-C.
EPI: Interfejs Graczny 2009/2010 Podstawy Rubiego
EPI: Interfejs Graczny 2009/2010 Podstawy Rubiego 1 czerwca 2010 Plan prezentacji Wprowadzenie Hello World Sinatra Historia Rubiego 1993 Japonia Yukihiro Matsumoto San Historia Rubiego 1993 Japonia Yukihiro
Grails. v 1.1 Web Framework
Grails v 1.1 Web Framework Piotr Gaertig / 2009 Grails - treść prezentacji Historia Ogólnie o Grails Groovy Starter Model GORM Scaffolding Kontroler Widok GSP URL Mapping Development & deployment Pozostałe
Zakopane, plan miasta: Skala ok. 1: = City map (Polish Edition)
Zakopane, plan miasta: Skala ok. 1:15 000 = City map (Polish Edition) Click here if your download doesn"t start automatically Zakopane, plan miasta: Skala ok. 1:15 000 = City map (Polish Edition) Zakopane,
Technologie internetowe ASP.NET Core. Paweł Rajba
Technologie internetowe ASP.NET Core Paweł Rajba pawel@cs.uni.wroc.pl http://itcourses.eu/ Plan wykładu Wprowadzenie Podstawowa aplikacja Usługi i middleware Obsługa błędów Request, Response, ciastka i
Aplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - dziedziczenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 W ramach poprzedniego laboratorium
Wstęp do programowania
Wstęp do programowania Podstawowe konstrukcje programistyczne Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) WP w. II Jesień 2014 1 / 38 Przypomnienie Programowanie imperatywne Program