Skip to content

Commit

Permalink
Merge pull request #8 from masakielastic/master
Browse files Browse the repository at this point in the history
相互リンクの追加と未翻訳の箇所の追加翻訳
  • Loading branch information
masakielastic committed May 8, 2012
2 parents 8e7cd58 + 8adbd83 commit 382b023
Show file tree
Hide file tree
Showing 13 changed files with 235 additions and 19 deletions.
12 changes: 11 additions & 1 deletion index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,14 @@ Create your own framework - Symfony コンポーネントの上に(日本語
:hidden:

part01.rst

part02.rst
part03.rst
part04.rst
part05.rst
part06.rst
part07.rst
part08.rst
part09.rst
part10.rst
part11.rst
part12.rst
18 changes: 17 additions & 1 deletion part01.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
Web フレームワークをつくろう - Symfony コンポーネントの上に (パート 1)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_

Symfony2 は単体で独立していて、疎結合され、凝縮された PHP コンポーネントの集まりで、Web 開発の共通の問題を解決します。

これらの低水準のコンポーネントに取り組む代わりに、フルスタックフレームワークの Symfony2 をすぐに使い始めることができます。これは先ほどあげた Symfony2 のコンポーネントがもとになっています。もしくはまったくあなた独自のフレームワークを作ることもできます。この連載は後者に関するものです。
Expand Down Expand Up @@ -142,12 +146,24 @@ CLI で ``autoload.php`` を実行できます。これは何も行わず、エ

このシリーズの最初の部分はこれでおしまいです。次に、HttpFoundation コンポーネントを導入して何がもたらされるか見ることにします。

.. _`ドキュメント`: http://symfony.com/doc
.. _`ドキュメント`: http://symfony.com/doc
.. _`Silex`: http://silex.sensiolabs.org/
.. _`オートロード`: http://fr.php.net/autoload
.. _`Composer`: http://packagist.org/about-composer
.. _`PSR-0`: https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md
.. _`Symfony2 のコーディング標準`: http://symfony.com/doc/current/contributing/code/standards.html
.. _`ClassLoader`: http://symfony.com/doc/current/components/class_loader.html
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html

.. 2012/01/29 masakielastic db93254dea29d07acf1acd066029e5db0fdf33e6
20 changes: 19 additions & 1 deletion part02.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 2)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


コードのリファクタリングに入る前に、話を前回に戻し、簡素な (plain-old) PHP アプリケーションをそのままに維持する代わりになぜフレームワークを使いたいのか、もっともシンプルなコードのスニペットに対してでさえ、フレームワークを使うはじめることが本当によい考えであるのはなぜ、コンポーネントの上にフレームワークを作ることがゼロから作るよりもよいのかなどについて見ることにします。

.. note::
Expand Down Expand Up @@ -121,7 +126,7 @@ PHP において、リクエストはグローバル変数によって表れさ
では ``Request`` と
``Response`` クラスを使ってアプリケーションを書き換えましょう。::

<php
<?php

// framework/index.php

Expand Down Expand Up @@ -266,5 +271,18 @@ PHP において、リクエストはグローバル変数によって表れさ
.. _`Silex`: http://silex.sensiolabs.org/
.. _`Midgard CMS`: http://www.midgard-project.org/
.. _`Zikula`: http://zikula.org/
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html

.. 2012/04/26 masakielastic d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
18 changes: 18 additions & 0 deletions part03.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 3)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


これまで、ページが1つしかなかったので、我々のアプリケーションは割り切ったものでした。少しおもしろくするために、頭をやわらかくして、Goodbye を伝える別のページを追加しましょう。::

<?php
Expand Down Expand Up @@ -220,5 +225,18 @@ We have our framework for today::
ここで止めるのであれば、URL マップを設定ファイルに抽出することであなたのフレームワークを強化できるでしょう。

.. _`フロントコントローラ`: http://symfony.com/doc/current/book/from_flat_php_to_symfony2.html#a-front-controller-to-the-rescue
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html


.. 2012/05/04 username d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
17 changes: 17 additions & 0 deletions part04.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 4)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


今日のトピックを始める前に、テンプレートをもっと読みやすくするために、現在の我々のフレームワークを少しリファクタリングしましょう。::

<?php
Expand Down Expand Up @@ -233,5 +238,17 @@ Routing コンポーネントを使うことで1つの追加された大きな
echo $dumper->dump();

.. _`ドキュメント`: http://symfony.com/doc/current/components/routing.html
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html

