• ベストアンサー

プログラミング言語ってどうしてこんなに多いの?

会社に新入社員が実習で入ってきました。気さくな20歳の女の子ですが、C言語とかを使ってプログラムは組めるそうです。パソコン歴は長いのですが、BASIC言語で組んだ頃で終わりです。 なにかすっごく嫉妬を感じたのですが、どうしてこんなに言語が存在するのでしょうか?。言語の特性とできましたら、習熟の難易度などをかかれていただくと助かります。また、今もっとも注目を浴びている言語がありましたら、参考までにお願いします。

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

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 プログラミング言語が多い理由は、世界に人間がしゃべる言語が多いのとほぼ同じだ。それぞれ必要があったから作られた。  世界の言語と違う所は、それぞれの言語に生まれた背景と得意分野があるという事だ。  例えば、今なおプログラマの必須科目と言われているC言語は、元々はアセンブラの代わりとして生まれ、普通のアプリケーションに一般的に使われている言語に比べて、よりハードウェアに近い所で活躍している。  Visual BasicはそのままBASIC言語の進化した形で、やりたい事を直感的に書けるというコンセプトでMicrosoftが開発したビジネス用言語だ。  Javaは、C/C++言語をオブジェクトオリエンテッドに完全に書き換えた事と、VMという完全仕様を提供した事で注目され、繁栄や衰退を繰り返しながら、今なおコンピュータ世界の一部で強い勢力を誇っている。 ~~~~~~~~ 言語 特性 難易度(BASIC言語の知識があるとして) C言語 汎用(いろいろ使える) 難 VB/VBA アプリ作成 易 VBScript 小ツール作成 易 Pascal アプリ寄り汎用 難 Java アプリ寄り汎用 難 VB.NET アプリ作成 中 C# アプリ作成 難 ~~~~~~~~  最も注目を浴びている言語というのは、最初に記述した通り分野によって違うので何ともいえない。  君がプログラマやエンジニアを目指すのであれば、JavaとVB.NET(+C#)とC言語は全てマスタしておきたい。  そうでなく、例えば普段パソコンで行っている業務で機械的な流れ作業を効率化させるようなちょっとしたツールをちゃちゃっと作れて職場のみんなから尊敬されまくりで憧れのあの人も僕の才能にメロメロってのが良いなら、VBAを重点的に勉強しよう。VBAは、比較的簡単で、数行~数十行で劇的に役に立つ物も多い。VBAとは、一般的にMicrosoft Office(WordやExcel)を操作するものだと思ってくれて良いだろう。

hagimete
質問者

お礼

早速のご返事、ありがとうございます。これをみるとc言語は小回りのきく言語であるが、使いこなすのは非常に難しいようですね。また、お薦めはVBAのようですね。 勝手な解釈でごめんなさい。丁寧に書かれて助かります。再度、どうもありがとう。

その他の回答 (2)

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.3

そうですね、後半部はちょっとよく分からない説明でした。もう少し分かりやすい説明をしてみたいと思います。 プログラミング言語を作る理由(動機)はいろいろあります。 いちばん理解しやすい動機は、あるプログラミング言語を使っていて不満を感じた人が、その不満が生じないような新しいプログラミング言語を作った、というものです。 この他に、実際にあるものとしては 1. ある特定の問題の研究者が、その問題を解くために専用のプログラミング言語を作成した。 2. 上記1.と似ていますが、大学などで教育のため新しいプログラミング言語を作成した。あるいは課題として作成させられた。 3. 「プログラミング言語」とは呼べないほど小規模な「マクロ」だったものが、機能を拡張していくうちに、いつのまにか「プログラミング言語」になってしまった。 などがあります。 そして、前回の回答で書いた、分かりにくかった動機は、こんなものです。 ある新興のプログラミング言語Lが人気を博したとします。ところが、このことをある企業Aは気にいりませんでした。というのも、このプログラミング言語Lは企業Aのライバル企業である企業Bが全面的な権利を有していたからです。 そこで企業Aはこう考えました。 「プログラミング言語Lに似たプログラミング言語Mを発表しよう。うちは大手だからタダで使わせればみんな使うに違いない。ついでに、うちの目の届くところではプログラミング言語Lは動作しないようにしてやろう。これで企業Lの業績はガタ落ち、うちはハッピー。」 ・・・とまぁ、ここまで露骨ではないにしても、こういう動機で作成されるプログラミング言語もある、という噂を聞いたような聞かないような。 要は、より良いプログラミング環境を求めて新しいプログラミング言語が作成されるばかりとは限らず、政治的な理由で作成されることもあるということです。

hagimete
質問者

お礼

イヤー確かにたくさんのプログラム言語が存在するというのがよくわかりました。 本当は最初の方の回答が私にはピタリとはまったのですが、確かに別の角度から見たらあなたの言うとうりです。 私が思っていた言語の基本的考え方がどうも間違っていたようです。そうですか、みんな独自の言語をどんどん作っている。確かに言われてみればそうですね。 少し気軽に質問を出したつもりが奥が深い内容なので驚きました。プログラム言語全般を見渡した回答には少し考えさせられます。

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

ダイエット法がたくさんあるのと同じです。 特定の1つのもの(言語にせよ方法にせよ)がすべての要求を最適に満たすならばそれ1つで用は足りるのですが、残念ながらそうはいかないので、別の要求を満たすために別のもの(言語や方法)が作られるわけです。 ここで言う「要求」の中には、単にそれ(言語や方法)が問題をより良く解決することだけでなく、もっといろいろなものが含まれます。たとえば、それ(言語や方法)を売ることで利益を上げたいとか、別のもの(言語や方法)を売っている会社の邪魔をしたいので似たようなもの(言語や方法)を出してぶつけたいとか、そういう本来の「問題解決」以外のものもあります。

