• ベストアンサー

プログラミング言語の選び方

プログラミングを学習するうえで、プログラミングの実務経験がなくほぼ初学者レベルでもとっつきやすい言語は何ですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • i4004i
  • ベストアンサー率39% (61/154)
回答No.6

どんなソフトを作るかで習得すべき言語が異なります。 WEB制作するのに昔からあるからとC言語学んでも現場で使えないし、 ロボットや制御したいのにPHPやRubyやっても遠回り。 Windows のアプリ作りならVisual Basicとか、スマホアプリならまた異なるし、言語はたくさんあります。 仕事か趣味かでも違いますよね。 あなたの目的を書いてくれたら、皆のアドバイスが的確になります。

すると、全ての回答が全文表示されます。

その他の回答 (8)

  • luka3
  • ベストアンサー率72% (460/632)
回答No.9

個人的には自分も「自分がやりたいことに適した言語」から始めるといいと思います。 ただ質問者さんは特段目的がないようにも思えますので、であれば、『基本情報技術者の取得を目指してみる』、というのはどうでしょう。 国家資格ですので、就職転職に有利に働くこともあります。 https://www.ipa.go.jp/shiken/kubun/fe.html で、今見たら試験で選べる言語が5つまで増えてるんですね。 こちらのページにポイントがありました。 https://mid-works.com/columns/freelance/skill-up/1136511 >理解しやすさで選ぶなら「表計算」 >合格しやすさを目指すなら「アセンブラ」「表計算」 >合格して就職に活かすなら「Python」「Java」 >色々な言語のベースとしてじっくり学びたいなら「C言語」 個人的には、いかにも「コンピュータを動かしている」と感じられるアセンブラが好きですが、理解しやすいかといえばちょっと「うーん」ですかね。 試験に合格するためには、言語以上に他の知識を覚えることが必要ですが、ITの理解を深める意味でも覚えて損はないです。

すると、全ての回答が全文表示されます。
回答No.8

・オブジェクト指向スクリプト言語 Ruby: https://www.ruby-lang.org/ja/ Pythonの競合、と言われた言語だけど、実際は「もっと強力」。これを薦めるのは良質のWebプログラミング入門教材があるから、だ。 プログラミング入門 - Rubyを使って - https://wwwchem.sci.hokudai.ac.jp/~qc/ruby_tutorial/PChapter=Contents_index.html 手っ取り早く「プログラミング入門」を行って終えたい、って人には向いている。「石の上にも三年」なんざやらんでいい。真面目にやれば2週間もかからずに「プログラミングとはどういう作業なのか」把握が可能だ。パッパとこれを終えてRubyを使い続けるなり、他の言語に移ってもいいだろう(プログラミング言語処理系なんざ、今どきタダのブツの方が多いんで、気にする必要はない)。 なお、上記のWebページの書籍版も存在する。 初めてのプログラミング 第2版: https://www.oreilly.co.jp/books/9784873114699/ いずれにしても良書、だ。 ・OCaml/F# OCamlと言う言語は聞き慣れないだろうけど、フランス製のプログラミング言語だ。パリの下にセーヌが流れるジュテーム言語だ(謎 日本では愛知県周辺で人気があるらしい(笑)。 F#ってのはMicrosoft製言語でOCamlの方言、となる。Windowsでフツーに使う(.Net利用)にはC#、VB.Netに次ぐ「第三の選択肢」となる(つまり、C#、VB.Netで出来る事はF#でも出来る、って事だ)。 F# ドキュメント: https://learn.microsoft.com/ja-jp/dotnet/fsharp/ 何故ここでこれを挙げたか、と言うと、日本で書かれたプログラミング初学者向けの最高の教科書、がOCamlを使って書かれてるから、だ。 プログラミングの基礎: https://www.saiensu.co.jp/search/?isbn=978-4-7819-1160-1&y=2007 上記の本はお茶の水女子大学の講義で、プログラミング初学者向けに書かれたモノで、実際に使われている。初学者向けに書かれてるので平易で分かりやすく、他の言語でも存在する概念に対しても通じる事が書かれている(例えば構造体の使い方、等)。 そして二分木等のアルゴリズムの紹介なんかもある。 また、「目標として一つプログラムを書き上げる」事を掲げているのもいい。「地下鉄の、ちょっとした検索システムを作ろう」と言うアイディアだ(アルゴリズム的にはダイクストラ法)。 加えると、お茶の水大学の方でビデオ講義も公開されている。 「プログラミングの基礎」を使った授業紹介: http://pllab.is.ocha.ac.jp/~asai/book-mov/ ・Python Pythonの本は日本人が書いた本は避けた方がいい。現在オススメ出来る唯一の本は次の本となる。 世界標準MIT教科書 Python言語によるプログラミングイントロダクション 第3版: https://www.kindaikagaku.co.jp/book_list/detail/9784764906464/ Pythonでプログラミングを学ぶならこの本以上の本はないだろう。MIT(マサチューセッツ工科大学)で実際に使われてる教科書の邦訳だ。 Amazonの評だと「難し過ぎる」なんか書かれてるが、これも上に書いた通り、「他の低レベルな言語」を使ってきた人が、「Pythonの機能が分からない」からそういう感想になるだけ、だ。最初からPythonで、「Pythonらしいコードを書こう」と言う前提なら問題にならない。 多分この3つが、書籍の存在によってオススメ出来る「プログラミング初学者向け」の言語となる。 そして、就職とかが関係ないのなら、ぶっちゃけると「言語と人には相性がある」って事を覚えておこう。「皆が使ってる言語を使わなきゃならない」って事は無いんだ。 と言う事は、ここに挙げたプログラミング言語と「貴方との相性」も存在する、って事になる。 よって鵜呑みにせず、自分で大きな本屋を訪ねてみて、「実際どんな風に書かれているのか」本を確認してみて欲しい。「これが一番良さそう」って決定するのは貴方であり、貴方のセンス自体、なんだ。 あるいは、取り敢えずRubyを使ってまずはWeb文書で「プログラミングとはどういう作業なのか」軽く全体像を把握する、ってのをオススメする。

