summaryrefslogtreecommitdiffstats
path: root/static/talks/ox_yapc_na_2011/index.html
blob: 3687174e775f171763966093ab87e0823fdc5d41 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<html>
<head>
<title>OX - The hardest working two letters in Perl</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
function navigate(e) {
    var keynum = (window.event) // IE
        ? e.keyCode
        : e.which;
    if (keynum == 13 || keynum == 32) {
        window.location = "001.html";
        return false;
    }
    return true;
}
</script>
<style>
body {
    font-family: sans-serif;
}
h4 {
    color: #888;
}
</style>
</head>
<body>
<h4>Use SPACEBAR to peruse the slides or click one to start...<h4>
<h1>OX - The hardest working two letters in Perl</h1>
<ul>
<li><a href="001.html">OX</a></li>
<li><a href="002.html">history</a></li>
<li><a href="003.html">OX - the web anti-framework</a></li>
<li><a href="004.html">Stevan</a></li>
<li><a href="005.html">what is OX?</a></li>
<li><a href="006.pl.html"># app.psgi</a></li>
<li><a href="007.html">Bread::Board</a></li>
<li><a href="008.html">Bread::Board has containers, containers contain services</a></li>
<li><a href="009.html">services can depend on other services</a></li>
<li><a href="010.html">at minimum, the router and the app coderef itself are services</a></li>
<li><a href="011.pl.html">package App;</a></li>
<li><a href="012.pl.html">package Controller;</a></li>
<li><a href="013.html">Path::Router</a></li>
<li><a href="014.pl.html">route '/set/:num' =&gt; 'root.set', (</a></li>
<li><a href="015.html">/set/23 -&gt; { num =&gt; 23 }</a></li>
<li><a href="016.html">bidirectional</a></li>
<li><a href="017.pl.html">$router-&gt;uri_for({num =&gt; 23}); # '/set/23'</a></li>
<li><a href="018.html">this translation is controlled by OX, and is pluggable</a></li>
<li><a href="019.pl.html">has root =&gt; (is =&gt; 'ro', isa =&gt; 'Controller');</a></li>
<li><a href="020.html">GET request for '/' will call Controller::get</a></li>
<li><a href="021.html">this is just the sugar layer</a></li>
<li><a href="022.pl.html">package App;</a></li>
<li><a href="023.html">or, you can replace the router entirely</a></li>
<li><a href="024.pl.html">router 'My::Custom::Router::Class';</a></li>
<li><a href="025.html">Plack</a></li>
<li><a href="026.html">OX applications provide the Plack::Component api</a></li>
<li><a href="027.html">two types of middleware</a></li>
<li><a href="028.html">your application class should be able to declare app-specific middleware</a></li>
<li><a href="029.pl.html">router as {</a></li>
<li><a href="030.pl.html">has session_store =&gt; (</a></li>
<li><a href="031.html">again, this is just the sugar layer</a></li>
<li><a href="032.pl.html">package App;</a></li>
<li><a href="033.pl.html">package App;</a></li>
<li><a href="034.html">benefits of OX</a></li>
<li><a href="035.html">reuse</a></li>
<li><a href="036.pl.html">package App;</a></li>
<li><a href="037.pl.html">package App;</a></li>
<li><a href="038.html">application classes are decoupled, and can be used independently</a></li>
<li><a href="039.pl.html">App-&gt;new-&gt;model</a></li>
<li><a href="040.html">get the model object exactly as it would be initialized within the app</a></li>
<li><a href="041.html">App-&gt;new(dsn =&gt; 'dbi:SQLite::memory:')-&gt;to_app</a></li>
<li><a href="042.html">override specific bits of the application at initialization time</a></li>
<li><a href="043.html">the entire structure is just building on existing technology</a></li>
<li><a href="044.html">TODO</a></li>
<li><a href="045.html">nested applications need work</a></li>
<li><a href="046.html">bread::board subcontainers</a></li>
<li><a href="047.html">more extensible routebuilders</a></li>
<li><a href="048.html">cleaner underlying foundation</a></li>
<li><a href="049.html">Any questions?</a></li>
</ul>
<p>This presentation was generated by <a
href="http://ingydotnet.github.com/vroom-pm">Vroom</a>. Use &lt;SPACE&gt; key to go
forward and &lt;BACKSPACE&gt; to go backwards.
</p>
</body>