hagimete
質問者

お礼

ありがとうございます。うーん少し後半わかりにくい内容でした。デジカメで言えば新しいメディアを作るということと考えました。確かにOSもほとんどがwindowsですが、このような状態が逆に異常な状態といえるかもしれません。  

関連するQ&A

  • プログラミング言語について

    プログラムを学ぼうと思っている初心者です。 C、Java、COBOL…色々なプログラミング言語がありますが、それぞれどのような物を作るときに使用されるのでしょうか?今いちばん需要があるのものと難易度も知りたいです。わかりやすく教えていただけるとありがたいです。

  • 勉強になるゲームのプログラミングの本

    ゲームを作ってみたいと思っています! 参考になる本や資料があれば教えていただけないでしょうか? 目標は3Dゲームを作ることです。 参考となる本や資料は説明しか書いていないノウハウ本よりも、 コードが多めのもので構いません。 難易度も問いません。 言語についてもC・C++に限定するつもりはないです。 (現在習熟中の言語は、C・C++とVB) よろしくお願いします。

  • プログラミング言語AWKについて

    現在大学生ですがゼミ(ネットワークのゼミ)の先生の指導のもとAWKを勉強することになりました。理由はそんなにむずかしくないから、短い期間にはちゅうど良いということなのですが。実際はどういうところで使われているのでしょうか??また、勉強する価値はどんな程度でしょうか??僕は学生のうちはどんなプログラムでも勉強するのは悪くないとおもっているので頑張るつもりですが。どうも聞いたことの無いプログラムなもので気になりました。詳しい方もしくはAWKを極めている方、ぜひ教えてください。ちなみに私は一応大学でC言語とJAVAをかじっていますが、こんな私にとって難易度はどんなものでしょうか??Cをしっていたら結構簡単と教科書にはかいてあるのですが・・・。

  • プログラミング言語の習得

    プログラミング言語の習得 私は現在SEへの転職目指しております。 特に社内ではプログラミングの業務をしているわけではありませんが、 独学でC言語の学習をしております。 (就職前にVBを学習、C言語は1ヶ月前からはじめ参考図書「猫でも分かるC言語」を通して 学習し終えた段階です。) プログラミングの言語は多数存在する昨今、どの言語を習得すべきなのか、 このままC言語を学習し続けていいものなのか迷っております。 目標や用途によって習得すべき言語は異なってくるということは耳にしますが、 実際C言語のプログラミングでは何ができるのでしょうか?

  • C言語 プログラミング

    C言語初心者です。 以下の点を踏まえて、 2次方程式ax^2+bx+c=0の解が実数であるかどうか判定するプログラムを教えてください!お願いいたします。 ・if文を組み合わせる ・判別式D=b^2-4acを使う ・係数abcは実数として入力する ・aが0の場合などすべての場合を網羅している 例 a=0,b=0,c=1の場合、解は存在しない

  • プログラミング

    インターネットやメールを使いこなせるようになったので、何か変わった事に挑戦したい(ゲーム作成)と思い、プログラミングにトライすることにしました。 エクセルのVBAを使ってプログラミングをしているのですが、逆にこのような動作をするのならマウスで動かしたり、いつも知っている通りした方がが速いんじゃないか?と疑問を抱きはじめました。  プログラムするに当たって色々な言語(C言語やJava etc)の存在がある事をしりました。  一体、何の言語がプログラム初心者にとって学びやすいのですか? またお勧めサイトがあれば紹介してください。 私の参考にしているサイトは(http://www.happy2-island.com/)です。 ちなみにOSはWinME メモリは128 Office2000を使用しています。

  • C言語特有の文法や概念について

    C言語に特有な記述の仕方や概念って何かあるでしょうか? C言語のみにある特性でなくてもよく、例えば、Curly-bracket言語であるとか、返り値なしのvoidが扱われているとか・・・。 なるべく、手続き型言語である等といったパラダイム的なものではなく、C言語でプログラムを書く上での特殊な文法とか、そういったものを教えて頂ければと思います。 ちょっとわかりづらい質問で申し訳ありませんが、よろしくお願い致します。

  • C言語プログラミング能力認定試験 3級

    C言語プログラミング能力認定試験3級を受験しようと思います。 自分はまったくのプログラム初心者です。 何かいい参考書、テキスト、サイトなどありましたら教えてください。

  • C言語を勉強したい。

    C言語でモーター、LED制御等行いたいのですが、参考書等はほとんど私の目的としたものに関係しない分野での参考プログラムです。 また、ロボット等のプログラムはアイコンをならべてプログラムを記述する方法ですが、肝心のC言語での記述は確認できません。 どなたか、モーター、あるいはLED等の制御を行うプログラム及びその解説,等がある参考書、キットなどご存じの方、教えて頂けませんか。 

  • インタプリタ言語の制作について

    言語処理プログラムの勉強も兼ねて、インタプリタ言語の制作を行っているのですが、yaccなどのツールを使わずに語句解析などのプログラムを作ってみたいと思っています。 ですが、調べてもツールをを使ったものしかヒットせず、参考になるようなことは載っていませんでした。 参考になるようなWebサイトを教えてください。 言語はCを使っています。