これからJavascriptやJavaを学ぼうと思っているけど、どのようなプログラミング言語で、何ができるのか知りたいという方に、初心者の人にはわかりやすいように簡単に説明していきます。
また、JavaScriptとJavaは幅広いジャンルの開発ができる汎用性の高い言語で、将来性や需要も高くなっています。今回の情報を読み学習をすることで、個人でWebサイトやゲームなどを作れるようになり就職にも有利なため、ぜひ参考にご覧ください。
Contents
JavaScriptとJavaの違い
JavaScriptは1990年代にLive Scriptという名前で開発されましたが、当時、人気が高かったJavaの名前を取ってJavaScriptという名前に変更されました。そのため、JavaScriptとJavaは名前が似ているために派生形や+αと思われる方も多く、似ている部分もありますが根本的に全く違うプログラミング言語になります。
JavaScriptの特徴
JavaScriptはほとんどのWebページに導入されていて、JavaScriptはHTMLやCSSをコントロールすることができるためHTMLやCSSとセットで使用されることが多い言語です。
HTMLとは
HTML(Hyper Text Markup Language)とは下記の3つの意味を持っています。
- Hyper Text=画像、動画、音声などを含むテキストデータの共有と閲覧できるシステム
文字、文章を超えたテキストデータ
- Markup=文字や文章にコンピューターが理解できる目印となるタグをつけること
- Language=言語
マークアップ言語
HTMLはプログラミング言語とは違い、文字や文章にコンピューターが理解できるタグをつけるマークアップ言語(Markup)です。
Webサイトには見出しがありますが、この見出しにタグをつけなければコンピューターはどれが見出しなのかを理解できません。
Webサイト上で見出しにしたい文章を<h1>〜</h1>で囲むことで初めてコンピューターが見出しだと認識し、普通の文字よりも大きいサイズの文字になります。
また、見出しについてはh1〜h6まであり、他にも<a>〜</a>で囲むことで文字にリンクをつけたり、様々なタグをつけることが可能です。
JavaScriptのメリット
JavaScriptは活用できる幅が広いため、様々な企業のWebサイトでも使用されています。
将来性が高く、JavaScriptの代わりになるようなプログラミング言語も出てきていないので、需要が高い状態が続くと予想されます。また、将来性が高く、需要が高いにも関わらず学習難易度が低いので初心者でも学習できます。活用できるジャンルも幅広く、人気が高いことから学習教材が豊富に出版されています。
JavaScriptのデメリット
他のプログラミング言語と比較すると、JavaScriptは処理速度が遅いです。JavaScriptはコンパイルが不要なため、プログラムの実行時に変換しながら動作を行います。そのため、コンパイル型のプログラミング言語と比較すると処理速度は遅くなります。
JavaScriptで作れるもの
javaScriptを使うことで、HTMLやCSSで作ったWebサイトに様々な動きを表現できます。Webサイトの動きとは、アニメーションなどの動きやボタンをクリックすることで色が変わるなど、動的に使用者にわかりやすく記事を読みやすくなることです。
Webサイトに動きをつけられるだけでなく、JavaScriptを学習することで、Webアプリやゲームの開発を行うことができます。
Webアプリ
アプリとはGoogle StoreやApp Storeなどでダウンロードして、ブラウザを使わずにアプリケーションを開くことで使用できます。WebアプリはGoogle StoreやApp Storeなどでダウンロードせずに、ブラウザ画面で使用できる複雑な動作が可能なWebページのことであり、代表的なものではYouTubeやGoogleなどです。
YouTubeではアプリをダウンロードして使用することで動画を視聴できますが、アプリを持っていなくてもブラウザでYouTube検索により、アプリと同じようにブラウザ画面で動画を視聴できます。
最近ではWebサイトをアプリのように使用できるPWA(Progressive Web Apps)という技術も進んでいます。Storeでダウンロードしなくても、アプリと同じくホーム画面にアイコンを追加して使用できたり、通知の設定やオフラインで使用できるなどできる機能も増えてきています。
ゲーム開発
JavaScriptで開発されたゲームはブラウザで動作する為、ブラウザゲームの1種です。
ブラウザで動かすため、3Dモデルなどを使ったり重たいような動作までは難しいですが、横スクロールアクション(マリオ)やRPG(ドラクエ)などの開発に向いています。
Javaの特徴
JavaはJavaScriptよりも古く、昔から人気の高いプログラミング言語です。Googleが開発に使用しているGoogle3大言語(C++、Java、Python)というものがあり、Javaはその1つでもあります。
Javaの強みはどんな開発環境でも使用することのできるプログラミング言語であるという点です。
開発環境を選ばず使用可能
開発環境を選ばないので、OSに依存することなくWindowsでもMac OSでも同じように開発が行えます。Javaは大規模な開発が可能で安定性が高いので、絶対にエラーが起きてはいけないようなシステム開発にも使用されています。
ライブラリがとても豊富です。ライブラリとは良く使用されるプログラムを再利用できるように1つにまとめられたもので、様々なジャンルのライブラリを無償で使用可能です。
Javaはオブジェクト指向を取り入れているので、作業分担がしやすいので効率良く、大人数で大規模のシステム開発ができます。
学習難易度が高い
オブジェクト指向に対する理解が必要になるので、学習難易度がとても高いです。実践環境で使用するには専門性がとても高くオブジェクト指向を理解した上で、ある程度の経験が必要になります。
大人数で大規模の開発が前提なので、小規模や個人のシステム開発には向いていません。無理にJavaを使用することもできますが、Javaの特徴を最大限生かすことができません。個人の開発でしたらRubyをオススメします。
Javaで作れるもの
JavaはAndroidのスマホアプリやWebサービスやWebサイトやPC向けのデスクトップアプリなど様々な種類のものを開発できます。
Androidのスマホアプリ
AndroidはGoogleが開発していて、AndroidのほとんどのアプリはJavaを使用して開発されています。Googleの社内標準にJavaがあり、開発できるジャンルが幅広いからです。
Webサービスとは
代表的なWebサービスはGoogleやTwitterなどがあります。
Twitterは以前にRubyというプログラミング言語を使用していましたが、動作速度の問題でJavaに移行しました。Javaはインターネットと相性が良く、様々なWebサイトも開発可能です。
デスクトップアプリ
デスクトップアプリとはパソコンにダウンロードしてから使用するアプリで、パソコン上でプログラムを実行し、Webアプリはパソコン上ではなく、サーバー上でプログラムを実行します。
人気の高いMINE CRAFTもデスクトップアプリであり、Javaで開発されています。
まとめ
本記事では、JavaScriptとJavaのそれぞれのメリットやデメリットや特徴をわかりやすく書きました。JavaScriptの方が学習難易度が低く、学習するための教材も豊富なので、初心者の人でも学習が進めやすいです。Javaは学習難易度がとても高いですが、できることが多くプログラミング言語だけではなく、オブジェクト指向を学ぶこともできるため、幅広いジャンルのものを開発したいという人にオススメします。
コメント