こんにちは!インストラクターの井上です。
PHPとJavaScript、多少知識がある人からすれば「全然違う」と即答できますが、プログラミング初心者からすれば何が違うのかさっぱりですよね。
そこで今回はWEBでよく使われるPHPやHTML/CSS/JavaScriptという言語の何がどう違うのかを解説していきます。
プログラミングの学習を行う前に、これらの違いを理解するととても効率が上がるので是非抑えておいてくださいね。
また、次の記事ではそもそもPHPとはどんなプログラミング言語なのか、その特徴をできることや需要、学習方法も交えて紹介しているので良ければ参考にしてください。
→ PHPとは何かわかりやすく解説!できることや需要・将来性も紹介
1分で質問に答えるだけであなたに最適なプログラミング言語を判定する「プログラミング言語診断アプリ」もありますので、記事を読むよりさくっと最適な言語を知りたい方は下記のボタンより、診断を受けてみてください。
あなたに最適なプログラミング言語を診断するこの記事の目次
WEBの仕組みとWEBサービス

WEBの仕組み
WEBサイトやWEBアプリと呼ばれるものには大きく2つの登場人物がいます。
クライアントと呼ばれるブラウザと、サーバと呼ばれるコンピュータです。
このページをも、あなたのブラウザがサーバへアクセスすることで、該当のテキストや画像がダウンロードされて各WEBページを見られるようにしてくれています。
WEBサイトとWEBアプリの違い
情報発信だけを行うWEBページで構成されているものを「WEBサイト」と呼びます。
これは「ただクライアントにダウンロードして見せられれば良い物」です。
しかし、普段使っているFacebookやTwitterといったSNSなどは、「投稿」したり「検索」したりと「双方向にデータのやり取りが有る」ことで成り立っています。
このように、こちらのリクエストに対して、ケースバイケースで対応してくれるものを「WEBアプリ」や「WEBサービス」と呼びます。
WEBサイトはHTML/CSS/JavaScriptという言語のみで作成可能ですが、WEBアプリに関しては、バックエンドと呼ばれる世界でこちらのリクエストを理解する仕組みや処理をPHPやRubyといった言語で作成する必要があります。

HTMLはWEBページの骨組み

HTMLは家で言うところの骨組みです。
ブラウザがサーバからHTMLをダウンロードして、文字などを画面に表示します。
WEBプログラミングにおいては、まずHTMLで家の柱や壁を作成して、とりあえず機能するものを作成していくイメージです。
具体的には、文字を段落ごとに表示したり、画像を表示したりといった具合です。
CSSはWEBページの装飾

ただ柱・壁・屋根があるだけの家には何も魅力がありません。
そこで来客をおもてなし出来るように、CSSという言語で配置や色を整えて装飾をしていきます。
具体的には画像を中央寄せにしたり、文字の大きさや色を変えたり、背景を設定したりといった具合です。
なお、HTMLやCSSはプログラミング言語ではなくマークアップ言語とよばれるものになります。
プログラミング言語はロジック(考え方)を記述するもので、答えが一通りしか存在しないものはマークアップ言語は「状態を表現」していきます。

JavaScriptはインタラクティブな動作を作る

家として機能していればとりあえずは問題ないですが、来客者や住む人に対してまだまだ配慮する仕組みはあった方が良いですね。
JavaScriptは家で言うところの「自動ドア」や「エレベーター」などのように、人が何かしたいと思った際の便利な仕組みを提供したり、視覚的なギミックを作成することが出来ます。
具体的には、検索しようとしたときに検索候補を出したり、フォームでリアルタイムにエラーを表示したり、画像のスライドショーを行ったりといった具合です。
PHPはデータ等の処理を作る

ここからバックエンドの処理に入ってきますので世界が変わります。
PHPの処理を実装するとただの家ではなく、来客用のおもてなしシステムが組み込まれるようなイメージです。
その人が本人かパスワード等で確認したり、その人の友達の情報などパーソナルにカスタマイズされた情報を出したり、伝言を預かったりとハイテクな場所になります。
具体的には、会員機能・データの投稿や表示・同じURLのページでも状況により表示内容を変更する等が可能です。
Twitter等で更新する度に表示が変わるのは、今見せるべき情報をサーバサイドのロジックを通してから画面にだしているからです。
CakePHPはフレームワークという土台

ここまでで概ねフロントとサーバサイドの話は出来ましたが、ついでにフレームワークについてもお話しておきましょう。
PHPで一連のデータを扱う処理を全て自分で作成するのはとても骨が折れるので、最近ではWEBフレームワークというものを使用することが一般的です。
これはもともと家に搭載できるシステムの土台が提供されているもので、WEBフレームワークを用いることでこれまで紹介した技術を、ユニットバスのようなパッケージをレゴブロックを組み立てるように組み上げられるようになるものです。
PHPではCakePHPなどが有名です。
フレームワークについてより詳しく知りたい方は次の記事も合わせてご覧ください。

PHPとJavaScriptのどちらを学べばいいか迷っているなら
ここまで読んでみて「PHPとJavaScriptの違いがわかったけど、いまいちどちらを学んだらいいのか分からない」という人は弊社侍エンジニアの無料カウンセリングを受けてみてはいかがでしょうか?
最初の言語選定はその後のエンジニアのキャリアを決める大切な機会ですが、その言語を学んで作れるものや、年収、働き方、今後の需要など業界知識を持っていないと判断できない部分がとても多いと思います。
弊社の無料体験では、
- あなたのプログラミングを学ぶ目的、理想の人生像をヒアリング
- 目的を達成できるキャリアをご提案
- キャリアを歩める最適な言語と学習手順をご考案
の順番で、あなたの目的から逆算して最適なプログラミング言語選定を行います。今後の学習計画が立てられることでこれまでより何倍も学習効率は高まります。
弊社はこのように完全個別指導で、あなたに合わせた講師とカリキュラムで学習し、オリジナルサービスを開発することによって、転職やフリーランスデビュー、社内昇進など様々な卒業生がキャリアを伸ばすことに成功しています。
まずは無料カウンセリングであなたの今後の理想像からお話しませんか?下記のカレンダーよりお気軽にお申し込みください。
まとめ
JavaScriptやPHPについて違いを説明してきましたがいかがでしたでしょうか?
それぞれの言語がどのような役割や特徴を持つのかつかめましたでしょうか。
また、自分が今学習するべきものが見えてきましたら、是非この機会に学習も行ってみてください。
関連記事