-
Notifications
You must be signed in to change notification settings - Fork 11
/
01-introduction.md.erb
118 lines (65 loc) · 10.2 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
109
110
111
112
113
114
115
116
117
118
---
title: 紹介
slug: 紹介
date: 0001/01/01
number: 1
contents: Meteorの素晴らしい特徴を勉強しましょう.|この本に関してのストーリー。|この本のまとめ方に関して
paragraphs: 35
version: 1.7
---
私がこれから言うことをちょっと想像してみてください。あなたは今自分のコンピューターに向かって、同じフォルダーを2つの異なるウインドウで開いています。
そして今、2つのウインドウのうちの1つをクリックして、ファイルを削除します。削除したファイルは別のウインドウからも消えましたか?
消える事を知っていたら、実際にこれを試す必要はありません。私たちがローカルのファイルシステムで何かを修正をするとき、リフレッシュやコールバックの必要なしに修正内
容は更新されます。いや、出来てしまうのです。
ところで、同じシナリオをWEB上で行っときの事について考えてみましょう。例えば、同じワードプレスの管理サイトを二つのブラウザで開いていたとします。そして、どちらか一方を新規更新したとします。デスクトップ上とは違い、どんなに長く待っても、自らリフレッシュしない限り、もう1つのウインドウのサイトには更新内容が反映されません。
長年私たちはWEBサイトとは、短く、別々のバーストで通信する物だという考えに慣れてきました。
しかし、Meteorは、Webをリアルタイムで反映させ続ける状態を保つ事に挑戦し続ける、フレームワークとテクノロジーの新しい時代の波の1つです。
### Meteorて何?
MeteorとはリアルタイムでWebアプリを構築できるNode.jsの上に構築されたプラットフォームです。あなたのアプリのデータベースとそのユーザーインターフェイスの間のサイト、その両方がシンクし続けている状態を保させる状態を作ります。
Node.js上で構築されているので、Meteorはクライアント上そしてサーバー上ではJavaScriptを使用します。さらに重要な事は、Meteorは両方の環境の下、コードをシェアする事が出来るのです。
このような結果は、Webアプリの開発中に起こりうる落とし穴や、日常起こる煩わしさなどを取り除き、とてもパワフルにそしてとてもシンプルに管理することができます。
### なぜMeteor?
なぜ他のWebフレームワークでなくMeteorを学ぶべきなのか?Meteorの様々の機能については少し置いておいて、私たちは1つの事に集約されると信じています:Meteorは簡単に学べる。
もう他のどんなフレームワークより、Meteorはわずかな時間があれば、リアルタイムでWebアプリの取得とWeb上での公開が可能になるのです。もしあなたがかつてフロントエンドのディベロッパーだったとしたら、すでにJavaScriptには慣れているはずですよね、そしてまた新たに言語を習得必要はありません。
Meteorは、あなたが必要としているフレームワークかも知れませんし、または違うかもしれません。しかし、帰宅後もしくは週末の数時間のコースでやれるならば、これが自分に相応しいかどうかをトライしてみる価値はあると思いませんか?
### なぜこの本?
過去六ヶ月の間、 [Telescope](http://telesc.pe)や、誰でも独自のニュースサイトを作れるソーシャルニュースサイト( [Reddit](http://reddit.com)または、みんなが投稿したリンクに票を入れられる([Hacker news](http://news.ycombinator.com))などのオープンソースのMeteor Appの製作をしてきました。
アプリ構築について山のように学びました、しかし、常に向き合う問題に対して答えを見つけるのは容易ではありませんでした。沢山の異なるソースを集結してつなぎ合わせなければならず、多くの場合、独自の可決策を考えなければなりませんでした。だからこの本では、私たちのこの教訓を共有し、最初から本格的なMeteorアプリを構築する手順を、順に追って説明し、簡単なステップーバイースッテプのガイドを作りたかったのです。
私たちが構築しているアプリはTelescopeのバージョンよりも簡素化したバージョンで、Microscopeと呼んでいます。構築している間、Meteorアプリの構築の中に入る、ユーザーアカウント、Meteorコレクション、ルーティン、など複数の異なる事柄全てに対応します。
そしてこの本を読み終わった後に、もっと掘り下げて勉強したい思った時でも、Telescopeと同じパターンに従っているので簡単にTelescopeのコードを習得できるでしょう。
### この本は誰のため?
この本を書く上での私たちのゴールの1つは、親しみやすく、理解しやすいという点を守るということです。それによりあなたが、Meteor,
Node.js、MVCフレームワークや、一般的なサーバー側のコーディングの経験がなくてもついていて来れるようにと言う思いがあるです。
またその一方では、基本的なJavaScriptのシンタックスやコンセプトがよく理解されていることが前提となっています。そうは言っても、多少jQueryやブラウザーのディベロッパーコンソールを操作した経験があるだけで大丈夫であろうと判断します。
### 作家に関して
もしあなたが、私たちの事を、どこの誰でなぜ信頼すべきなのかと躊躇しているのであれば、こちらが私たちの情報です。
<%= image "tom-photo.jpg", "portrait" %>
**Tom Coleman** (トム・コールマン)は、クオリティーとUXに焦点を当てている[Percolate Studio](http://percolatestudio.com/)Web開発のショップの一部です。彼は[Atmosphere](http://atmosphere.meteor.com)のパッケージのリポジトリをメンテナンスしている一人で、また数あるMeteorのオープンソースプロジェクトの陰の
ブレインの一人でもあります。
<%= image "sacha-photo.jpg", "portrait" %>
**Sacha Greif** (サーシャ・グリーフ)は[Hipmunk](http://hipmunk.com)や[RubyMotion](http://rubymotion.com) などのスタートアップで、プロダクト、webデザイナーとして働いた経験があります。また彼は
[Telescope](http://telesc.pe)や、(Telescopeをベースとしている)[Sidebar](http://sidebar.io)の開発者であり、 また[Folyo](http://folyo.me)の創設者でもあります。
### 章 & サイドバー
私たちはこの本を初心者でもプログラマーでも使えるようにしたいと思いました、この本では章を2つのカテゴリーに分けています: 通常の章(番号1から14)そしてサイドバー(番号.5)。
通常の章は、深すぎない程度に、またあなたのやる気を損なわせず、それでいて、可能な限り重要なステップを説明しながらアプリの構築をカバーします。
一方、サイドバーではMeteorの深いところまで掘り下げて、実際のところどうなっているかを追求します。
例えば、あなたが初心者であるなら、最初はサイドバーを飛ばして、Meteorに慣れてきたところでもう一度戻って読むということも出来ます。
### コミット & リアルタイムでのインスタンス化
プログラミングを勉強しているときに、いきなりコードが今まで通りのように動作せずデーターが一致しなくなる事ほど最悪な事はありません。
これを避けるために、私たちは[a GitHub repository for Microscope](https://github.com/DiscoverMeteor/Microscope)を設置し、数行のコードが更新される度にGitのコミットへ直接リンクされるようにしました。更には、それぞれのコミットが、特定のコミットのあるアプリに対してもリアルタイムでインスタンス化をしてリンクをさせます、それによりローカルにある自分のファイルとそれを比較する事が出来ます。
<%= commit "11-2", "Display notifications in the header." %>
しかし、私たちがこれらのコミットを用意したから問いって”Git チェック”から次へ行く必要はありません。アプリのコードをマニュアルでタイプする事に時間をかけるて勉強した方が遥かにいいですということは覚えていて下さい。
### その他のリソース
Meteorについての特にもっと詳細が知りたい場合は[official Meteor documentation](http://docs.meteor.com/)を参考にするのが一番良いと思われます。
////
<% note do %>
### Gitが必要ですか?
GITのバージョンコントロールに慣れているならこの本に忠実に従う必要はないという事を強くお薦めします。
早くついてきたいのであれば、Nick Farinaの[Git Is Simpler Than You Think](http://nfarina.com/post/9868516270/git-is-simpler)をお薦めします.
GITの初心者であれば、コマンドラインを使わなくてもレポスを管理しないでクローンしてくれる[GitHub for Mac](http://mac.github.com/) アプリをお薦めします。
<% end %>
### 連絡方法
-連絡したい事があればメールで[[email protected]](mailto:[email protected])まで連絡ください。
- 本の内容に誤字や間違いを見つけた場合、[submitting a bug in this GitHub repo](https://github.com/DiscoverMeteor/book/issues)までご連絡ください。
- Microscopeのコードに問題を発見したら、[submit a bug in Microscope's repository](https://github.com/DiscoverMeteor/Microscope/issues)までご連絡ください。
- 最後にその他質問がある場合は、アプリのサイドパネルにコメントを残してください。