This repository was archived by the owner on May 10, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
349 lines (305 loc) · 12.4 KB
/
Copy pathindex.html
File metadata and controls
349 lines (305 loc) · 12.4 KB
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Úvod do PHP</title>
<meta name="description" content="A framework for easily creating beautiful presentations using HTML">
<meta name="author" content="Hakim El Hattab">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<meta name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
<link rel="stylesheet" href="css/reveal.css">
<link rel="stylesheet" href="css/theme/white.css" id="theme">
<!-- Code syntax highlighting -->
<link rel="stylesheet" href="lib/css/zenburn.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement('link');
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match(/print-pdf/gi) ? 'css/print/pdf.css' : 'css/print/paper.css';
document.getElementsByTagName('head')[0].appendChild(link);
</script>
<!--[if lt IE 9]>
<script src="lib/js/html5shiv.js"></script>
<![endif]-->
</head>
<body>
<div class="reveal">
<div class="slides">
<section>
<h1>Úvod DO PHP</h1>
<h3>Czechitas 2016</h3>
<p>
<small>Štěpán Kočí</small>
</p>
<aside class="notes">
<p>Uvádět konkrétní příklady.</p>
<p>Ptát se, jestli je vše jasné.</p>
<p>Dávat pozor, jestli jsou ve střehu a výklad je baví.</p>
</aside>
</section>
<section>
<h2>Kdo jsem</h2>
<ul>
<li>Štěpán Kočí</li>
<li>Dělám webové stránky a webové aplikace od roku 2000</li>
<li>Mám s kamarády firmu <a href="https://www.imatic.cz">Imatic Software</a></li>
</ul>
</section>
<section>
<h2>O čem to bude?</h2>
<ul>
<li>Rychle proběhneme teorii co je PHP a co se s ním dá dělat</li>
<li>Podíváme se na ukázky PHP a něco s nimi vyzkoušíme</li>
<li>Bude to na celé dopoledne</li>
<li>I tak to bude rychlé</li>
<li>Ptejte se!</li>
</ul>
<aside class="notes">
<p>Přerušujte mě a ptejte se pokud nebude něco jasné. Bude to pro mně dobré vodítko.</p>
<p>Nepochopení je moje chyba ve vysvětlování, chci aby pochopily.</p>
</aside>
</section>
<section>
<h2>Otázky na začátek</h2>
<h3>Má někdo alespoň základní zkušenosti s:</h3>
<ul>
<li>vývojem www stránek?</li>
<li>programováním?</li>
<li>programováním v PHP?</li>
</ul>
<aside class="notes">
<p>:)</p>
<p>Snažit se přizpůsobit prezentaci podle výsledku.</p>
</aside>
</section>
<section>
<h2>Co je PHP?</h2>
<ul>
<li>Programovací jazyk a jeho běhové prostředí</li>
<li>Open source</li>
<li>Dostupný pro Windows, Linux, Mac atp.</li>
<li>Cca od roku 1994</li>
</ul>
<aside class="notes">
<p>Začalo jako doplněk pro jednoduché dynamické stránky,
časem se stal velmi oblíbeným a používaným jazykem.</p>
<p>Běhové prostředí spouští a vykonává PHP</p>
</aside>
</section>
<section>
<h2>Kde se PHP používá</h2>
<ul>
<li>Wikipedia</li>
<li>Facebook</li>
<li>MailChimp</li>
<li>WordPress (czechitas.cz :) )</li>
<li>Mall.cz</li>
<li>ČSFD</li>
<li>JOBS.cz</li>
<li>...</li>
</ul>
</section>
<section>
<h2>Výhody PHP</h2>
<ul>
<li>Jednoduché a rychlé programování</li>
<li>Nekompiluje se, program se jen spustí</li>
<li>Dobrá podpora webhostingů a rozšířenost</li>
<li>Velká komunita, hodně článků, návodů apod.</li>
<li>Skvělá oficiální dokumentace <a href="http://php.net">php.net</a></li>
<li>Neustále se zlepšující jazyk, knihovny a nástroje</li>
<li><strong>Po PHP programátorech je poptávka!</strong></li>
<li><strong>Po programátorkách větší! :)</strong></li>
</ul>
</section>
<section>
<h2>Nevýhody PHP</h2>
<ul>
<li>Nekonzistence v chování funkcí</li>
<li>Nekonzistence v pojmenování a parametrech funkcí</li>
<li>S každým požadavkem se provádí celý kód znovu</li>
<li>Není standardně podpora Unicode ve funkcích</li>
<li>Začátečník rychle sklouzne ke špatnému kódu</li>
</ul>
<p>Většina problémů se postupně řeší, každá nová verze PHP je o kus lepší.</p>
</section>
<section>
<h2>Co se dá s PHP dělat?</h2>
<ul>
<li>Programovat www stránky</li>
<li>Programovat www aplikace</li>
<li>Programovat command line programy</li>
</ul>
<aside class="notes">
Další příklad třeba Imatic vstupní systém.<br>
:)
</aside>
</section>
<section>
<h2>www stránky</h2>
<ul>
<li>Chceme zobrazovat dynamický obsah</li>
<li>Web je rozsáhlý a nechceme spravovat desítky statických stránek</li>
<li>Používáme on-line administrační rozhraní</li>
</ul>
<aside class="notes">
Příklady použití.
CMS (Wordpress), drobnosti (zobrazení data, náhodné fotky, komentáře, ..)
</aside>
</section>
<section>
<h2>www aplikace</h2>
<ul>
<li>V PHP můžeme psát od malých aplikací po velké systémy</li>
<li>E-shopy, informační systémy, rezervační systémy, sociální sítě...</li>
</ul>
<aside class="notes">
Příklady použití:
PHP čte data z databáze a zobrazuje je na webu.
Uživatel přes webovou stránku ukládá data přes PHP do databáze.
PHP je spouštěno na serveru a něco tam dělá (aktualizuje data podle jiné databáze, počítá...)
</aside>
<!-- todo: lepší body.. -->
</section>
<section>
<h2>Command line programy</h2>
<p>Command line = příkazová řádka</p>
<ul>
<li>PHP program se spouští z příkazové řádky</li>
<li>Vhodné například pro zjednodušení a zrychlení rutinních úkolů</li>
</ul>
<aside class="notes">
Např.:
Hromadné přejmenování souborů.
Zmenšení fotek z dovolené.
Přesun/rozdělení fotek podle data vyfocení do různých adresářů.
Hlídání slev v různých obchodech:)
</aside>
</section>
<section>
<h2>A teď praxe...</h2>
</section>
<section>
<h2>Jak napsat první PHP program?</h2>
<ul>
<li>V <em>document root</em> web serveru vytvoříme textový soubor <code>test.php</code></li>
<li>Do souboru napíšeme:
<pre><code><?php phpinfo(); ?></code></pre>
</li>
</ul>
<aside class="notes">
<p>Použijeme vestavěný webserver v PHP</p>
<p>Píšeme v poznámkovém bloku nebo jiném editoru, který máme, ne word:)</p>
</aside>
</section>
<section>
<h2>Jak spustit PHP program?</h2>
<h3>Přes web server</h3>
<p>V prohlížeči otevřeme adresu <code>localhost/test.php</code></p>
<p>
<em>
<small>(test.php musí být document root)</small>
</em>
</p>
<h3>Přes příkazovou řádku</h3>
<p><code>php test.php</code></p>
<p>
<em>
<small>(php musí být v systémové cestě a příkazová řádka v adresáři document root web serveru)
</small>
</em>
</p>
<aside class="notes">
<p>Použijeme XAMPP</p>
<p>Píšeme v poznámkovém bloku nebo jiném editoru, který máme, ne word:)</p>
<p>Lomítko může být normální i zpětné</p>
<p>Windows 7</p>
<ul>
<li>Tento počítač > Vlastnosti</li>
<li>Upřesnit nastavení systému</li>
<li>Proměnné prostředí</li>
<li>PATH</li>
</ul>
</aside>
</section>
<section>
<h2>Ukázka</h2>
<p>Zkusíme se podívat na reálný PHP kód a vysvětlit si, co dělá.</p>
<p>
Zdrojové kódy ukázek jsou na: <a href="http://bit.ly/28S4Qee">bit.ly/28S4Qee</a>
</p>
<p>
<small>
(<a href="https://github.com/stepankoci/uvod-do-php-slidy/tree/master/php"
>https://github.com/stepankoci/uvod-do-php-slidy/tree/master/php</a>)
</small>
</p>
<aside class="notes">
<p>V ukázce opakovat, vysvětlovat detaily.</p>
</aside>
</section>
<section>
<h2>Rekapitulace</h2>
<ul>
<li>PHP je super :)</li>
<li>Od malého webu po velké aplikace</li>
<li>Jednoduché, rychlé, skvělá podpora, dokumentace</li>
<li>PHP programátor(ka) najde rychle práci</li>
<li>Spouští se přes webserver nebo příkazovou řádku</li>
<li>PHP se zpracuje na webserveru, do prohlížeče se pošle jeho výstup</li>
<li>Víme, co jsou proměnné, operátory, řídící struktury, funkce a co dělat, když najdeme chybu</li>
</ul>
<aside class="notes">
<p>A to je jen začátek, dneska se toho ještě naučíme mnohem více :)</p>
</aside>
</section>
<section>
<h2>Děkuji za pozornost</h2>
<h3>Dotazy?</h3>
<p><br><br><em><a href="mailto:stepan.koci@gmail.com">stepan.koci@gmail.com</a></em></p>
</section>
</div>
</div>
<script src="lib/js/head.min.js"></script>
<script src="js/reveal.js"></script>
<script>
// Full list of configuration options available at:
// https://github.com/hakimel/reveal.js#configuration
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: true,
transition: 'slide', // none/fade/slide/convex/concave/zoom
// Optional reveal.js plugins
dependencies: [
{
src: 'lib/js/classList.js', condition: function () {
return !document.body.classList;
}
},
{
src: 'plugin/markdown/marked.js', condition: function () {
return !!document.querySelector('[data-markdown]');
}
},
{
src: 'plugin/markdown/markdown.js', condition: function () {
return !!document.querySelector('[data-markdown]');
}
},
{
src: 'plugin/highlight/highlight.js', async: true, callback: function () {
hljs.initHighlightingOnLoad();
}
},
{src: 'plugin/zoom-js/zoom.js', async: true},
{src: 'plugin/notes/notes.js', async: true}
]
});
</script>
</body>
</html>