|
ichatch

Node.jsが今アツい!?~開発初心者向け~ その1

今回のブログのテーマは、「Node.js」についてです!
エンジニアの皆さん、またはプログラミングを勉強したいという方向けのブログになっています。

①そもそも、Node.jsって何!?

Node.jsはサーバーサイドで使えるJava Script(以下JS)になります。JSはこれまで、クライアントサイドで使われている言語です。一方、Node.jsはサーバーサイドでJSと同じ文法でコードすることができるので、サーバーサイドとクライアントサイドで同じ言語を扱えるということになります。エンジニアにとってはJava、PHPなどの言語を勉強せずとも、サーバーサイドのコードもいじれることはかなりアツい出来事だったのではないでしょうか??これまで、クライアントサイドのHTML、CSS、JSしか使えないという状況でも、Node.jsを勉強すれば、WordPressなどのCMS(Contents Management System)自体を構築できるのです。こちらの説明が専門的過ぎた方は、②プログラミング言語の住み分けを読んでみてください。

②プログラミング言語の住み分け。サーバーサイドとクライアントサイドの違いとは?(超初心者向け)

どんな風にWEBサイトは見れているのか?を説明するとわかりやすいかもしれません。
WEBサイトを見るとき、ユーザーの多くはブラウザ(IEやグーグルCrome)を使って検索なり、ページを見ますよね。サイトの表示をさせるために、ブラウザにサイトのアドレス「http://~」を入力し、そのあとブラウザが該当するアドレスとIPの紐づけをDNS(Domain Name System)サーバーから受け取り、該当のWEBサーバーにアクセスします。その情報を受け取ったWEBサーバーはサイトを表示するためのデータ(HTML、CSS、JSなど)をブラウザに返します。このデータをブラウザが処理して、WEBサイトを表示しているのです。

このフロントエンドの見えている部分の制御の言語をクライアントサイドといい、ブラウザ側で処理がされます。一方、サーバーサイドはアプリケーションを動かす中身の部分で、サーバー上で処理されます。「表示させる言語」と「動かす言語」には役割が違うので、言語の住み分けがされます。

クライアントサイド…HTML、CSS、JSなど
サーバーサイド…Node.js、Java、PHP、Ruby、C、C⧺、Perlなど

③Node.jsの特徴とPHPとの違い。

Node.jsはサーバーサイドのJSということで、今までJSを使ってきた方には同じルールでサーバーサイドでのプログラミングできるので、吉報だったのではないでしょうか?
これまで、サーバーサイドの言語として、手を出しやすいのはPHPでした。なぜならば、PHPはHTML上に書き込んでいくので、サーバーサイドで陥りがちな環境設定での躓きが軽減されるからです。

では、Node.jsとPHPはどのように違うのでしょうか?
Node.jsとPHPは基本的な違いがあります。Node.jsはサーバーサイドでJavaScriptを実行できるようにしてくれるものです。これは、JSファイルをサーバー上の特定のディレクトリに配置すると自動的に実行できるようにするという意味ではありません。一方、PHPはApacheなどのHTTPサーバ上でHTMLを表示したり、データベースを操作したりするWebアプリを作成することが役割となります。Node.jsでのJavaScriptでは、HTTPサーバやファイルサーバなどを作成したりするなど、サーバのより根幹的なアプリを作成することも役割となるのです。

まとめ

その2では、Node.jsのメリット・デメリットについてご紹介いたします。

シェアする