こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

最初に学ぶべきプログラミング言語は?

プログラミングをしたいと思います。
目的がはっきりしていないのですが、ソースの公開されているプログラムを自分向きに修正、改造したりしたいです。(要望を出して対応してもらうのは申し訳ないですし、自分で多少はいじれるようになりたいです。せっかくソースを公開されているのですから。)
疑問に思ったのは、最初に学ぶべき言語についてです、各言語の特色、主要な言語の情報を教えていただけないでしょうか。
プログラミングを始めるに際して、入り口に立つための準備に関することを教えていただけないでしょうか。
よろしくお願いします。

投稿日時 - 2006-09-09 13:41:30

QNo.2394525

暇なときに回答ください

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

プログラミング言語は大きく分けて手続き型、関数型、論理型などに分類されます。

手続き型言語の代表は、Pascal, Ada, C, C++, PL/I, Fortran, Java, JavaScript, BASIC などです。
関数型言語の代表は、Lisp です。
論理型言語の代表は、Prolog です。

現在では、広く使われているのは、手続き型言語です。各言語によってだいたい用途が分かれてきますので、どういった分野のプログラムを利用したいかによって言語を選べば良いと思います。例えば、科学技術計算は伝統的にFORTRANが広く使われていますし、ウェブ用にはJavaがわりと広く使われていますし、C言語などは割とOSやハードウェア制御などにも使われる軽い言語ですし、自然言語処理にはLispやPrologも使われます。

あと、上記の分類とはまた異なりますが、「オブジェクト指向プログラミング」の概念を取り入れた言語もあり、ある種のプログラム開発には向いています。

まったく初めてでしたら、勉強ならばPascalあたりから始めるのが良いでしょうし、いきなり実用を考えるならCまたはC++あたりから始めても良いと思います。

なお、いわゆるプログラミング言語ではありませんが、機械語やアセンブリ言語を理解しておくのも、プログラムを書く上では役に立つと思います。

投稿日時 - 2006-09-09 14:10:44

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:24:02

このQ&Aは役に立ちましたか?

8人が「このQ&Aが役に立った」と投票しています

回答(8)

ANo.8

他の質問を見ましたが、まだお若いようですね。

よって、今は意識していないとしても将来役に立つ可能性の高い言語という視点で選びます。 となると、「最初」はC#がよいでしょう。標準ライブラリも充実していますしマニュアルも十分。インストールするだけで使えるので「環境構築」に惑わされることがありません。動きが「目に見える」のでとっつきやすいです。ある程度プログラムの雰囲気が分かってきた後に他の言語に手を出せばよいでしょう。 一昔前であればVBも選択肢として入りましたが今からやるのであればC#です。

「公開ソースを修正」なんて当分は手が出ないでしょうから、そんなこと考えない方がよいでしょう。 ただし、パラメータをいじるだけで良いというのであればビルドの仕方を覚えるくらいで済むので敷居はぐっと低くなります。C#を少し勉強した後であればCでもDelphiでも「なんとなく」パラメータ変更は出来るようになります。

なんだかんだ言ってマイクロソフトの力は強大です。仕事をするにも趣味にしてもマイクロソフトの言語を勉強するのがよいでしょう。

投稿日時 - 2006-10-21 23:46:42

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:20:34

お薦めの言語はC言語あるいはC++言語だと思います。
ライセンスにかんして書いている方がいましたが、
ライセンスがうるさくない言語としてbasicではなく、
C++言語ベースのがあります。

wxwidgetsといって、フリーの開発環境です。複数のOSで動きくことを想定としたものです。これを使って商用ソフトも非商用ソフトも作っても大丈夫なので。


また同種のものでpythonやperl,basicを使った
wxpython,wxperl,wxbasic,wxrubyなどがあります。
http://www.wxcommunity.com/modules.php?op=modload&name=Downloads&file=index&req=viewdownload&cid=1

ちなみに自分は使いこなせていませんが…。
windowsなら
http://wxdsgn.sourceforge.net/
をダウンロードしてインストールするだけで使えます。

参考URL:http://www.wxwidgets.org/

投稿日時 - 2006-09-24 19:32:11

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:22:08

ANo.6

日本の開発者傾向は世界の流れと孤立して職人傾向にあります。日本人が中心で使ってる開発環境はどちらかというと、ライブラリ等を全部自分でつくっていく感じで、ライブラリを使う上で制限やロイヤリティ(使用料)など制限がいっぱい付きます。それでも良いなら、マイクロソフトやボーランドの製品などを使えばいいでしょう。

wonder-magicさんのようにオープンソースで情報交換して、使えるライブラリは全部使って改造する感じでソフトウェアを作りたいと考えているなら、私の使っている環境がおすすめです。コミュニティはオープンソースで会話する世界、みんなライブラリを公開(EXEに含むタイプ)してロイヤリティや利用制限をつけません。それが120以上、コードTipsは2000以上あります。さらに初心者用の書き方をまとめたコード大全集(他の開発環境にはない)。最速チューニングBASICでBASIC系では最速の処理性能。組織での利用を考慮せず個人向きにプログラミング仕様を設計しています。BASIC系では一番洗練されて使いやすいです。学習は本を買う必要はありません、コード全集とネット上の教科書でぜんぶ勉強できます。WinだけでなくLinuxやMacOSXの開発環境も1つのパッケージに全部はいってます。

