https://www.sejuku.net/blog/wp-content/themes/voice_child/images/samurai_logo.png 侍エンジニア塾が運営するプログラミング入門者向け学習情報サイト

未経験でもわかる!PHPとJavaScriptの違いとは?

井上 慎也
書いた人 井上 慎也


侍エンジニア塾ブログは、未経験からWebアプリ開発と仕事獲得をサポートする
侍エンジニア塾のオウンドメディアです。
プログラミング学習を覗き見

こんにちは!インストラクターの井上(@InoIno_iesa)です。

PHPとJavaScript、多少知識がある人からすれば「全然違う」と即答できますが、プログラミング初心者からすれば何が違うのかさっぱりですよね。

そこで今回はWEBでよく使われるPHPやHTML/CSS/JavaScriptという言語の何がどう違うのかを解説していきます。

プログラミングの学習を行う前に、これらの違いを理解するととても効率が上がるので是非抑えておいてくださいね。

【おすすめ記事】

まずはじめに

shutterstock_190201718

WEBの仕組み

WEBサイトやWEBアプリと呼ばれるものには大きく2つの登場人物がいます。

クライアントと呼ばれるブラウザと、サーバと呼ばれるコンピュータです。

このページをも、あなたのブラウザがサーバへアクセスすることで、該当のテキストや画像がダウンロードされて各WEBページを見られるようにしてくれています。

WEBサイトとWEBアプリの違い

情報発信だけを行うWEBページで構成されているものを「WEBサイト」と呼びます。

これは「ただクライアントにダウンロードして見せられれば良い物」です。

しかし、普段使っているFacebookやTwitterといったSNSなどは、「投稿」したり「検索」したりと「双方向にデータのやり取りが有る」ことで成り立っています。

このように、こちらのリクエストに対して、ケースバイケースで対応してくれるものを「WEBアプリ」や「WEBサービス」と呼びます。

WEBサイトはHTML/CSS/JavaScriptという言語のみで作成可能ですが、WEBアプリに関しては、バックエンドと呼ばれる世界でこちらのリクエストを理解する仕組みや処理をPHPやRubyといった言語で作成する必要があります。

HTMLはWEBページの骨組み

shutterstock_285937094

HTMLは家で言うところの骨組みです。

ブラウザがサーバからHTMLをダウンロードして、文字などを画面に表示します。

WEBプログラミングにおいては、まずHTMLで家の柱や壁を作成して、とりあえず機能するものを作成していくイメージです。

具体的には、文字を段落ごとに表示したり、画像を表示したりといった具合です。

CSSはWEBページの装飾

shutterstock_142037845

ただ柱・壁・屋根があるだけの家には何も魅力がありません。

そこで来客をおもてなし出来るように、CSSという言語で配置や色を整えて装飾をしていきます。

具体的には画像を中央寄せにしたり、文字の大きさや色を変えたり、背景を設定したりといった具合です。

なお、HTMLやCSSはプログラミング言語ではなくマークアップ言語とよばれるものになります。

プログラミング言語はロジック(考え方)を記述するもので、答えが一通りしか存在しないものはマークアップ言語は「状態を表現」していきます。

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

shutterstock_131561690

家として機能していればとりあえずは問題ないですが、来客者や住む人に対してまだまだ配慮する仕組みはあった方が良いですね。

JavaScriptは家で言うところの「自動ドア」や「エレベーター」などのように、人が何かしたいと思った際の便利な仕組みを提供したり、視覚的なギミックを作成することが出来ます。

具体的には、検索しようとしたときに検索候補を出したり、フォームでリアルタイムにエラーを表示したり、画像のスライドショーを行ったりといった具合です。

PHPはデータ等の処理を作る

shutterstock_397053460

ここからバックエンドの処理に入ってきますので世界が変わります。

PHPの処理を実装するとただの家ではなく、来客用のおもてなしシステムが組み込まれるようなイメージです。

その人が本人かパスワード等で確認したり、その人の友達の情報などパーソナルにカスタマイズされた情報を出したり、伝言を預かったりとハイテクな場所になります。

具体的には、会員機能・データの投稿や表示・同じURLのページでも状況により表示内容を変更する等が可能です。

Twitter等で更新する度に表示が変わるのは、今見せるべき情報をサーバサイドのロジックを通してから画面にだしているからです。

CakePHPはフレームワークという土台

shutterstock_258562583

ここまでで概ねフロントとサーバサイドの話は出来ましたが、ついでにフレームワークについてもお話しておきましょう。

PHPで一連のデータを扱う処理を全て自分で作成するのはとても骨が折れるので、最近ではWEBフレームワークというものを使用することが一般的です。

これはもともと家に搭載できるシステムの土台が提供されているもので、WEBフレームワークを用いることでこれまで紹介した技術を、ユニットバスのようなパッケージをレゴブロックを組み立てるように組み上げられるようになるものです。

PHPではCakePHPなどが有名です。

フレームワークについてより詳しく知りたい方は次の記事も合わせてご覧ください。

まとめ

JavaScriptやPHPについて違いを説明してきましたがいかがでしたでしょうか?

それぞれの言語がどのような役割や特徴を持つのかつかめましたでしょうか。

また、自分が今学習するべきものが見えてきましたら、是非この機会に学習も行ってみてください。

関連記事


33歳、未経験だった僕がフリーエンジニアになれた理由
現在フリーでWEBエンジニアをやられている濱口直行さん。33歳で、プログラミングを学び始め、約半年という短い期間で独立までされた学習ログを余すことなくインタビューさせていただきました。

プログラミングを学習中の方はもちろん、独立をお考えの方まで幅広く活用できる記事になっています。この機会に是非活用していただければと思います。


最短でプログラミングを習得したい方へ

元々ITリテラシーのある方やプログラムの学び方がわかっている方は独学で習得することも可能でしょう。

ただし、実際の学習期間中はつまづいている時間がほとんどです。

「もう挫折したくない」
「本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい。」
「自分だけのカリキュラムで効率的に勉強したい」

そんな方はお気軽に侍エンジニア塾までご相談ください。

弊社では、

  • プログラミング基礎学習
  • オリジナルアプリ開発
  • 仕事獲得

までをひと通り学習できます。

まずは無料体験レッスンで、弊社のコンサルタントと一緒にあなた専用の学習方法やカリキュラムを考えてみませんか?

挫折しない学び方や、通常1000時間以上かかる学習時間を1/3にする方法などより具体的なアドバイスもさせていただいています。

詳しくは下の画像をクリックして弊社サービス内容をご確認ください。

cta1

非常識な結果を出した卒業生

活躍する現役エンジニア

人気記事セレクション

LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

井上 慎也

井上 慎也

侍エンジニア塾のインストラクター。フリーでWEB制作の受託や自身の事業の傍ら、侍ではWEBプログラミング方法の指導やプログラミング学習コミュニティの運用を行っている。
好きなショートカットキーは、command + w 。愛機はMac Book Pro。ブラウザのタブを大量に開きがち。