すると、全ての回答が全文表示されます。
回答No.7

んん〜。これは難しい質問だ。 概論を書こう。 実の事を言うと、「どの言語が初学者レベルでもとっつきやすいか」ってのはあんま関係ないんだ。 そうじゃなくって、重要なのは「どの言語が"初学者レベルでもとっつきやすく"書いてる入門書があるのか」なんだよ。 実はプログラミング言語そのもの、は大して重要じゃない。「どんなプログラミング入門書を抱えてるのか」ってのが重要なんだよ。 まぁ、敢えて言うと、「とっつきやすいプログラミング言語が何か」を考慮するより「自由度が高いプログラミング言語にした方が良い」たぁ言える。 「女性がどんな男性に処女を捧げたか、でその後の人生が変わる」なんつーのは都市伝説だけど、一方、「初学者がどのプログラミング言語からスタートしたか」はその後に多大な影響を与える。言い換えると、言語Aで学んだ事が言語Bで活かされなかった場合、言語Bの「プログラミングスタイル」が分からなくなって否定・批判する、ってのが良くあるんだよ。 結果、なるたけ抽象度が高く、「他の言語を見下ろせる」観点を持った言語を最初にやった方がいいんだ。逆に「いつまでも下から見上げる」ような立ち位置だと、他の言語の事が全く理解できなくなる。 そういう事は良くある、んだ。 また、特に「禁則ばっかが多い」低レベルのプログラミング言語から学習をはじめると、「アレもコレも禁止」に思えてしまって、プログラミング初心者が元々持ってる「豊かな発想」を根絶やしにするんだ。 実の事を言うと、プログラミング学習って「これが出来る」と言うより「これは出来ない」事を学ぶ比重の方が大きいんだわ。だから「アレはやるなコレもやるな」となれば雁字搦めになってしまう。 事実上、「プログラミング教育」ってのは「思考の矯正」とほぼ同義語、なんだ。 現在、一般的には「Python」と言う言語を薦める人が多いだろう。 ただし、個人的にはこれはオススメしない。Pythonの入門書は増えてるけど、上にも書いたけど、実は「碌な入門書がない」。あんまPythonを知らん人が書いてる本ばっかで、推挙デキそうな本がほぼ存在しない、んだ。 「Pythonの入門書が増えてる」ってのは単なる一種のPython人気にあやかった出版バブルなだけで、それらの品質を保証しないんだ。 よって、手を出さない事を薦める。手を出すにしても他の言語で「一般的なプログラミング言語に纏わる基礎知識」を得た後の方がいいだろう。例えばPythonはモダンな言語が備えてるマトモなスコープが無い。これを「当たり前」と初学者に捉えてほしくない、んだ。 また、「Pythonは学ぶのが結構難しい」。これが事実だ。「Pythonはシンプルで学ぶのが簡単だ」って言う人が多いけど、実のトコこれは、彼らが学んだ時点での「Python1.x」とか「Python2.x」時代での印象で発言してる。現在はPython3.xで、これはそれらよりも複雑怪奇に拡張されてる、んだよ。 ハッキリ言うけど、「プログラミング言語にある機能xを追加する」とアドホックな拡張にならざるを得ず、大体のケースに於いて初期に持ってたシンプルさ、なんてのは喪われていくんだ。Pythonももう年齢が30歳過ぎてるんで、そろそろ老廃物が溜まってきてて、加齢臭が生じ始めてる。 BASICはどうだろうか。これも個人的にはオススメしない。モダンなプログラミング言語観点では「難しい言語」にむしろ分類されるから、だ。 BASICは1960年代から(つまりパソコンが存在しなかった時代)1980年代まで「初心者はまずBASIC」と言う時代を築き上げたんだけど、それは現代じゃ通用しない。BASICとPythonを比較したらPythonの方が簡単だ、ってくらいムズい範疇になっている。 一応言っておくと、単に「BASIC」と言った場合、それは現在ではISO(国際標準規格)やJIS(日本産業規格)で制定された公式仕様、「FullBASIC」の実装を指す。公的仕様に則ってれば誰が実装しようとBASICを名乗っていい。なお、Microsoftの作成しているVisual Basic系のシリーズはこの公式仕様には則ってない。良く言えば「BASIC方言」であり(プログラミング言語にも「方言」がある)、悪く言えば「BASICとは全くの別物」だ。 圧倒的に使われてるのはMicrosoftのプロダクトで、そしてFullBASICの実装はほぼ存在せんので、学習するのは事実上無理だ、って事になる。 なお、その「限られた数の実装」の一つがフリーソフト「十進BASIC」だ。 十進BASIC: http://hp.vector.co.jp/authors/VA008683/ どうしてもBASIC、ってぇのなら上のページを訪ねてみればいいとは思う。ユーザーも結構いるし、質問するには良い環境だろう。 しかし繰り返すが、Fortranがブイブイ言ってた時代ならいざ知らず、現代ではBASICは「難しい言語」の範疇に入っている。 JavaScriptはどうだろうか。これも個人的にはオススメしない。実の事を言うと、Pythonよりパワフルで非常に良い言語なんだけど、残念ながら「JavaScript以外を同時に学ばなければならない」ので初学者に対しての負担が他の言語の比じゃない、んだ。 原則、JavaScriptはプログラミング言語には珍しく、「ウェブブラウザ上で動く」事を念頭に於いて設計されている。つまり、HTMLやCSSの知識がまずは必要になるんだ。 また、JavaScriptには「入出力が存在しない」。JavaScriptで外界とやり取りするにはブラウザのAPIを経由せんとアカン。つまり、ブラウザの機能を同時に学ばないとならない。あまりにもプログラミング初心者に負担を強いる。 もちろん、スタンドアロンと呼ばれる「JavaScriptだけで動く」処理系も存在する(SpiderMonkeyとかRhinoとかV8とか)。でも、簡単にインストールして動かす、ってカタチで提供されてるわけじゃなく、大体ソースからビルドせなアカン。ここで「ソースからビルド」と言う言い回しに明るくないのだったら、結局「初心者向けじゃない」って事だ。 あるいはJavaをインストールして、それに付録として付いてるRhinoを使う、って手もあるけど、JavaScriptを学ぶ為だけにJavaの開発環境をインストールするのもどうかな、ってのが本音だ。しかもRhinoはJavaScript(EcmaScript)の最新仕様を反映していない。 ここに書かれてる事に対して「?」と思うのなら、やっぱJavaScriptは明らかにプログラミング初心者向けではない、って事だ。 じゃあどの言語がいい?って訊かれると、本音を言うとLispって言語が一番自由度が高くて良い、とは思っている。ただし、やっぱ本がない、んだ・・・・・・。 本気でプログラミングを学んでソフトウェアを作ってみたい、ってぇのなら良い本を抱えてるのがANSI Common Lispではあるんだけど・・・・・・。 実用Common Lisp: https://www.shoeisha.co.jp/book/detail/9784798118901 この本は他の「プログラミング入門書」とは違って本当に「ソフトウェアの作り方」をたった二章で「Lisp入門」をやった後に突っ込んでいく。他の「プログラミング入門書」がプログラミング言語の「機能解説」に留まるのとは大違いだ。それでも「プログラミング初学者」を意図して(含んで)書いてる、んだ。 こんな本の類書は存在しない。それでも値段が高いんで、恐らく躊躇するとは思う。いや、値段以上に価値がある、って事は保証するけど、それでも躊躇するだろう。 なお、Web検索すれば「Lispは難しい」って意見を多く見かけるだろうけど、初学者レベルならむしろ関係がないとは思う。「難しい」って言ってる人は、上にも書いたけど「他の低レベルで禁則事項が多い」言語の経験からそう言ってるだけ、で、むしろ「前提が存在しない」人にはそれほど難しくはないと思う。 なお、ANSI Common Lisp実装では、メールアドレスやら何やら登録が必要だけど、オールインワン環境では次の商用処理系のフリー版が存在する。 Allegro CL 11.0 Free Express Edition Download: https://franz.com/downloads/clp/survey これが恐らく一番面倒がない。 上の教科書が「高すぎる」とか、あるいはちょっとツッコむのを畏れる場合の為、いくつか代替を提示しておく。