もし将来の仕事でプログラミングを学ぼうとしているなら、PureBasicはセミATのスポーツ車、DelphiやVisualはマニュアル一般車のような感じです。最初に楽々な環境になれると、仕事で使おうとしたとき馴染めなくなるかもしれません。使うのが難しいDelphiやVisualを学ぶ方が良いでしょう。私は使ったことがあるので言えるのです。

参考URL:http://dbp.cool.ne.jp/program/purebasic/purebasic.htm

投稿日時 - 2006-09-16 14:27:32

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:22:37

ANo.5

#4さんの回答に補足します。

> Borland used the name "Object Pascal" for the programming
> language in the first versions of Borland Delphi, but later
> renamed it to the "Delphi programming language". However,
> compilers that claim to be Object Pascal compatible, are often
> trying to be compatible with Delphi source code.

なので、現在では言語名としても Delphi です。

プログラムを読むときの手助けになる本をもうひとつ紹介しておきます。

参考URL:http://amazon.jp/exec/obidos/ASIN/4756144152

投稿日時 - 2006-09-10 15:34:59

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:23:04

ANo.4

ソース公開されているものを修正云々、というのは自分が書けるようになってからです。
そして、「最初に覚えるべき」などという言語は無いと思ってください。実際、言語なんて目的に応じて都度変わります。

Windows上で、Windowsらしいアプリケーションを作りたいのでしたら、VB.NETかC#.NETを勧めます。この2つで、大半の用は済みます。
「入り口に立つ」なら、まずこの系統が良いと思います。

コマンドプロンプトから起動し、一括で大量の文字を処理するようなプログラムでしたら、Rubyを勧めます。正直「書いていて気持ちいい」と思わせるコードが書けます。

どうしてもソース公開しているコードを、というなら、母数の差でC/C++です。基本となるのはCですね。
処理系として使われているのはむしろC++ですが、C++の厄介な部分であるtemplate等は最初は流し読みでいいと思います。まずC言語の部分だけで性一般でしょうから。
似た系統で、Delphiを覚えると良いです。汚いC言語ソースはDelphiを覚えると矯正されます。(Delphiは製品の名前で、言語はObject Pascalです)

投稿日時 - 2006-09-10 05:13:03

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:24:36

ANo.3

本気でプログラムをされるつもりがあるなら、機械語から入ると基礎が身についていいと思うんですが、趣味のレベルでしたらVB、C、C++あたりから入られるのがいいんじゃないでしょうか。
あと、ソースを修正・改造されたいそうですが、表示文字を変えたりとかならまだしも機能をいじるような改造は、少し複雑なプログラムになるとかなりのスキルを要求される場合があります。自分で作るよりも、人のプログラムを解読する方がはるかに難しい場合が多いです。いきなりフリーソフトの改造とかに手をつけると挫折してそれっきりになってしまうかもしれないので、まずはある程度自分でプログラムできるレベルを目指す事をお薦めします。
まあ、とりあえずはMicrosoftのVisualExpressシリーズとかはどうでしょうか。無料だしサンプルプログラムもあるので。

参考URL:http://www.microsoft.com/japan/msdn/vstudio/express/

投稿日時 - 2006-09-09 16:35:53

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:23:27

ANo.2

公開されているプログラムをいじりたいという目的があるのですから、
遠回りせずそこで使われている言語に手を出すというのもありではないかと思います。
ソースが公開されているソフトウェアでよく使われている言語というと、
C/C++, Java, Delphi Visual Basicあたりになるかと思います。
まるっきりの入門でC/C++だとつらいところもあるとは思いますが、いずれは通る道だということでがんばりましょう。

このような前提を抜きにすれば Pythonをお薦めします。最近日本人著者による入門書もでましたし、能力的には申し分ないです。

言語の特色等はスペースがとてもじゃないけど足りないので割愛させてください。あと、
> プログラミングを始めるに際して、入り口に立つための準備に関することを教えていただけないでしょうか。

いろんなアルゴリズムを覚えて自分のものにしましょう。
人のプログラムを読むときに役に立ちます。

参考URL:http://www.amazon.co.jp/exec/obidos/ASIN/479733665X,http://www.amazon.co.jp/gp/product/4839912653/

投稿日時 - 2006-09-09 14:53:13

お礼

多様な意見があり、とても参考になりました。
回答への返信をつけるのが非常に遅くなり申し訳ありません。

今は海外ソフトの日本語化やEmacsのLispを書いたりしています。
自身でも勉強を続けていこうと思っています。

ありがとうございました。

投稿日時 - 2006-12-31 20:23:46

あなたにオススメの質問