人気プログラミング言語4選!何を学べば良いか丁寧に解説します!
Sal
inhouse_se javascript.python,c#,c,etc...世の中には様々なプログラミング言語が存在しますが、どれを学べば良いかわからない人も多いはず。

人気プログラミング言語4選!何を学べば良いか丁寧に解説します!

2020/2/22 記術 前回の内容

自分のITライフを振り返りつつ、プログラミング言語の学ぶ順番について考える

目次

  1. 大前提と学ぶ意義と大まかな学ぶ流れ

  2. 最初の一歩:Javascript

  3. 飛躍の一歩:Python

  4. 最初のコンパイル言語:C#

  5. 最後の難関、最強言語:C言語

大前提と学ぶ意義と大まかな流れ

大前提

1,初心者にとってプログラミングの最初の難関はセットアップ(環境構築)である
2,初心者は大抵の場合興味から始めるが、最終的にはどう役に立たせられるかどうかが継続の鍵



そして大まかな流れ

1,JavaScriptでセットアップを避けてプログラミングを始める
2,Pythonで機械学習、スクレイピング、自然言語など、興味のある分野へと歩み始める
3,C#で型のある言語を学ぶと同時に、windowsアプリについても理解を深める
4,Cでプログラムの動作について深く知る

ではそれぞれについて学ぶ意義を深く解説していきましょう!

最初の一歩:Javascript

プログラミング学習の最初の壁はセットアップであると言われています
複雑なコマンドをいくつも実行したり、ブラウザーからファイルをダウンロードして見たり、
windowsやmacによっても動作が異なる可能性もありますし
そしてこれらのセットアップに挫けてしまい、学習にすら入れずリタイアしてしまうという人が結構います
それくらい、セットアップとは複雑なものなのです

そしてJavaScriptはブラウザ上で動く言語です
プログラマーが書いたJavascriptコードをChormeが翻訳して実行してくれます

ですので、

JavaScriptを学ぶ際のセットアップは、Chomeがパソコンに入れるだけで終了します


ここの段階で、変数、条件文、繰り返し分、関数、そして余裕がある人はクラスまで勉強していいでしょう
これができたらグラフなどを作ってみるのもいいかもしれませんね
JavaScriptの図を作る力は大したものです


そもそもJavascriptとはどんな言語か?

Javascriptはなんのために作られているのか?
答えはこのサイトを見てからです
http://www.dubfire.com/#!/home/
...めちゃくちゃかっこいいですよね!?
このようなぐるぐる動くサイトを作る際に、JavaScriptは必要とされるのです

飛躍の一歩:Python

さきほどのJavascriptは確かにいい言語で、すぐにプログラミングの感覚を掴める言語ですが、汎用性が高いわけではないと思います
ブラウザー上で動くので、自分のファイルの編集には使いずらい

より高い実用性

を求めるのであれば、Pythonがお勧めになってきます(異論は認める、twitterで待ってる)
Pythonはシンプルな文法で学習コストが低い上に、機械学習、自然言語処理、スクレイピング、excelの操作など、様々なことがプログラムとして実現できます
お勧め参考書はこれ

まじでおすすめです
なぜなら難易度が低い上に(簡単な文書)やっていることはかなり高度です
そしてこのpythonという言語はかなり奥が深く、
様々な専門分野へ深く入り込むことができます
Python自体を極めるのも面白いかもしれませんね


...ただこの言語にも弱点があります

それは環境構築(Pythonのインストール)が恐ろしく面倒なこと

特に、windowsユーザーはかなり苦しむことでしょう
そういう意味ではJavascriptとは対極ですね

しかし、この環境を構築するのに苦労した経験は、のちに必ず役に立ってきます
分からない時にググる経験、エラーログを読む経験、パソコンと長時間格闘する経験...

ポイントは諦めないこと

最初のコンパイル言語:C#

Pythonに飽きてきたなーと思ったらC#をお勧めします!
C#はマイクロソフトが開発したプログラミング言語で、windowsのアプリケーションを作成することができます!
例えば、メモ帳や電卓とか!
文字としてのCUIよりも、ちゃんとした画面で自分でボタンの配置とかを決めれるのも面白いですね!

自己満足で終わっていたプログラミングが、誰かに利用してもらうためのプログラミングに変わっていくきっかけ...
そんな機会になりえる言語と言えるでしょう!
できたアプリは例えばGitHubやその他のツールで配るもいいでしょう!


ちなみにC#アプリケーションの開発が、僕の初めてのアルバイトでした
誰かに利用してもらうようなPCアプリを作るにはC#が手っ取り早いでしょう




ところで、現在の大手のSIerがお勧めしている言語といえばなんでしょう?
ご存知Javaですね?
そしてC#はJavaと書き方がとてもよく似ています

C#を学ぶことは、流行のJavaを学ぶハードルを下げるのと同義でもあるのです
(ちなみにJavaはつまらない言語だと思うので、お勧めしません)

最後の難関、最強言語:C言語