すると、全ての回答が全文表示されます。
回答No.5

BASICはそういう目的で作られたと思うけど。 構造化とか気にしないなら、N88-BASIC。 いきなり画面に線引いたり円を描く命令とかあるし。 手元の文書やデータ、ファイルを処理ってのは面倒そう。 最近のPCの仮想環境で動かしたらアホほど速くて、空ループしたらPCのファンが凄い音出し始めるし、速度の同期をどうすればって途方に暮れた。 今の環境だと、さくっとアクションゲームとか作るのはちと面倒。

すると、全ての回答が全文表示されます。
noname#263952
noname#263952
回答No.4

簡単な言語の1つとしてRがあります。Pythonほどの利用者はいないので、Rを学ぶためのプログラミングスクールや参考書は少ないのです。ただし、help()を使えば英語ではありますが、Rの各関数の使い方を参照できるので、そこまで困るものでもない。 欠点としては、初心者がよく使うForやIfを多用すると、かなり処理速度が非常に遅くなります。数十万、数百万のデータを扱う時の話ではありますが。ベクトルや行列の形で計算することで、速度低下はある程度回避できる。 ただし、Rはそもそも「統計学」をやらない人は殆ど使わない言語です。(簡単な統計計算ならば、scipyやnumpyを使うことで、Pythonでも使用できますし。) 外国語の勉強をするのは、「実際にその言語を使ってコミュニケーションを取る」ためです。ドイツに移住したい人がベトナム語を学んでも意味ないのです。 プログラミング言語も同じです。Rを学んでもゲーム作りには役には立ちません。 その点はご注意ください。

すると、全ての回答が全文表示されます。
  • t_hirai
  • ベストアンサー率28% (222/788)
回答No.3

うーん、そしたらJavascriptですかね。 基本的には「◯◯を作りたいのですが、どのプログラミング言語がいいですか?」と聞いたほうが良いと思ます。 全くの初心者であれば、dotinstallというサイトがプログラミングを解りやすく説明してくれているので見てみると良いかもしれません。

すると、全ての回答が全文表示されます。
  • SPROCKETER
  • ベストアンサー率26% (2131/8006)
回答No.2

RPGツクールで使われているルビー言語などがゲーム用言語として知られていますが、実務用であれば、C++とか、アセンブラ言語でしょうね。

すると、全ての回答が全文表示されます。
  • _kappe_
  • ベストアンサー率68% (1606/2337)
回答No.1

今の流行りとしてはPythonを挙げておきますが、プログラミングを学んで何をしたいのかによって違ってきます。

すると、全ての回答が全文表示されます。

関連するQ&A