見出し画像

2021年にプログラム言語を勉強するとしたら、何がいいのか考えてみた - 第3話:言語別の勉強のしやすさ、 勉強のやり方

第3回では、各言語の勉強のしやすさ、勉強のやり方をまとめてみます。

今回取り上げるのは、

Javascript ⇒ Python ⇒ C# ⇒ Swift ⇒ Kotlinです。

これも私個人の感想ですが、この順番が習得のしやすさの順番です。

Javascript

1番に選んだのがこのJavascriptです。

1番の理由はコンパイルしなくてよい

多少間違いがあっても動く

Webサイト上で書いて動かせる

という3つの理由から1位に選びました。
JSFiddleというWebサービスを使うと、このサイト上でコードを書いて、実行結果まで見ることができます。
他の言語は

1.開発ツールを自分のコンピューターにインストール

2.プログラムを書いて、コンパイル

3.コンパイルエラーを直す

という3つの手間があるのですが、この3つのステップをやらずに、

「プログラムを書く」⇒ 実行

がJSFiddleの上でできます。JSFiddleの他にもCodePenのような似たようなサービスがあります。

まずは、JSFiddleで簡単なWebページとアニメーションなどを作って見るところから始め、徐々にJQueryや、Vue.js、React.jsなど本格的にWebアプリ、フロントエンドをつくるフレームワークを学んでいくといいのではないかと思います。

Python

PythonにはJupyter Notebookという開発ツールがあります。これはインストールが必要ですが、まるでノートにメモを書いていくような手軽さでPythonプログラムを書いて動かすことができます。

Jupyter Notebookの素晴らしいところは、Notebookにプログラム以外もノートに書くように書き足せることです。

勉強したことのメモや、画像をプログラムの前後に貼り付けたりして学習を進めていくことができます。メモや画像、プログラムを切り貼りしてノートを作って行く感じはなんとも言えない楽しさがあり、満足感が得られます。

Pythonもコンパイルという工程を経ずに動かせるため、多少の間違いがあってもプログラムを動かしてみることができます。これもJavascript同様、勉強のし易いポイントです。

C#

C#はコンパイルが必要で、且つ開発ツールもインストールしなければいけないのですが、Unityとセットで簡単なゲームを作ることから始めると勉強がしやすいと私は思っており、3位に上げました。

Unityの勉強からC#の勉強に入る、という入り方です。

Unityは、グラフィカルなユーザーインターフェースで2D、3Dのゲームの見た目をデザインし、アクションをC#で記述します。つまり、最初はほんの少しのコードで簡単なゲームのシーンを再生させることができます。

この少しのコードで結果がでる

というところが挫折を少なくするポイントであり、C#が勉強しやすいと思う理由です。

Swift

Swiftは4位となってしまいました。
開発ツールをインストールする必要があることと、プログラムを書く前にアプリのユーザーインターフェースを、Storyboardというツールでデザインしたり、Storyboardとプログラムコードを結びつける方法を学ばないといけません。
また、Swiftには、クラッシュしない堅牢なプログラムを書くためのオプショナルという概念があります。これは本当に素晴らしい概念なのですが、この概念を習得してプログラムを書けるようになるのに少し修練が必要になります。
SwiftにはSwift Playgroundsというアプリを造らずに、Swiftを勉強する環境があるので、言語自体を勉強するのはこのSwift Playgroundsから始めると始めやすいです。

Kotlin

KotlinもSwiftとほぼ同じ難易度です。理由も同じで、開発ツールに慣れる必要があることと、ユーザーインターフェースを記述するXMLベースの記法に慣れて、まずUIを作ってから、Kotlinでプログラムを書くという流れのため、そこまで行くのに他の言語に比べて労力が必要となります。またオプショナルの概念もSwift同様にKotlinでも習得が必要になります。
KotlinにもKotlin Playgroundsというものが同様に用意されています。

最下位になってしまったSwiftとKotlinですが、私の会社のメンバーにはSwiftからプログラミングを始めて、今では、SwiftとJavascriptですらすらプログラムを書いているメンバーがいます。敷居は高いですが、乗り越えれば最も現代的で洗練されたプログラミング言語を習得したことになり、他の言語やフレームワークはそれに比べればどれも簡単に感じられるようになります。

以上、学習のしやすさという観点から各言語について説明をしてきました。

皆さんの最初のプログラミング言語を選ぶ際の参考にしていただければと思います!

第4話はこちら↓↓↓



この記事が気に入ったらサポートをしてみませんか?