さて、さらにプログラミングやプログラムそのものの仕組みについて触れたい方
OSがどのように動いているか知りたい方
ここまでくればC言語は避けられないと思います

C言語でできるのは組込み系システム,linuxOSのカーネルのソース
スピードが求められるプログラムなどなど...

ぶっちゃけパソコンをフルに活用したいだけなら、C言語はいらないと思います
物好きの世界です

しかし、社会でも一定数組込みのシステム言語として必要としているのも事実でしょう
PCへのより深い理解は確実です

目次

  1. まずはじめに、自分のプログラミング言語の学んできた順番

  2. 川田さとし、C言語を始める

  3. 川田さとし、Javascriptを始めるの巻

  4. 川田さrとし、Pythonに目覚める

  5. 最後の難関:C言語

自分のプログラミング言語の学んできた順番

そもそもなぜプログラミングを始めるのか?

これについては人それぞれで色々あると思いますが
僕の場合は単純です

ただかっこよく強くなりたかった笑


こんな悟空的思想で大学入学時よりはじめました笑
ハッカーに憧れて勉強しはじめます。
(この時はハッカーは褒め言葉とすら知りませんでした)
そしてここでいうハッカーはクラッカーの方です笑。お恥ずかしい



1,川田さとし、Cを始めるの巻

始めた言語は

C言語

今だからこそ言えますが、これは

最悪の選択肢

です


理由は以下の通り

1,何に、どのように役にたつかわかりずらい
2,ポインターという他の言語では不必要な概念を教えられる
3,配列の長さを指定しなければ配列を使えず,listのようなものが存在しない


もうとにかく堅苦しくてエラーが出まくる上にかけたとしても意味がない
(もちろんCならでわのメリットもありますが、初心者は活かせません)

こんな苦行みたいな言語を学ぶ必要はなかったと思います

実際に筆者はCの入門書レベルまで修了しましたが、その次のステップは見当たらず、プログラミングから少し離れる期間が始まります



ただポインターの概念はプログラムの仕組みを理解できるようになるので、害ばかりではなかったです



2,川田さとし、Javascriptを始めるの巻

次にプログラミングに興味を持つのは、約1年後
一年間はCのせいでおなかっぱいって感じです


深大寺へ散歩に行った帰り道。本屋によってふと理系のコーナーに立ち寄ります

そこで前から話だけは聞いていたJavaScriptの本を発見します


なぜJavascriptを学ぶのか?
Javascriptはブラウザ上で動きます

つまりgoogleChormeが入っているパソコンであればどこでもプログラミングができる!

そう思ったのです


実際これは間違ってないです

Javascirptの強みの一つはChomeが入っていればどこでも動くことでしょう

どこでも手軽にプログラミングができる!インストール不要!
こんな最高なことはないですね!
必要な時に必要なだけプログラミングができる


しかし...
結局は自己満足で終わるんですよね...Javascript...
理由は以下の通り

1,どうやくに立たせられるかがわからなかった(グラフを書けることを知らない)
2,「プロトタイプ」と呼ばれるオブジェクト指向が特殊すぎた
3,「class」キーワードを頑なに使わなかった

特に1番の「どう役に立たせられるか?」が1番の課題でした...

自分の中の自己顕示欲に気づけず、自己満足では成長に限界があります

そしてまた役半年間、プログラミングから離れる期間が始まります...

3,川田さとし、Pythonに目覚めるの巻



そして半年後、実は自分にはプログラミング歴10年という天才がいたのですが、その彼から気になる話を耳にします


天才「今年さ〜、CDの売上ランキングを当てて賞金もらえるイベントあるんだけど〜それをインターネットの自動取得で当てに行こうと思うんだよね〜

ワイ「インターネットの自動取得...だと...!?」

この瞬間に人生が変わったと思います。大げさではなく

もしもインターネットから好きなデータを好きなようにもらえるなら、全知全能になれるのでは!?

(このインターネットからデータの自動取得はスクレイピング、またはクローリングとも言います)
話を聞いたその日に本屋さんに立ち寄り、以下の本を購入
人生を変えてくれた良書です
この本からWebスクレイピングを猛勉強
初めて画像をPythonでダウンロードした感動を今でも覚えています

そこから自然言語、機械学習などなど...
自分のできることが機械によって拡張されていく快感...

4,川田さとし、C#で自己満足的思考から仕事思考へ

さて、ここからは仕事の話になるのですが、
僕が初めてプログラミングでお金をもらえたのは大学生時代のアルバイトです
言語はC#
仕事内容はコードの整理
他人のコードを読む辛さはありましたが、「プログラミングを学習してお金が入るなんて最高じゃん!」と思っていした
というか今も思っています
しかも結構時給がいい
この時から、「プログラミングは趣味ではなくて、稼げるもの」と認識し始めていますね...

皆さんもプログラミングでお金をもらえる日が来るかもしれませんね

type:raw title:人気プログラミング言語4選!何を学べば良いか丁寧に解説します! description:javascript.python,c#,c,etc...世の中には様々なプログラミング言語が存在しますが、どれを学べば良いかわからない人も多いはず。