Symfonyの覚書 「用語集」

Symfonyでよく使われる用語集。調べてみて自分なりの解釈。


MVCパターン

Model(モデル)、View(ビュー)、Controller(コントローラ)の三つに分けてプログラミングする手法のこと。
Modelは「処理」、Viewは「出力」、Controllerは「入力」の役割を持つ。


プロジェクト

案件。コマンドラインから一発で初期ファイルを生成できる。
Adobe製品で例えると「Creative Suite」のこと。


アプリケーション

Symfonyでは公開用、管理用、携帯用などにアプリケーションを分けて作る。コマンドラインから一発で初期ファイルを生成できる。
Adobe製品で例えると「Creative Suiteの中のPhotoshopとかIllustrator」のこと。


モジュール

アプリケーションの単体機能。コマンドラインから一発で初期ファイルを生成できる。
Adobe製品で例えると「Photoshopのフィルタ機能とかレイヤー機能」のこと。


アクション

画面を表示したり、データベースに情報を保存したりする行いのこと。
モジュールのプログラムを書くファイルのこと。
モジュールを生成するとデフォルトでindexというアクションが作られる。


リクエス

ブラウザからの要求。ページへアクセスしたときのURLやフォームで入力した内容を送信する時のデータのこと。


リスポンス(レスポンス)

リクエストに対する返信。ページを表示するためのデータやブラウザに送るヘッダ情報など。


セッション

アクセス数の単位。一定期間ユーザの情報をサーバに保存し、サイト内で「同じ人」を識別するための機能。Symfonyではデフォルトでサポートされている。


コンポーネント

モジュールと同じようなもの。モジュールよりは小さな一機能の固まり。モジュールがページ全体を表示する機能としたら、コンポーネントは左メニューやフッターなどの細かい部品を表示する機能。
使い回しの多いプログラムはコンポーネント化した方がいい。


Propel

データベースへ接続してデータを取り出したり保存したりするための機能を持ったプログラムパッケージ。データベースを扱う専門のフレームワーク


ORMレイヤー

データベースの情報をプログラムから簡単にアクセスするための機構「ORM」を扱う部分のこと。
データベースに関する処理の記述がスマートにするもの。


YAML

XMLのようなデータ記述フォーマット。人間が読みやすいようになっているのが特徴。


フロントコントローラ

ブラウザからのリクエストを一番最初に受け取るプログラム。SymfonyではリクエストURLからアクションとモジュール名を解析し、それぞれのプログラムを呼び出すなどの役割を持っている。


グローバル変数

一処理中にどこからでも呼び出せる変数。処理が全部終わると消える。


ルーティング

URLを人間にわかりやすく書き換える機能。URLからアクションやモジュールを関連づける機能。URLの記述を楽にする機能。


i18n

サービスを国際化、多言語化すること。Symfonyではプログラミングにおいて、楽に多言語化できるようになっている。



XSS

クロスサイトスクリプティング (Cross Site Scripting)という脆弱性
入力データにスクリプトを仕込んで送り込み、訪問者にそれを実行させること。



CSRF

クロスサイトリクエストフォージェリ (Cross Site Request Forgeri)という脆弱性
入力データにスクリプトやURLを仕込んで送り込み、訪問者にそれを実行させること。
XSSとは違い、サービスに用意されている正規のプログラムを悪用する。