1. ながおかのプログラミングチャンネル
  2. どのプログラミング言語でプロ..
2020-03-07 09:51

どのプログラミング言語でプログラミング学習を始めたらいいの?その3

スクリプト言語の中では何がいいの?について話しました #好きな○○について語る #プログラミング #転職
00:05
はい、こんにちは。ながおかのプログラミング学習チャンネルでは、プログラミングの勉強法やそのプログラミングに関連するいろいろなことについて話していきたいと思います。
今回は、どの言語でプログラミングを始めるのがいいのかということについて話していきたいと思います。
第3回の今回は、前回結局スクリプト言語という種類の言語がいいということになりまして、
そのスクリプト言語といってもいろいろある中で何がいいのかという話をしていきたいと思います。
結論から言うと、これも何がしたいかによるのですが、
特に別にあまり今の時点では何これがしたいというのがないというのであれば、 私はRubyという言語をお勧めします。
理由についてはまた後ほど話していきます。
スクリプト言語、いくつかある中でいろいろメジャーな言語がある中、 今日は3つご紹介したいと思います。
1つ目がJavaScript、2つ目がPython、3つ目がRubyです。
まず1つ目のJavaScriptという言語なんですが、 これはおそらく世界で圧倒的に一番使われている言語だと思います。
というのはブラウザ、Webブラウザですね。 Google ChromeだったりFirefoxだったりEdgeだったり、
そういったブラウザで動く唯一の言語が、 プログラミング言語がJavaScriptです。
HTMLとかCSSはプログラミング言語というよりは マークアップ言語、マークアップランゲージと呼ばれていたりします。
またこのことについては別の放送でいろいろお話ししていきたいと思います。
このJavaScript、ブラウザで動く言語がこれしかないって、 それは独占禁止法違反なんじゃないですかと思うと思うんですが、
実際その通りなんですが、 歴史的な原因もあってそうなってしまった以上しょうがないと。
より正確に言うとちょっとWebアセンブリという技術なども開発されつつあり、
任意の何でもブラウザ上で動かせるようになる時代もそのうち来ると思いますが、 2020年現在やはりJavaScriptしかとにかく動かないと、まだ。
なのでJavaScriptを特にフロントエンド、 Webブラウザで表示されるようなところでリッチな動くものを作るにはJavaScriptしかないと。
JavaScriptなのでものすごく使われてますし、 しかもNode.jsというのがありまして、
これは何というかJS、JavaScriptの親戚みたいなほとんど一緒なんですけど、
03:03
サーバーサイドというブラウザで表示される以外のところでも使えるようにしたのがありまして、
Node.jsというのもあり、もうJavaScriptで何でもできるという世界になっています。
なのでJavaScript、特にWebのフロントであったりいろいろ、 Webでとにかく使いが、とにかく汎用性が高いにやりたいというのはJSおすすめです。
ReactだったりViewだったり、そういったJSのフレームワークもたくさんありますし、
本当にとにかく強いと使われているのがJavaScriptです。
2つ目、Python。これもとにかく大人気。本屋のプログラミングのコーナー行けば、 Python、Python、Python、ディープラーディングPythonという感じです。
全部Pythonじゃねえかと。
これなんでPythonがこんなに人気なのかというと、やっぱりこの機械学習に採用、採用されたっておかしいな。
機械学習で使われているのが、もう今となってはほぼPython一挙というふうになってしまったからなんですね。
しまったって別になっていいと思うんですが。
これはどういうことかというと、機械学習を使うときにLibraryという便利ツール集みたいなものを使うんですけど、
それがほとんどPythonのものがすごくよく使われているからなんですね。
これはなんでPythonなのかと、他の言語ではないんですかというのがあると思うんですが、あります。
他の言語でも大体同じようなことをするのはあるんですが、やはりとにかく世の中で使われているのがPythonばっかりなので、
Pythonのフォームも増えるし、使い方のネットの記事も増えるし、またPythonをやる人が増えという生の循環というか、
もうフィードバックループが回りまくって、勝者がより富むみたいな感じになって、Pythonが非常に多く使われています。
こういうデータ分析系でも、昔だったり今でももちろん使われていると思いますが、Rという言語だったり、
より計算の速度を求める人であったり、好きな人はJuliaという言語があったりもしますが、
基本的にはPythonがとにかく強力です。
じゃあどういう人がPythonをオススメなのかというと、とにかくやっぱりディープラーニングとか、
こういうデータ分析系の仕事がしたいとか興味があるという人だったり、
あとは、そうですね、とはいえちょっとウェブにも興味あるかなぐらいの人はPythonがぴったりですね。
やっぱりウェブプログラミングもできなくはないですが、どっちかというとやっぱりデータ分析に強いのがPythonというふうになります。
06:07
最後に先ほど特にやりたいことが今の時点ではないという人にオススメといったのがRubyという言語です。
Rubyという言語はやっぱり何といっても作者が日本人の方、松本幸寛さんというご存名の方です。
この松本さんが作者ということもあり、もちろん公式な開発は英語ベースでグローバルに行われていますが、
やはり日本の開発コミュニティも非常に力強いというのがあり、日本語のドキュメントも非常に充実しているというのがあって、
まずその時点で入りやすいかなというのもあります。
さらにこれは個人的な好みなんですが、やっぱり本当に書いてて楽しい。
かゆいところに手が届くというのがすごいあるんですね。
松本幸寛さん、作者の松本さんが通称Matzと呼ばれていたりしますが、
松本さんが本当に考えていることを開発するときに一番大事にしているのが、
プログラマーが楽しくプログラミングできるようにしているということをよくおっしゃっています。
よくあるのが本当にプログラマーというよりはコンピューターのほうを向いている言語というのは非常に多いんですね。
というのはやっぱり本当にここ数十年、20年前とかはコンピューターもそんなにパワフルじゃなかったし、
やっぱりとにかく計算、コンピューターに対して優しい言語というのがすごく求められていた。
なのでそういう需要があったんですが、
今となってはメモリも大きくたくさん使えるし、CPUもすごく速くなったというところで、
松本さんの先見の目がより発揮されるような時代になってきたんじゃないかなと。
これなんで書いて楽しいのかというところは、なかなか感覚的な面でもあるので、
具体例を挙げて説明するのはなかなか難しいんですが、
説明するとすれば、プログラミング言語を設計する、
作者が当然いるので、いろんな意思決定をして言語をデザインしていくというんですが、
デザインする中で、あらゆる無数の決定ポイントを決定するときに、
何を毎回考えて決定するかというのでどんどん変わってくるわけですね。
例えば、100回決定することがあったら、1個1個は小さくても100回繰り返すことで、
ものすごい差になってしまうというような話があるんじゃないかと。
その中で、100回コンピューターに優しい、少しでも処理が軽くなるような選択をしたものと、
09:06
100回人間にプログラマーが少しでも楽しくプログラミングできるようにと考えられた言語で、
どっちが楽しいでしょうかと考えたときに、私はその後者じゃないかと思っています。
実際に書いていても楽しいです、個人の感想ですが。
なので、何でもあんまり特にやりたいことがないというのであれば、Rubyをぜひお勧めします。
最後に、これはちょっともう長くなってしまったので、次の回におまけ的に話しますが、
どうやってRuby始めるのがいいのかみたいな話をちょっとしていきたいと思います。
09:51

コメント

スクロール