Suche senden
Hochladen
Mojolicious on Steroids
•
Als ODP, PDF herunterladen
•
0 gefällt mir
•
3,831 views
Tudor Constantin
Folgen
Presenting a Perl toolchain for rapid web application development
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 15
Jetzt herunterladen
Empfohlen
Mojolicious, real-time web framework
Mojolicious, real-time web framework
taggg
Mojolicious: what works and what doesn't
Mojolicious: what works and what doesn't
Cosimo Streppone
Mojolicious - Perl Framework for the Real-Time Web (Lightning Talk)
Mojolicious - Perl Framework for the Real-Time Web (Lightning Talk)
Dotan Dimet
Mojolicious - A new hope
Mojolicious - A new hope
Marcus Ramberg
Mojolicious. Веб в коробке!
Mojolicious. Веб в коробке!
Anatoly Sharifulin
RESTful web services
RESTful web services
Tudor Constantin
Mojolicious
Mojolicious
Marcos Rebelo
Inside Bokete: Web Application with Mojolicious and others
Inside Bokete: Web Application with Mojolicious and others
Yusuke Wada
Empfohlen
Mojolicious, real-time web framework
Mojolicious, real-time web framework
taggg
Mojolicious: what works and what doesn't
Mojolicious: what works and what doesn't
Cosimo Streppone
Mojolicious - Perl Framework for the Real-Time Web (Lightning Talk)
Mojolicious - Perl Framework for the Real-Time Web (Lightning Talk)
Dotan Dimet
Mojolicious - A new hope
Mojolicious - A new hope
Marcus Ramberg
Mojolicious. Веб в коробке!
Mojolicious. Веб в коробке!
Anatoly Sharifulin
RESTful web services
RESTful web services
Tudor Constantin
Mojolicious
Mojolicious
Marcos Rebelo
Inside Bokete: Web Application with Mojolicious and others
Inside Bokete: Web Application with Mojolicious and others
Yusuke Wada
Developing apps using Perl
Developing apps using Perl
Anatoly Sharifulin
Mojolicious
Mojolicious
Marcus Ramberg
Mojo as a_client
Mojo as a_client
Marcus Ramberg
Asynchronous programming patterns in Perl
Asynchronous programming patterns in Perl
deepfountainconsulting
Blog Hacks 2011
Blog Hacks 2011
Yusuke Wada
YAPC::Asia 2010 Twitter解析サービス
YAPC::Asia 2010 Twitter解析サービス
Yusuke Wada
Mojolicious
Mojolicious
Lenz Gschwendtner
Plugin jQuery, Design Patterns
Plugin jQuery, Design Patterns
Robert Casanova
Webrtc mojo
Webrtc mojo
bpmedley
jQuery Plugin Creation
jQuery Plugin Creation
benalman
How Kris Writes Symfony Apps
How Kris Writes Symfony Apps
Kris Wallsmith
Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)
andrewnacin
エロサイト管理者の憂鬱3 - Hokkaiodo.pm#4 -
エロサイト管理者の憂鬱3 - Hokkaiodo.pm#4 -
Yusuke Wada
Extending the WordPress REST API - Josh Pollock
Extending the WordPress REST API - Josh Pollock
Caldera Labs
Twib in Yokoahma.pm 2010/3/5
Twib in Yokoahma.pm 2010/3/5
Yusuke Wada
Add loop shortcode
Add loop shortcode
Peter Baylies
Xmpp prebind
Xmpp prebind
Syed Arshad
How to actually use promises - Jakob Mattsson, FishBrain
How to actually use promises - Jakob Mattsson, FishBrain
Codemotion Tel Aviv
PerlでWeb API入門
PerlでWeb API入門
Yusuke Wada
Using the new WordPress REST API
Using the new WordPress REST API
Caldera Labs
Writing Pluggable Software
Writing Pluggable Software
Tatsuhiko Miyagawa
Schenker - DSL for quickly creating web applications in Perl
Schenker - DSL for quickly creating web applications in Perl
Jiro Nishiguchi
Weitere ähnliche Inhalte
Was ist angesagt?
Developing apps using Perl
Developing apps using Perl
Anatoly Sharifulin
Mojolicious
Mojolicious
Marcus Ramberg
Mojo as a_client
Mojo as a_client
Marcus Ramberg
Asynchronous programming patterns in Perl
Asynchronous programming patterns in Perl
deepfountainconsulting
Blog Hacks 2011
Blog Hacks 2011
Yusuke Wada
YAPC::Asia 2010 Twitter解析サービス
YAPC::Asia 2010 Twitter解析サービス
Yusuke Wada
Mojolicious
Mojolicious
Lenz Gschwendtner
Plugin jQuery, Design Patterns
Plugin jQuery, Design Patterns
Robert Casanova
Webrtc mojo
Webrtc mojo
bpmedley
jQuery Plugin Creation
jQuery Plugin Creation
benalman
How Kris Writes Symfony Apps
How Kris Writes Symfony Apps
Kris Wallsmith
Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)
andrewnacin
エロサイト管理者の憂鬱3 - Hokkaiodo.pm#4 -
エロサイト管理者の憂鬱3 - Hokkaiodo.pm#4 -
Yusuke Wada
Extending the WordPress REST API - Josh Pollock
Extending the WordPress REST API - Josh Pollock
Caldera Labs
Twib in Yokoahma.pm 2010/3/5
Twib in Yokoahma.pm 2010/3/5
Yusuke Wada
Add loop shortcode
Add loop shortcode
Peter Baylies
Xmpp prebind
Xmpp prebind
Syed Arshad
How to actually use promises - Jakob Mattsson, FishBrain
How to actually use promises - Jakob Mattsson, FishBrain
Codemotion Tel Aviv
PerlでWeb API入門
PerlでWeb API入門
Yusuke Wada
Using the new WordPress REST API
Using the new WordPress REST API
Caldera Labs
Was ist angesagt?
(20)
Developing apps using Perl
Developing apps using Perl
Mojolicious
Mojolicious
Mojo as a_client
Mojo as a_client
Asynchronous programming patterns in Perl
Asynchronous programming patterns in Perl
Blog Hacks 2011
Blog Hacks 2011
YAPC::Asia 2010 Twitter解析サービス
YAPC::Asia 2010 Twitter解析サービス
Mojolicious
Mojolicious
Plugin jQuery, Design Patterns
Plugin jQuery, Design Patterns
Webrtc mojo
Webrtc mojo
jQuery Plugin Creation
jQuery Plugin Creation
How Kris Writes Symfony Apps
How Kris Writes Symfony Apps
Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)
エロサイト管理者の憂鬱3 - Hokkaiodo.pm#4 -
エロサイト管理者の憂鬱3 - Hokkaiodo.pm#4 -
Extending the WordPress REST API - Josh Pollock
Extending the WordPress REST API - Josh Pollock
Twib in Yokoahma.pm 2010/3/5
Twib in Yokoahma.pm 2010/3/5
Add loop shortcode
Add loop shortcode
Xmpp prebind
Xmpp prebind
How to actually use promises - Jakob Mattsson, FishBrain
How to actually use promises - Jakob Mattsson, FishBrain
PerlでWeb API入門
PerlでWeb API入門
Using the new WordPress REST API
Using the new WordPress REST API
Ähnlich wie Mojolicious on Steroids
Writing Pluggable Software
Writing Pluggable Software
Tatsuhiko Miyagawa
Schenker - DSL for quickly creating web applications in Perl
Schenker - DSL for quickly creating web applications in Perl
Jiro Nishiguchi
Modern Perl
Modern Perl
Dave Cross
SlideShare Instant
SlideShare Instant
Saket Choudhary
SlideShare Instant
SlideShare Instant
Saket Choudhary
jQuery Performance Rules
jQuery Performance Rules
nagarajhubli
Web Scraping with PHP
Web Scraping with PHP
Matthew Turland
SugarCon 2010 - Best Practices for Creating Custom Apps in Sugar
SugarCon 2010 - Best Practices for Creating Custom Apps in Sugar
John Mertic
Web Scraper Shibuya.pm tech talk #8
Web Scraper Shibuya.pm tech talk #8
Tatsuhiko Miyagawa
Introduction To Lamp
Introduction To Lamp
Amzad Hossain
Create a web-app with Cgi Appplication
Create a web-app with Cgi Appplication
olegmmiller
Php 3 1
Php 3 1
Digital Insights - Digital Marketing Agency
The Basics Of Page Creation
The Basics Of Page Creation
Wildan Maulana
Optimizing Drupal for Mobile Devices
Optimizing Drupal for Mobile Devices
Sugree Phatanapherom
Optimize Site Deployments with Drush (DrupalCamp WNY 2011)
Optimize Site Deployments with Drush (DrupalCamp WNY 2011)
Jon Peck
Javascript
Javascript
timsplin
Php Basic Security
Php Basic Security
mussawir20
10 Things You're Not Doing [IBM Lotus Notes Domino Application Development]
10 Things You're Not Doing [IBM Lotus Notes Domino Application Development]
Chris Toohey
Building Complex GUI Apps The Right Way. With Ample SDK - SWDC2010
Building Complex GUI Apps The Right Way. With Ample SDK - SWDC2010
Sergey Ilinsky
Perl Dancer, FPW 2010
Perl Dancer, FPW 2010
Alexis Sukrieh
Ähnlich wie Mojolicious on Steroids
(20)
Writing Pluggable Software
Writing Pluggable Software
Schenker - DSL for quickly creating web applications in Perl
Schenker - DSL for quickly creating web applications in Perl
Modern Perl
Modern Perl
SlideShare Instant
SlideShare Instant
SlideShare Instant
SlideShare Instant
jQuery Performance Rules
jQuery Performance Rules
Web Scraping with PHP
Web Scraping with PHP
SugarCon 2010 - Best Practices for Creating Custom Apps in Sugar
SugarCon 2010 - Best Practices for Creating Custom Apps in Sugar
Web Scraper Shibuya.pm tech talk #8
Web Scraper Shibuya.pm tech talk #8
Introduction To Lamp
Introduction To Lamp
Create a web-app with Cgi Appplication
Create a web-app with Cgi Appplication
Php 3 1
Php 3 1
The Basics Of Page Creation
The Basics Of Page Creation
Optimizing Drupal for Mobile Devices
Optimizing Drupal for Mobile Devices
Optimize Site Deployments with Drush (DrupalCamp WNY 2011)
Optimize Site Deployments with Drush (DrupalCamp WNY 2011)
Javascript
Javascript
Php Basic Security
Php Basic Security
10 Things You're Not Doing [IBM Lotus Notes Domino Application Development]
10 Things You're Not Doing [IBM Lotus Notes Domino Application Development]
Building Complex GUI Apps The Right Way. With Ample SDK - SWDC2010
Building Complex GUI Apps The Right Way. With Ample SDK - SWDC2010
Perl Dancer, FPW 2010
Perl Dancer, FPW 2010
Kürzlich hochgeladen
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Remote DBA Services
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
apidays
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
debabhi2
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Enterprise Knowledge
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
wesley chun
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
lior mazor
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
Evaluating the top large language models.pdf
Evaluating the top large language models.pdf
ChristopherTHyatt
Kürzlich hochgeladen
(20)
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
Evaluating the top large language models.pdf
Evaluating the top large language models.pdf
Mojolicious on Steroids
1.
Mojolicious
The duct tape of the web
2.
About me Tudor
Constantin Perl hacker at Evozon http://programming.tudorconstantin.com/ https://github.com/tudorconstantin
3.
4.
Bootstrap from Twitter
5.
Mojolicious
6.
Fast application development
toolchain
7.
Conclusions
8.
Bonus slide
9.
References
10.
11.
easy to
use
12.
13.
but don't
enforce them
14.
15.
16.
17.
18.
19.
Mojolicious Easy to
Start With use Mojolicious :: Lite ; get '/' => { text => 'Hello World!' }; app -> start ;
20.
Mojolicious Easy to
use $r -> route ( '/home' )-> to ( 'example#welcome' ) ; Controller: package MyApp :: Example ; use Mojo :: Base 'Mojolicious::Controller' ; sub welcome { my $self = shift ; # Render template "example/welcome.html.ep" with message $self -> render ( message => 'Welcome to Mojo!' ) ;} 1 ;
21.
Mojolicious Easy to
extend # Everything can be customized with options my $config = $self -> plugin ( yaml_config => { file => 'conf/config.yaml' , stash_key => 'conf' , class => 'YAML::XS' } ) ; $self ->{ config } = $config ; Controller #access to the configuration hash ref $self -> app ->{ config }
22.
Mojolicious Facilitates best
practices # Simple "resource" shortcut, because RESTful apps are a safe bet $r -> add_shortcut ( resource => sub { my ( $r , $name ) = @_ ; # Generate "/$name" route my $resource = $r -> route ( "/$name" )-> to ( "$name#" ) ; # Handle POST requests $resource -> post -> to ( '#create' )-> name ( "create_$name" ) ; # Handle GET requests $resource -> get -> to ( '#show' )-> name ( "show_$document" ) ; return $resource ; } ) ; # POST /user -> {controller => 'user', action => 'create'} # GET /user -> {controller => 'user', action => 'show'} $r -> resource ( 'user' ) ; # POST /document -> {controller => 'document', action => 'create'} # GET /document -> {controller => 'document', action => 'show'} $r -> resource ( 'document' ) ;
23.
Mojolicious But don't
enforce them #code is self explanatory $r -> delete ( '/get/stuff/21/:k' )-> to ( 'static#_doWhat_I_mean_NOW' ) ;
24.
25.
26.
27.
28.
Makes them behave
in nice, concerted manners
29.
30.
31.
32.
33.
Learn Perl and
Mojolicious
34.
Implement it
35.
Profit!!!
36.
Jetzt herunterladen