forked from DiscoverMeteor/DiscoverMeteor_fr
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path01-introduction.md.erb
104 lines (59 loc) · 8.58 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
---
title: Introduction
slug: introduction
date: 0001/01/01
number: 1
points: 1
photoUrl: http://www.flickr.com/photos/62303607@N00/7779436538/
photoAuthor: Richard
contents: Apprendre ce qui rend Meteor si spécial.|Lire l'histoire de ce livre.|Comprendre comment ce livre est organisé.
paragraphs: 35
---
Commençons avec un petit exercice mental. Imaginez que vous ouvriez le même dossier dans deux fenêtres différentes de votre ordinateur.
Cliquez maintenant dans une des deux fenêtres et effacez un fichier. Ce fichier a-t-il aussi disparu de l'autre fenêtre ?
Il n'est pas nécessaire de passer par ces étapes pour savoir que c'est bien le cas. Quand on modifie quelque chose dans notre système de fichier local, le changement s'applique partout sans avoir besoin de rafraîchir ou d'utiliser une fonction de rappel (callback). Ça marche, tout simplement.
Par contre, imaginons ce même scénario sur le web. Considérons par exemple que vous ouvriez le même panneau d'administration Wordpress dans deux fenêtres de navigateur, puis que vous créiez un nouveau post dans l'une d'elles. Contrairement à l'expérience précedente, et même si vous attendez, l'autre fenêtre ne changera pas à moins de la rafraîchir.
Nous nous sommes habitués d'années en années à l'idée qu'on ne communique avec un site que par de courtes actions, distinctes les unes des autres.
Heureusement, Meteor fait partie d'une nouvelle vague de frameworks et de technologies qui comptent bien remettre en question ce statu quo en rendant le web temps-réel (real-time) et réactif.
### Qu'est-ce que Meteor ?
Meteor est une plateforme basée sur Node.js pour créer des applications web temps-réel. C'est ce qui fait le lien entre la base de données de votre application et son interface utilisateur, tout en s'assurant que les deux restent bien synchronisés.
Puisque Meteor est basé sur Node.js, il utilise JavaScript à la fois coté client et coté serveur. Autre chose, Meteor permet aussi de partager du code entre les deux environnements.
Tout cela nous donne une plateforme pouvant être très puissante et très simple en fournissant une couche d'abstraction à de nombreux problèmes et pièges rencontrés lors du développement d'applications web.
### Pourquoi Meteor ?
Bon alors pourquoi passer votre temps à apprendre Meteor plutôt qu'une autre plateforme ? Sans compter les nombreuses fonctionnalités de Meteor, la raison est claire : Meteor est facile à apprendre.
Comparé aux autres plateformes, Meteor permet l'implémentation et le déploiement d'une application web temps-réel en l'espace de seulement quelques heures. Et si vous avez un peu d'expérience avec le développement front-end, vous êtes déjà familier avec le JavaScript et vous n'aurez pas à apprendre un nouveau langage.
Meteor est peut-être la plateforme idéale qui répond à tous vos besoins, mais peut-être pas. Puisque qu'il ne faut qu'une soirée ou un week-end pour démarrer, pourquoi ne pas essayer ?
### Pourquoi ce livre ?
Sur les deux dernières années, nous avons travaillé sur de nombreux projets Meteor. Nous avons fait des applications webs et mobiles, open-sources et commerciales.
Nous avons beaucoup appris, mais trouver les réponses à nos questions n'était pas toujours très simple. Il nous a fallu assembler les pièces du puzzle à partir de sources multiples, et souvent même inventer nos propres solutions. Avec ce livre, nous souhaitions partager toutes ces leçons et créer un guide simple et détaillé qui vous aiderait à toutes les étapes de la construction d'une application Meteor.
L'application que nous allons construire est une version simplifié des sites sociaux de news tels que [Hacker News](http://news.ycombinator.com) ou [Reddit](http://reddit.com). Nous l'avons appelé Microscope (par analogie avec son grand frère, [Telescope](http://telesc.pe) un autre projet Meteor open-source). Pendant que nous le construirons, nous vous apprendrons tout les éléments nécéssaire au développement d'une application Meteor comme la gestion des utilisateurs, les collections Meteor, le routing et beaucoup plus.
### A propos des auteurs
Au cas où vous vous demandez qui nous sommes et pourquoi vous pouvez nous faire confiance, voici un peu d'information sur nous.
<%= image "tom-photo.jpg", "portrait" %>
**Tom Coleman** fait partie de [Percolate Studio](http://percolatestudio.com/), un studio de développement web ciblant la qualité et l'expérience utilisateur. Il travaille également sur [Atmosphere](http://atmosphere.meteor.com), un service de paquet pour vos applications Meteor. Enfin, c'est aussi l'un des cerveaux derrière de nombreux projets Meteor open-source (par exemple [Iron Router](https://github.com/EventedMind/iron-router)).
<%= image "sacha-photo.jpg", "portrait" %>
**Sacha Greif** a travaillé avec des startups comme [Hipmunk](http://hipmunk.com/) et [RubyMotion](http://rubymotion.com/) en tant que designeur produit et designeur web. Il est le créateur de [Telescope](http://telesc.pe/) et de [Sidebar](http://sidebar.io/) (basé sur Telescope), et il est aussi le fondateur de [Folyo](http://folyo.me/).
### Chapitres & Apartés
Nous voulions que ce livre soit utile aussi bien pour l’utilisateur novice de Meteor que pour le programmeur avancé, ainsi nous avons séparés les chapitres en deux catégories : les chapitres normaux (numérotés de 1 à 14) et les apartés (numéros .5).
Les chapitres normaux constituent la ligne conductrice pour construire l’application, et nous essayerons de la rendre opérationnelle dès que possible en expliquant les étapes les plus importantes sans vous encombrer avec les détails.
D’un autre côté, les apartés iront plus loin dans les subtilités de Meteor, et vous aideront à mieux comprendre ce qui se passe réellement dans les coulisses.
Ainsi, si vous êtes débutant, vous pouvez passer les apartés pour votre première lecture, et revenir à elles une fois que vous aurez joué un peu avec Meteor.
### Commits & Instances en ligne
Il n’y a rien de pire que d’être en train de suivre un livre de programmation et de tout à coup se rendre compte que notre code n’est plus synchronisé avec les exemples et que plus rien ne fonctionne comme cela devrait.
Pour éviter cela, nous avons créé un [dépôt sur GitHub pour Microscope](https://github.com/SachaG/Microscope), et nous proposerons également des liens directs vers les commits de Git à chaque modification de code. De plus, chaque commit est lié à une instance en ligne de l’application, ainsi vous pourrez le comparer avec votre copie locale. Ici un exemple de ce que vous pourriez voir :
<%= commit "11-2", "Afficher les notifications dans l'entête." %>
Une seule chose, ce n’est pas parce que nous mettons à votre disposition ces commits que vous devez juste passer d’un checkout au suivant. Vous apprendrez mieux si vous prenez le temps nécessaire pour écrire le code de l’application !
### Quelques ressources supplémentaires
Si jamais vous souhaitez en apprendre plus sur un point précis de Meteor, la [documentation officielle de Meteor](http://docs.meteor.com/) est le meilleur endroit pour commencer.
Nous vous recommandons également [Stack Overflow](http://stackoverflow.com/questions/tagged/meteor) pour la résolution de problèmes et les questions, ainsi que le [canal IRC](https://webchat.freenode.net/) #meteor si vous avez besoin d’aide en direct.
<% note do %>
### Ai-je besoin de Git ?
Il n'est pas nécessaire d'être familiarisé avec le contrôle de versions Git pour suivre ce livre, mais nous le recommandons fortement.
Si vous souhaitez passer à la vitesse supérieure, nous vous recommandons [Git Is Simpler Than You Think](http://nfarina.com/post/9868516270/git-is-simpler) de Nick Farina.
Si vous êtes un débutant, nous vous recommandons également l’application [GitHub for Mac](http://mac.github.com/) qui vous permet de gérer vos dépôts sans utiliser la ligne de commande.
<% end %>
### Nous contacter
- Si vous souhaitez nous contacter, vous pouvez nous envoyer un email à [[email protected]](mailto:[email protected]).
- De même, si vous trouvez une erreur typographique ou toute autre erreur dans le contenu du livre, vous pouvez nous en informer en [soumettant un bug dans ce dépôt GitHub](https://github.com/DiscoverMeteor/book/issues).
- Si vous avez un quelconque problème avec le code de Microscope, vous pouvez soumettre un bug dans le [dépôt de Microscope](https://github.com/DiscoverMeteor/Microscope/issues).
- Enfin, pour toute autre question vous pouvez aussi nous laisser un commentaire dans le panneau latéral de cette application.