Moderní Perl
Transkript
14.5.2014 Moderní Perl LUKÁŠ RAMPA 14.5.2014 Historie verze ◦ Perl 5 x Perl 6 ◦ roční cyklus od 2010 (5.12), 5.20 letos v květnu zhruba kolem 5.10 (2007, 20. narozeniny Perlu) začátek Moderního Perlu rozšíření core syntaxe propagace čistého stylu programování 1 14.5.2014 Úspěšná použití booking.com duckduckgo.com builtinperl.com CPAN Comprehensive Perl Archive Network MetaCPAN CPAN testers rt.cpan.org cpan / cpanm 2 14.5.2014 Moduly – kam s nimi? instalace do system Perlu instalace do ~/perl5 ◦ local::lib instalace do ./local ◦ carton perlbrew DBIx::Class ORM staví nad DBI/DBD databázi lze generovat z tříd, třídy lze generovat z databáze překlad hodnoty sloupce za letu (např. konstrukce objektů, formátování, konverze jednotek) 3 14.5.2014 DBIx::Class - result class package MyApp::Schema::Result::Artist; use base qw/DBIx::Class::Core/; __PACKAGE__->table('artist'); __PACKAGE__->add_columns(qw/ artistid name /); __PACKAGE__->set_primary_key('artistid'); __PACKAGE__->has_many( cds => 'MyApp::Schema::Result::CD', 'artistid'); 1; DBIx::Class – práce s API my @all_artists = $schema->resultset('Artist')->all; foreach $artist (@all_artists) { print $artist->name, "\n"; } my $all_artists_rs = $schema->resultset('Artist'); my $first_artist = $ all_artists_rs->next; 4 14.5.2014 Moose inspirováno Perlem 6 objekty konečně "správně„ staví na Class::MOP – Meta Object Protocol role, modifikátory metod, datové typy ekosystém pluginů (MooseX::*) Moose package File; use Moose; has path => ( is => 'ro' ); has content => ( is => 'ro' ); has last_mod_time => ( is => 'ro' ); sub print_info { my $self = shift; print "This file is at ", $self->path, "\n"; } 5 14.5.2014 Moo subset funcionality Moose API je kompatibilní nevyžaduje kompilátor rychlejší PSGI/Plack PSGI (Perl Web Server Gateway Interface) ◦ sjednocené rozhraní mezi web aplikací a serverem Plack - implementace PSGI 6 14.5.2014 PSGI/Plack Hello World plackup -e 'sub { [ 200, ["Content-Type" => "text/plain"], ["Hello, world!"] ] }' Web frameworky Catalyst Dancer Mojolicious struktura adresářů podpora šablon (Template::Toolkit a další) práce s databází atd. 7 14.5.2014 Dancer – Hello World #!/usr/bin/env perl use Dancer; get '/' => sub { "Hello World!" }; dance; Dancer - ajax ajax '/getloadavg' => sub { return { timestamp => time(), loadavg => ( Unix::Uptime->load )[0], }; }; { "loadavg":"0.00", "timestamp":1400061381 } 8 14.5.2014 Kultura testování slušné aplikace jsou pokryty automatickými testy množství modulů pro podporu samotného psaní testů Test Anything Protocol Informační zdroje perl-tutorial.org Modern Perl by chromatic (http://onyxneon.com/books/modern_perl/) Perl maven (http://perlmaven.com/) 9 14.5.2014 Komunita irc.perl.org Perl Mongers ◦ plzen.pm.org, brno.pm.org, hradeckralove.pm.org Perl Workshops YAPC Czech Perl Workshop http://act.yapc.eu/czpw2014/ 20. a 21. května 2014 v Praze Community day (Perl technologie, Budoucnost) Professional day (vývoj v oboru...) 10
Podobné dokumenty
Práce s databází
b) Typ 2 - připojení prostřednictvím kódu nativního klienta pro přístup k síti ......................2
c) Typ 3 připojení prostřednictvím vrstvy aplikačního serveru ...................................
Django je vyspělý webový framework napsaný
v jazyce Python, který podporuje rychlý vývoj
a čisté, pragmatické konstrukce.
Je založený na modelech šablonách, a
pohledech
Má bohaté databázové API
CPAN, tvorba a šíření softwaru v jazyce Perl
Varianta A je tradiční, B je v Perlu relativně nová, má ještě mouchy,
pomalu se však začíná prosazovat.
1. Co je blekko?
určitě ještě dal vylepšit. Hezkým příkladem může být vyhledávač DuckDuckGo. Ten se taktéž
soustředí na ochranu uživatelova soukromí a na filtraci spamu. A stejně jako blekko výsledky
svých vyhledáv...
Vyhledávače a portály
Světové vyhledávače: www.google.com, www.alltheweb.com, www.bing.com,
www.altavista.com, www.excite.com, www.yahoo.com, www.duckduckgo.com ,
www.lycos.com, www.ask.com .......
České vyhledávače: ww...
PSK2-11 DNS a WHOIS -
Ing. Marek Nožka
Anotace:
Jak funguje DNS, vyhledávání v DNS a Whois
Vzdělávací oblast: Informační a komunikační technologie
Předmět:
Počítačové sítě a komunikační technika (PSK)
Tematická oblast: ...
Zobrazit nápovědu v souboru
Kapitola 1: O prostředí Adobe AIR
Prostředí Adobe® AIR® je víceobrazovkový běhový modul pro více operačních systémů, pomocí něhož můžete využít
své stávající znalosti v oblasti vyvíjení webů při vy...
User`s manual, version 2.1 -
Počátky projektu DoudouLinux ........................................................................ 27
Article table of contents .....................................................................
Kulturní přehled za rok 2010
6. července 2010, Žirovnice a 8. července 2010, Třeboň
Izraelská klarinetistka Shirley Brill společně s klavíristou Jonathanem
Anerem a cellistou Julianem Arpem vystoupila 6. července v 19:00 hodin...
Analytické nadstavby GIS pro územní plánování
a běžné lidi by se mohlo územní plánování stát efektivnějším.
V práci bylo popsáno několik aplikací. Každá má své nesporné výhody, ale také nevýhody.
Žádné ze zmíněných programových řešení není opt...