#はじめに
初心者がWebサービスを開発・公開するための全体像(イメージ)をまとめたメモです。技術的なところではなく、用語を中心に書籍でやった実際の流れをまとめました。
とは言っても、一度行ったこと(一部は未実行)のまとめなので、今後これを参考により実践的なことが行えればなと思い、一旦まとめました。
#整える必要がある環境
- 公開するためのサーバー(本番環境)
- 開発を行うための、ローカル開発環境(テスト環境)
- レスポンスを受けて起動させるプログラミング言語(PHPなど)
- フレームワーク(PHPであれば、Laravelなど)
- データベース(MySQLなど)
###本番環境
Webサービスを公開するためには、24時間インターネットに接続されたコンピューター(=Webサーバー)が必要です。簡単に24時間接続のWebサーバーを手に入れようとすれば、外部のレンタルサーバーなどがあり、開発したWebサービスをそこへ置くことで、全世界へ公開可能となります。
###テスト環境
Webサービスを開発、テストするための本番以外の環境のことです。例えば、自身のPCにApacheなどのサーバーソフトをインストールすることで、ブラウザでデバッグなどを行うことができます。
###プログラミング言語とフレームワーク
htmlはブラウザで表示されるページの構成や要素を記述する一方で、PHPやRubyなどの言語はWebサーバー上で実行されるスクリプト言語で、その結果をブラウザへ返します。
例えば、htmlで送信フォームなどを記述し、PHPなどでデータベースの操作を行います。
また、プログラムを効率的に上手に記述するために、様々なフレームワークが存在します。中でもLaravelは、PHPのフレームワークとして近頃最も人気のあるフレームワークとして知られています。PHPのフレームワークは他にも、CakePHP、FuelPHPなどがあります。RubyではRuby on railsが有名です。
###データベース
その名の通り、データを保管するところ。データベースの基本的な操作はCRUD(Create, Read, Update, Delete)と言われます。
#環境構築と開発、公開の流れ
- ローカルにApache、PHP、MySQLをインストール(XAMMPやMAMPなどを使えば一括でできる)
- 必要に応じてそれぞれの設定ファイルを編集
- 本番環境の構築
- 開発(実際にはGitなどでバージョン管理)
- 本番環境へデプロイ(移行)