The modern perl toolchain

  • 451 views
Uploaded on

Tema: The modern perl toolchain …

Tema: The modern perl toolchain
Curso de Perl avanzado Barcelona.pm 2012

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
451
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
7
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. The Modern PerlToolchain
  • 2. Cómo conseguir PerlHay gente que nunca ha instalado Perl – Viene preinstalado en casi todos los sabores de *N?X
  • 3. El mundo *N?X tradicional Paquetes Paquetes CPAN Compilado a mano A mano
  • 4. Perl paquetes + Módulos paquetes PROS CONS• Buena estabilidad • Perls antiguos• Instalación fácil (e • Módulos antiguos integrada con el SO) • Alguna distribución gamberra
  • 5. Perl paquetes + Modulos CPAN PROS CONS• Bleeding edge • Perls antiguos• Instalación fácil • Alguna distribución gamberra • Peligro de cargarte módulos del sistema
  • 6. Perl paquetes + CPAN a mano PROS CONS• Bleeding edge • Perls antiguos • Alguna distribución gamberra • Peligro de cargarte módulos del sistema • A mano!!!
  • 7. Modern Paquetes Paquetes local::lib Perlbrew CPANCompilado a mano A mano
  • 8. Perlbrew + local::lib PROS CONS• Bleeding edge • Entornos no• Personalizar reproducibles compilación• Entorno aislado
  • 9. Windows• ActivePerl • Strawberry Perl – PPM -> Paquetes – CPAN precompilados de modulos de CPAN – No CPAN
  • 10. Perlbrew perlbrew.pl admin-free perl installationmanagement tool
  • 11. Perlbrew - instalaciónmonger@onion:~$ wget --no-check-certificate -O - http://install.perlbrew.pl | bashmonger@onion:~$ source ~/perl5/perlbrew/etc/bashrc
  • 12. Perlbrew - usomonger@onion:~$ perlbrew available perl-5.15.8 perl-5.14.2 perl-5.12.4 perl-5.10.1 perl-5.8.9 perl-5.6.2 perl5.005_04 perl5.004_05 perl5.003_07
  • 13. Perlbrew – instalar un perlmonger@onion:~$ perlbrew install perl-5.14.2monger@onion:~$ perlbrew available perl-5.15.8i perl-5.14.2 perl-5.12.4 perl-5.10.1 perl-5.8.9 perl-5.6.2 perl5.005_04 perl5.004_05 perl5.003_07
  • 14. Perlbrew – instalar un perlmonger@onion:~$ perlbrew list perl-5.14.2monger@onion:~$ perlbrew switch perl-5.14.2monger@onion:~$ perlbrew list* perl-5.14.2monger@onion:~$ perlbrew use perl-5.14.2
  • 15. Perlbrew – instalar un perl #!/usr/bin/perl#!/usr/bin/env perl
  • 16. Perlbrew – local::libmonger@onion:~$ perlbrew lib perl-5.14.2@curso lib perl-5.14.2@curso is created.monger@onion:~$ perlbrew list* perl-5.14.2 perl-5.14.2@cursomonger@onion:~$ perlbrew use perl-5.14.2@cursomonger@onion:~$ perlbrew list perl-5.14.2* perl-5.14.2@curso
  • 17. Dist::Zillamonger@onion:~$ cpanm Dist::Zilla …monger@onion:~$ dzill setupmonger@onion:~$ dzill new App::Cursomonger@onion:~$ dzill clean Y ya se puede empezar!
  • 18. Dist::ZillaOpciones útiles:monger@onion:~$ dzill run bashmonger@onion:~$ dzill testmonger@onion:~$ dzil authordeps|cpanm
  • 19. Cómo conseguir módulosYa tenemos Perl instalado. Y ahora, ¿cómoconseguimos los módulos que necesitamos?
  • 20. Cómo conseguir módulosmonger@onion:~$ perlbrew install-cpanmmonger@onion:~$ cpanm Date::Holidays::CA_ES
  • 21. Herramientas de la comunidad
  • 22. CPAN: Comprehensive Perl Archive Network cpan.org search.cpan.org metacpan.org
  • 23. CPAN: Comprehensive Perl Archive Network 104.551 módulos de Perl en 24.391 distribuciones escritos por 9.569 autores y replicado en 268 servidores
  • 24. CPAN Testerscpantesters.org
  • 25. Bugsrt.cpan.org
  • 26. ¿Cómo contribuir?Publicando módulos (http://pause.perl.org) Participando en perlmonks.org Contribuyendo a módulos existentes Reportando (y arreglando) bugs Realizando tests Participando en la lista de mongers local …
  • 27. Módulos interesantes - Core CGI Data::Dumper File::* FindBin Getopt::Long Net::*
  • 28. Módulos interesantes Template::Toolkit Data::Printer Net::Server Catalyst Mojolicious DBIx::Class Plack LWP WWW::MechanizeHemos dicho que hay casi 25.000 distribuciones?
  • 29. Ejercicios1. Instalar un perl 5.14.2 con perlbrew 1. Hacer un script que diga “Hello World!” y el intérprete de perl que lo ha ejecutado2. Instalar Mojolicious en un local::lib llamado mojo3. Instalar Catalyst, DBI, DBIx::Class y DBD::Sqlite en un local::lib llamado catalyst4. Crear un nuevo modulo con Dist::Zilla 1. Instalar el modulo con cpanm