-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path01-introduction.md.erb
108 lines (60 loc) · 8.48 KB
/
01-introduction.md.erb
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
---
title: Bevezetés
slug: introduction
date: 0001/01/01
number: 1
contents: Megtudhatod, miért egyedülálló a Meteor?|Olvashatsz ennek a könyvnek a történetéről.|Megismerheted, hogyan rendszereztük a könyvet.
paragraphs: 35
---
Végezz el fejben egy kísérletet a kedvemért! Képzeld el, hogy megnyitod ugyanazt a könyvtárat két különböző ablakban a számítógépeden.
Most kattints az egyik ablakba és törölj egy fájlt. Eltűnt a fájl másik ablakból is?
Igazából nem is kell elvégezned ezeket a lépéseket ahhoz, hogy tudd: igen. Amikor módosítunk valamit a helyi fájlrendszeren, a változás megjelenik mindenhol anélkül, hogy szükségünk lenne frissítésre, vagy `callback`re. Egyszerűen csak megtörténik.
Ugyanakkor gondoljunk bele abba, hogy hogyan játszódna le ugyan ez a forgatókönyv az interneten. Például ha egy Wordpress oldal admin felületét nyitod meg két ablakban és az egyikben csinálsz egy új bejegyzést. A másik ablakban - mindegy mennyit vársz - az nem fog megjelenni, hacsak nem frissítesz.
Az évek során hozzászoktunk ahhoz az elvhez, hogy egy weboldal olyasvalami, amivel csak rövid, különálló parancsokkal kommunikálunk.
A Meteor viszont azon modern keretrendszerek és techonológiák közé tartozik, amelyek vállalják a kihívást, hogy az internetet valós idejűvé és reaktívvá tegyék.
### Mi is a Meteor?
A Meteor egy - a Node.js-re épülő - keretrendszer amely valós idejű webes alkalmazások építését teszi lehetővé. Az adatbázis és a kliens(ek) között helyezkediek el és az a feladata, hogy azok szinkronban legyenek.
Mivel a Meteor Node.js alapokra épült, javascriptet használ a kliensen és a szerveren egyaránt. Sőt képes meg is osztani a ugyanazt a kódot a két környezet között.
Mindezek eredménye egy olyan platform, amely nagyon egyszerű és kiváló teljesítményre képes, mivel megszabadít minket a webes fejlesztés leggyakoribb nehézségeitől és buktatóitól.
### Miért válasszam a Meteort?
Miért érdemes a Meteort választani más keretrendszerk helyett? A sok-sok érv közül egyet emelnék ki: a Meteor könnyen tanulható.
További előnye, hogy egy valós idejű webes applikáció órák alatt elkészülhet a Meteor segítségével. Ha azelőtt volt dolgod front-end fejlesztéssel, a JavaScript ismerős lehet és nem kell egy új nyelvet megtanulnod.
Lehet, hogy a Meteor lesz az ideális keretrendszer számodra, és lehet, hogy nem. De mivel az alapokat megismerheted néhány este, vagy egy hétvége alatt, miért is ne vágj bele és döntsd el magad?
### Miért válasszam ezt a könyvet?
Az utóbbi néhány évben számos Meteor projekten dolgoztunk, köztük webes és mobil alkalmazásokon, kereskedelmi és nyílt forráskódú projekteken egyaránt.
Rengeteget tanultunk, de nem mindig volt egyszerű megtalálni a válaszokat a kérdéseinkre. Sok különböző forrásból kellett az információt összeollózni, és sok esetben mi magunk kellett, hogy felfedezzük a megoldást. Ezzel a könyvvel szeretnénk megosztani mindezt a tudást, és egy olyan útmutatót adni, ami lépésről lépésre végigvezet egy komplett Meteor alkalmazás megalkotásán.
Az alkalmazás, amit írunk, egyszerűsített változata lesz egy közösségi híroldalnak, mint például a [Hacker News](https://news.ycombinator.com/), vagy a [Reddit](http://www.reddit.com/). Menet közben minden olyan fontos komponenst érinteni fogunk, ami egy Meteor alkalmazáshoz kellhet, úgymint felhasználói fiókok, Meteor kollekciók, routolás, stb.
### Kiknek szól ez a könyv
A könyv írása során célkitűzésünk volt, többek között, hogy könnyen követhető és megérthető legyen. Így jó eséllyel akkor is végig tudod venni, ha semmilyen Meteorral, Node.js-sel, MVC keretrendszerekkel, vagy akár szerver oldali programozással kapcsolatos tapasztalatod nincs.
Ugyanakkor feltételezünk alapvető JavaScript ismereteket és fogalmakat. Nyugi, ha valaha is összedobtál egy kis JQuery kódot vagy eljátszottál kicsit a böngészőben a konzollal, akkor nem lesz gond!
Ha viszont még nem mozogsz annyira otthonosan a JavaScript világában, akkor javasoljuk, hogy mielőtt belevágnál a könyvbe, szaladj végig a [JavaScript alapok a Meteorhoz](https://www.discovermeteor.com/blog/javascript-for-meteor/) írásunkon.
### A szerzőkről
Ha érdekel, hogy kik vagyunk és miért is kéne bíznod bennünk, itt egy kis bemutatkozás.
<%= image "tom-photo.jpg", "portrait" %>
**Tom Coleman** egy webes szoftverfejlesztő csapat, a [Percolate Studio](http://percolatestudio.com/) tagja, ahol a minőségen és a felhasználói élményen van a hangsúly. Társ-fejlesztője az [Atmosphere-nek](http://atmosphere.meteor.com), továbbá sok nyílt-forráskódú Meteor project mögött is ő áll (mint pl az [Iron Router](https://github.com/EventedMind/iron-router)).
<%= image "sacha-photo.jpg", "portrait" %>
**Sacha Greif** olyan startupoknál dolgozott, mint a [Hipmunk](http://hipmunk.com) és a [RubyMotion](http://rubymotion.com), mint termék- és web designer. Ő csinálja a [Telescope-ot](http://telesc.pe) valamint a [Sidebar-t](http://sidebar.io) (ami szinténn Telescope alapokon nyugszik), valamint ő a [Folyo](http://folyo.me) alapítója.
### Fejezetek és extrák
Azt szeretnénk, hogy mind a kezdő, mind a haladó Meteor fejlesztők számára hasznos legyen a könyv, ezért két típusra bontottuk a fejezeteket: általános (1-től 14-ig számozva) és *extra* (.5 számozással).
Az általános fejezetek végigvezetnek az alkalmazás fejlesztésén, megpróbálnak a lehető leggyorsabban használható tudást adni. Elmagyarázzák a legfontosabb lépéseket anélkül, hogy túl sokáig fárasztanának a részletekkel.
Ugyanakkor az extra fejezetek mélyebben tárgyalják a Meteor bonyolult részeit, és segítenek megérteni, hogy mi történik valójában a háttérben.
Tehát, ha kezdő vagy, nyugodtan hagyd ki az extra fejezeteket első körben, majd később visszatérhetsz rájuk, amikor már valamennyire megismerted a Meteort.
### Commitok és futtatható példányok
Nincs rosszabb, mint haladni egy programozással kapcsolatos könyvben, majd egyszercsak rájönni, hogy a kódod már nincs szinkronban a példákkal, és már semmi nem úgy működik, ahogy kellene.
Hogy ezt elkerüljük, létrehoztunk egy [Github repository-t a Microscope-hoz](https://github.com/DiscoverMeteor/Microscope), és közvetlen linket fogunk megadni minden commithoz, ami egy-egy kisebb változtatáshoz tartozik a kódban. Ezen felül minden commithoz linkeljük az alkalmazás egy futtatható példányát, mely az aktuális commithoz tartozó állapotot tükrözi. Íme egy példa, hogy is fog ez kinézni:
<%= commit "11-2", "Display notifications in the header." %>
Arra viszont felhívnánk a figyelmed, hogy csak azért, mert ezekhez a commitokhoz hozzáférést biztosítunk, még nem érdemes az egyik `git checkout` -ról rögtön a másikra ugrani. Sokkal könnyebben fogsz tanulni, ha rászánod az időt, hogy kézzel írd meg az alkalmazásod kódját!
### Néhány egyéb forrás
Ha bármikor is többet akarsz megtudni a Meteor egy bizonyos részéről, a [hivatalos Meteor dokumentáció](http://docs.meteor.com/) a legjobb kiindulási pont.
Szintén ajánljuk a [Stack Overflow](http://stackoverflow.com/questions/tagged/meteor) oldalt kérdésekhez és problémákhoz, és a #meteor [IRC csatornát](https://webchat.freenode.net/), ha azonnali segítségre van szükséged.
<% note do %>
### Szükségem van a Gitre?
Ugyan a Git verziókezelő rendszer ismerete a könyv végigolvasásához nem feltétlen szükséges, mi mindenképpen javasoljuk.
Gyorstalpalónak ajánljuk az [A Git egyszerűbb, mint hinnéd](http://nfarina.com/post/9868516270/git-is-simpler) című írást Nick Farinától.
Ha kezdő gites vagy, szintén javasoljuk a [GitHub for Mac](http://mac.github.com/) alkalmazást, amellyel a parancssor használata nélkül tudsz repókat klónozni és kezelni.
<% end %>
### Kapcsolat
- Ha kapcsolatba szeretnél lépni velünk, írj emailt a [hello@discovermeteor.com](mailto:hello@discovermeteor.com)-ra.
- Ha bármilyen hibát, vagy elírást találsz a könyvben, [nyiss egy bugot a GitHubon](https://github.com/DiscoverMeteor/book/issues).
- Ha a Microscope kódjával van gondod, [nyiss egy bugot a Microscope repository-ban](https://github.com/DiscoverMeteor/Microscope/issues).
- Végül, ha bármi egyéb kérdésed lenne, kommentelhetsz ezen az oldalon is, a bal szélen található panelen.