これからプログラミング言語を学ぶ初心者です。
これからの社会を見据えて、どの言語がいいと思いますか?
僕はRubyを学んでみようと考えてます。
いずれ趣味でアプリや人工知能やロボットなどの勉強開発してみたいです!
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/20 11:26
回答8件
0
C言語はLinuxの環境下で動かす前提みたいな所があるので、面白さが分かるまでは茨の道でしょう。
コマンドライン(黒い画面)にHello Worldや四則演算等の文字列が表示されて喜べるのなら話は別ですが、
目的がアプリとの事なので、ただただ辛い2〜3年になるでしょう。
(但し速度は折り紙付きで、電脳戦に出るような強豪の将棋AIは大多数がC言語だったりします)
Mr_Robotoさんの仰る通り、伸びる人は必要に応じて言語を使い分けし始めるので、
まずは気になる言語を集中的に勉強して、作りたいモノをすんなり作れるまでのスキルを身につける事をオススメします。
参考書ばかり読んでる絵描きが一切上達しないのに対して、下手でも毎日描いてる素人の方が圧倒的に上手くなるのと同じ理屈です。
プログラミングの世界もやりたいことをソースコードに表現して動作させるという能力が必要になります。
私がオススメする言語を指定出来るなら、RubyやPythonを選びます。
最低でもオブジェクト指向言語で慣れておいた方が何かと便利です。
簡単に早見表を作りました。
- アプリ: 作りたい対象によって得意分野が違う
Webサイト: どの言語も得意。強いて言えばRubyが良いか
Webアプリ: ブラウザー上で動的に動かすにはJavaScriptが必須
スマホアプリ: AndroidならJava一択、iOSならSwift一択
Windowsアプリ: C#一択
RPGツクール: VA系ならRuby、MVはJavaScriptが使える
- 人工知能: Pythonがライブラリも豊富で多少有利
- ロボット: そもそも何のロボットかによって、動作する言語やライブラリが強烈に縛られるので言語による選択肢はない
投稿2016/08/17 11:57
総合スコア21158
0
社会は見据えられませんが、Rubyが気になってるならまずは、
Rubyをがっつりやるがいいと思いますよ。
自分が好きだと思えるものじゃないと続きませんからね。
一つの言語がきっかりできるようになれば2個目以降は、それほど苦労しませんし。
投稿2016/08/17 10:49
総合スコア2208
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/17 10:56
2016/08/17 11:06
2016/08/17 13:04
0
今何歳ですか?
もし高校生であるならば、大学で学ぶことを考慮するとC言語を最初に学ぶことはおススメです。
その時に周りが一生懸命にCを勉強しているときにRubyなりなんなりを学ぶことがいいと思います。
Rubyは上級者向けですよ
投稿2016/08/17 10:48
総合スコア32
0
とりあえず、C言語で修業してから気になるのを選ぶといいかと。
オブジェクト指向言語や関数型言語は最初に覚えることが多いので
まずはシンプルな言語を経験したうえで次に進むのが
いいんじゃないかなあ。
投稿2016/08/17 10:43
総合スコア7458
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/17 10:49
2016/08/17 10:57
2016/08/17 13:05
0
ベストアンサー
Rubyはメインで使っていますが、
文法はシンプルだし、日本語情報は多いしで、
今のメジャーな言語の中では易しい方だと思いますよ。
ただ、本格的なオブジェクト指向で組むのは難しいですが、
それはオブジェクト指向自体が難しいのであって、
ほかのどんな言語でも難しいです。
人工知能を学ぶという面だけで言えば、
機械学習のライブラリが充実したPythonの方がオススメです。
ただ、C言語風の文法を骨格に、Perlのスクリプト要素、
Lispの関数型要素、Smalltalkのオブジェクト指向要素、
が入っているという点で、RubyとPythonは兄弟のような関係です。
どちらか一方を習得すれば、移行するのもさほど難しくないと思います。
しかし、人工知能をやりたいのであれば、どの言語を選ぶかというよりも、
数学の修得の方が本質的に重要になると思います。
(ただし、クラウドやライブラリを使うだけ、という立場もあります)
たとえば、ナイーブベイズにしろ、サポートベクターマシンにしろ、
数式が読めないと学習書も読めないです。なんでそうなるかというと、
機械学習とは何か端的に言うと、機械に統計をやらせてるからです。
機械学習でよく使われる分野は、微分・積分、統計・確率、線形代数です。
あとは離散数学とか計算機科学と言われる分野ですね。グラフ理論とか。
つまり、数学も言語なのです。もちろんプログラミング言語ではないですが、
仕様記述言語とみなすことは可能でしょう。習得すれば強力な武器になります。
投稿2016/08/30 14:49
総合スコア5592
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
人工知能やロボットを行うなら、Python を進めます。
また、Rubyと比べてPythonの方が言語仕様として
小さいので覚えやすいと思います。
投稿2016/08/17 14:38
総合スコア338
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
私はPythonをお勧めします。
〈長所〉
他の回答者様におっしゃるとおりPythonは人工知能に向いておりますし、比較的書いたあとのコードが読みやすいです。当然、プログラムを書いてるときにも自分の書いたプログラムを読むことは多くありますし、他の人に読んでもらうときも読みずらいと怒れてしまうので、これは大きな長所だと私は思います。
〈短所〉
比較的実行速度が遅いですね。まぁ、マシンのスペックがあればあまり問題ないような気がしますが。あと、僕の体験談ではPythonを始めてからC言語を始めると、様々なところで嫌になります(最後に付ける「;」とか、型の指定とか、ポインタとか)。なので、あえて苦しい思いをしながらC言語をやってみるのも一つの手かなとも思います。
投稿2016/08/20 15:19
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ただ何となくプログラムやってみたいなというのであれば、Rubyは非常に良い選択だと思います。
プログラムで最初に書く、Hello Worldでつまずく恐れがまずないです。
言語は、具体的にやりたいことが決まったらなんとなく決まります。
逆をいうと、やりたいこと毎に新しい言語を覚えるのは珍しいことではありません。
最初の言語はやりたいことと直結していなくても問題ありません。
二つ目の言語を覚えるのは、書き方の違いを覚えるだけなので、思ったほど大変ではありません。
特にRubyは機能が豊富なのでほかの言語にない機能はそれほど多くありません。
つまり、ほかの言語を覚えるときに新しく覚えなくてはいけないことが少ないのです。
投稿2016/08/17 19:27
総合スコア2883
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。