.. 2012/05/04 username d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
18 changes: 18 additions & 0 deletions part05.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 5)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


賢明な読者は特定の「コード」 (テンプレート) が実行される方法をフレームワークがハードコードしていることに気づいています。これまでつくったようなシンプルなページに関して、問題はありませんが、さらにロジックを追加したい場合、ロジックをテンプレート自身に置くことを強制させられます。これはとりわけ関心の分離をまだ覚えているのであれば、おそらくはよい考えではありません。

新しいレイヤーであるコントローラを追加することでテンプレートのコードをロジックから分離しましょう: *コントローラのミッションはクライアントの Request によって運ばれた情報にもとづいて Response を生成することです。*
Expand Down Expand Up @@ -157,5 +162,18 @@ Web フレームワークをつくろう - Symfony2 コンポーネントの上

.. _`コールバック`: http://php.net/callback#language.types.callback
.. _`Web サイト`: http://kottke.org/08/02/single-serving-sites
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html


.. 2012/05/05 username d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
18 changes: 18 additions & 0 deletions part06.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 6)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


我々のフレームワークはすでにとても堅牢であるとお考えかもしれません。そしてはそれはおそらく正しいです。それでも改善する方法を見てみましょう。

今すぐ、我々のコードは手続き型のコードを使いますが、コントローラは任意の PHP コールバックになることを覚えておいてください。コントローラを適切なクラスに変換しましょう。::
Expand Down Expand Up @@ -174,5 +179,18 @@ Request と属性を同時にインジェクトすることもできます (マ
.. _`リフレクション`: http://php.net/reflection
.. _`FrameworkExtraBundle`: http://symfony.com/doc/current/bundles/SensioFrameworkExtraBundle/annotations/converters.html
.. _`サービスとしてのコントローラ`: http://symfony.com/doc/current/cookbook/controller/service.html
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html


.. 2012/05/02 masakielastic d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
19 changes: 19 additions & 0 deletions part07.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 7)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


今のところ我々のフレームワークの1つの欠点は新しい Web サイトをつくるたびに ``front.php`` でコードをコピー&ペーストする必要があることです。40行のコードは多くありませんが、このコードを適切なクラスに包むことができれば都合がよいです。It would bring us better *reusability* and easier testing to name just
a few benefits.

Expand Down Expand Up @@ -178,4 +183,18 @@ Symfony2 コンポーネントは PHP 5.3 を必須とするので、我々の

* ``src/app.php``: アプリケーションのコンフィギュレーション/フレームワークのカスタマイズ内容。

.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html


.. 2012/05/05 masakielastic d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
18 changes: 18 additions & 0 deletions part08.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Web フレームワークをつくろう - Symfony2 コンポーネントの上に (パート 8)
=======================================================================

.. note::

この記事は Symfony2 コンポーネントでフレームワークをつくる方法を説明した連載記事の一部です: `1`_, `2`_, `3`_, `4`_, `5`_, `6`_, `7`_, `8`_, `9`_, `10`_, `11`_, `12`_


用心深い読者の方に昨日つくったフレームワークにささいだが重大なバグがあることを指摘しました。フレームワークをつくるとき、フレームワークのふるまいが想定どおりなのか確認しなければなりません。そうでなければ、それにもとづいたすべてのアプリケーションは同じバグをさらすことになります。よいニュースはバグを修正すれば、無数のアプリケーションも修正したことになります。

今日のミッションは `PHPUnit`_ を使ってすでに作成したフレームワークのユニットテストを書くことです。
Expand Down Expand Up @@ -168,5 +173,18 @@ Web フレームワークをつくろう - Symfony2 コンポーネントの上
.. _`PHPUnit`: http://www.phpunit.de/manual/current/ja/index.html
.. _`テストダブル`: http://www.phpunit.de/manual/current/ja/test-doubles.html
.. _`XDebug`: http://xdebug.org/
.. _`1`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part01.html
.. _`2`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part02.html
.. _`3`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part03.html
.. _`4`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part04.html
.. _`5`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part05.html
.. _`6`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part06.html
.. _`7`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part07.html
.. _`8`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part08.html
.. _`9`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part09.html
.. _`10`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part10.html
.. _`11`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part11.html
.. _`12`: http://docs.symfony.gr.jp/symfony2/create-your-framework/part12.html


.. 2012/05/06 masakielastic d0ff8bc245d198bd8eadece0a2f62b9ecd6ae6ab
Loading

0 comments on commit 382b023

Please sign in to comment.