トップページ⇒tech
1001コメント289KB

初心者のためのプログラミング言語ガイド Part14

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2009/02/27(金) 08:53:41
これからプログラミングを始める初心者の人に言語を薦めるスッドレ

質問者の方へ
どのプログラミング言語を最初に覚えるべきかは
なぜプログラミングを始めたいのか、何を作りたいのかによってまったく変わってきます。
なんとなく、でもかまわないので動機、用途、使っているOSを明記しましょう。

各言語の特徴はこちらを参照
Wikipedia Category:プログラミング言語
http://ja.wikipedia.org/wiki/Category:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E

Part13 http://pc11.2ch.net/test/read.cgi/tech/1232286278/
Part12 http://pc11.2ch.net/test/read.cgi/tech/1226761546/
Part11 http://pc11.2ch.net/test/read.cgi/tech/1218282605/
Part10 http://pc11.2ch.net/test/read.cgi/tech/1215717670/
Part9 http://pc11.2ch.net/test/read.cgi/tech/1210941509/
Part8 http://pc11.2ch.net/test/read.cgi/tech/1208186034/
Part7 http://pc11.2ch.net/test/read.cgi/tech/1200807067/
Part6 http://pc11.2ch.net/test/read.cgi/tech/1193132235/
Part5 http://pc11.2ch.net/test/read.cgi/tech/1187886538/
Part4 http://pc11.2ch.net/test/read.cgi/tech/1177285633/
Part3 http://pc11.2ch.net/test/read.cgi/tech/1152778344/
Part2 http://pc8.2ch.net/test/read.cgi/tech/1122205164/
Part1 http://pc8.2ch.net/test/read.cgi/tech/1034505166/

※雑談はプログラマ板でやりましょう。
0154デフォルトの名無しさん2009/03/09(月) 01:01:52
>>153
大丈夫

何でCが出てくるんだ?全く関係ない。
0155デフォルトの名無しさん2009/03/09(月) 01:10:37
>>148
こういう場合大抵C#が勧められてるみたいだけど、
とりあえずJavaとはならないの?
なんとなくJavaをやってみようかと思って本を買ってきたばっかなんだけど。
0156デフォルトの名無しさん2009/03/09(月) 01:13:13
じゃあ、Javaでいいよ。
0157デフォルトの名無しさん2009/03/09(月) 01:13:57
いや、そこはほれ、日本語のヘルプが充実してるとか
インストールが簡単とか、なんかあるんじゃないの?
0158デフォルトの名無しさん2009/03/09(月) 01:18:18
>>153
それならC#が一番いいよ。
>>154
まあC#はC++++にちなんでって話だから、そう思うのかもね。
>>155
windowsでランタイム入れるなら、javaよりも.netの方がいいから。
javaの本買って来たなら、javaでいいよ。ただwindowsのみで配布を考えるなら
.netの方がいいと思うけどね。javaわかるならC#もすぐわかる。
0159デフォルトの名無しさん2009/03/09(月) 01:20:53
>>158
ランタイムだけの差なのか。ありがと。
0160デフォルトの名無しさん2009/03/09(月) 01:47:17
C#やJavaの実行速度って遅いの?
C#とJavaを比較したらどっちが早い?
0161デフォルトの名無しさん2009/03/09(月) 02:02:37
C#のほうがかなり速い。
Windows以外の環境ではどうなるか知らないけど
Windowsで使う前提ならMS様に従っておくのが正解。
0162デフォルトの名無しさん2009/03/09(月) 08:13:38
>>138
文法書ではないのでPerlの基本的な使い方から学びたい場合は
「初めてのPerl」を先に読むといい。
0163デフォルトの名無しさん2009/03/09(月) 12:12:37
>>145
それはないだろう。ここ5年くらいに限れば、Webサイトに現れるrubyと
いう単語の少なくとも95%以上はプログラム言語のRubyのはず。
0164デフォルトの名無しさん2009/03/09(月) 12:38:02
>>163
いや、Rubyを検索すると105,000,000件でSapphireが537,000,000件くらいあるから、
そうとも言えない。
01651642009/03/09(月) 12:39:32
ごめん、Sapphireは53,700,000件ね。
0166デフォルトの名無しさん2009/03/09(月) 13:50:41
>>163
日本だけならそうかも知れないけど、英語圏の国だったらそうも行かないんじゃない?
0167デフォルトの名無しさん2009/03/09(月) 14:04:40
>>146
PHPもPHP5からPerlじゃ、完全にデグレだろ。
0168デフォルトの名無しさん2009/03/09(月) 14:13:19
ずぶの素人だが何に手をつけていいか迷っている
おススメはなに?
0169デフォルトの名無しさん2009/03/09(月) 14:25:43
>>168
日本語でのプログラミングができなくてもいいなら、Erlangがお勧め。
読みやすいし、覚えやすい。データとしての情報としてなら、
もちろん日本語も使える。
0170デフォルトの名無しさん2009/03/09(月) 14:26:05
>>168
ExcelVBA
0171デフォルトの名無しさん2009/03/09(月) 14:35:13
ご覧のように、ぼんやりした質問には何でもありな答えしか返ってこない
理由や目的は?
0172デフォルトの名無しさん2009/03/09(月) 14:37:01
>>169
初心者に資料が整っていない言語をすすめるのはキチガイ
0173デフォルトの名無しさん2009/03/09(月) 14:44:28
とりあえず何かしてみたいならvbscriptとか
0174デフォルトの名無しさん2009/03/09(月) 14:54:22
vbsって何に使うの?
バッチとしては面倒臭すぎるしブラウザならjavascriptだし
VBAの代わりとか?
0175デフォルトの名無しさん2009/03/09(月) 15:02:27
>>172
しっかりした本があるよ。
0176デフォルトの名無しさん2009/03/09(月) 15:18:54
何か作りたいものがあるか作れる技術を身につけたいんだろ?
初心者に言語としての美しさとかどうでもいいんだよ
0177デフォルトの名無しさん2009/03/09(月) 15:24:36
>>176はプログラミングはソフト制作以外にやらないというIT土方
0178デフォルトの名無しさん2009/03/09(月) 15:31:13
>>175
Erlangは英語読めないと無理だよね
日本語で読める本はArmstrongのやつぐらいだし
それ以外の資料は、ほぼ全て英語だ

そんな言語をずぶの初心者に勧めるのは単なる嫌がらせ
0179デフォルトの名無しさん2009/03/09(月) 15:31:16
>>168
N88-BASIC
0180デフォルトの名無しさん2009/03/09(月) 15:43:46
>>178
「プログラミングErlang」 Joe Armstrong著榊原一矢譯 オーム社
よりずっと小冊だが、
「Erlang入門」 柏原正三著 ASCII
で初心者は十分というか、これだって完全に動かしてみるのは、
結構大変。英語云々なんて、当分関係ないよ。
0181デフォルトの名無しさん2009/03/09(月) 15:46:08
英語くらい読めないようじゃw
っていう人がよくいるけど、そんんじゃ初心者はプログラミングの環境整える段階で挫折しそう
0182デフォルトの名無しさん2009/03/09(月) 15:48:02
>>180
本気で言ってるのなら視野が狭すぎるw
客観的な判断が出来ない奴はプログラマに向いてないぞ
0183デフォルトの名無しさん2009/03/09(月) 15:57:04
>>178
プログラミングの初心者が英語の初心者とは限らない。
英語読めれはあの値段でSafari読み放題だ。

とは言え、まあことわりがなければ日本語が前提だろうなあ。
0184デフォルトの名無しさん2009/03/09(月) 16:01:27
わざわざそんな苦労して初心者がマイナーな言語覚える意味がわからないw
0185デフォルトの名無しさん2009/03/09(月) 16:02:19
そういやErlangのライブラリリファレンスって日本語化されてたっけ
されてなければ英語必須だな
0186デフォルトの名無しさん2009/03/09(月) 16:03:09
初心者には敷居が高いと思われがちな関数型の中で一番とっつき易い
Erlangを押すのは一理あると思うけどな。>>169は多バイト文字の制限に
ついてもちゃんと押さえているし。
0187デフォルトの名無しさん2009/03/09(月) 16:16:17
なぜ伝統あるMLやHaskellやSchemeではなく、特にErlangなのか
あの言語は色々と変だと思うのだが
何か妙にPrologに影響されてるというか

プロセスは本当に素晴らしい
素晴らしいが、まさかプロセス目当ての初心者なんていると思うか?
0188デフォルトの名無しさん2009/03/09(月) 16:16:19
>>184
初心者がわざわざ苦労して希少性のないメジャー言語を
勉強しなくちゃならなのかわからないw
0189デフォルトの名無しさん2009/03/09(月) 16:17:43
少なくともメジャー言語のほうが質問しやすい環境やトラブルを解決しやすい環境は整ってる
0190デフォルトの名無しさん2009/03/09(月) 16:19:29
>>187
単純にコードを読み易い。
0191デフォルトの名無しさん2009/03/09(月) 16:21:16
haskellとかでも中学程度の英語力とMLのアーカイブや、ircのログを
grepする程度の頭がありゃ大抵のトラブルは解決するよ
0192デフォルトの名無しさん2009/03/09(月) 16:21:29
>>186
プログラミングは模倣から始まるんだよ。

どこかでつまずいたときに検索したら
同じ所でつまずいた先人の処方箋がすぐに見つけられること。
独学の場合はこれが最重要事項。

関数型だの手続き型だのといったことは
ある程度学習が進んでから本人が自発的に選択することであって
右も左もわからない初心者にさもありげに押しつけるのは
余計なお世話どころか害悪でしかない。
0193デフォルトの名無しさん2009/03/09(月) 16:27:40
無理矢理に関数型言語のよいところを挙げるとすると
基礎程度ならPCがなくても紙と鉛筆があればできるというところ
融合規則の証明とか、関数の書き換えとかそういうやつね
PCをうまく使いこなせないけど義務教育レベルの因数分解や式の展開ならできるって人にオススメ
0194デフォルトの名無しさん2009/03/09(月) 16:30:54
>>192
模倣云々については確かにそうだと思う。
ただ、東京マラソンの参加者が仮に38万にいるとして、
初心者は現在38万位。努力して、来年32万位にあがれるか?
一方Erlangマラソンの方は参加者2000人で現在2000位。
努力すれば来年は1200位まで上がる可能性もある。
この方が夢があるよね。
0195デフォルトの名無しさん2009/03/09(月) 16:32:35
ナンバーワンにならなくてもいい、もともと特別なオンリーワン
0196デフォルトの名無しさん2009/03/09(月) 16:44:46
RubyかPythonの.NET版が最初からWindowsに入ってますとかなると楽でいいのにな
C#やVB.NETはそれに近いことになってるのだけど
0197デフォルトの名無しさん2009/03/09(月) 16:45:34
WSHというものがありましてな
0198デフォルトの名無しさん2009/03/09(月) 16:46:22
>>194
たとえがおかしい。東京マラソンは3万人くらいだ。
全くの初心者でも、1年やれば、普通の人で5000位以内、
メタボで運動音痴な初老でも1万位にはなれるよ。
0199デフォルトの名無しさん2009/03/09(月) 16:47:14
>>194
順位とか関係なく,やりたいことが達成出来ればOKだと思うが。。

そうではなく純粋にプログラミングを
極めたいという崇高な目標を立ててるのだとしても
井の中の蛙になることにどれほどの価値があるのだろう。
0200デフォルトの名無しさん2009/03/09(月) 16:47:20
つVBScript JScript
0201デフォルトの名無しさん2009/03/09(月) 16:48:32
>>168 C#またはPython。
0202デフォルトの名無しさん2009/03/09(月) 16:48:55
>>198
C#は初心者までで38万人もいないかな?
0203デフォルトの名無しさん2009/03/09(月) 16:52:23
>>196
.NET4.0で入るよ
0204デフォルトの名無しさん2009/03/09(月) 17:02:26
Windows7に搭載されるのは.NET3.5.1(3.5SP1)だから当分は先
でも既に.NET3.5.1はXPやVista向けに自動更新で配布が始まってるから、.NET4.0も普及は早いかもしれない
0205デフォルトの名無しさん2009/03/09(月) 17:22:07
>>203
DLRが入るってだけじゃなくて?
0206デフォルトの名無しさん2009/03/09(月) 18:59:00
>>168
漠然とプログラミングしてみようと思ってるだけなら、
Windows なら C#、そうでなければJavaでいいんじゃない?
0207デフォルトの名無しさん2009/03/09(月) 22:09:21
>>161
どっちも似たようなことをしてるはずなのに、
どうしてそんなに差が出るんだ。技術力?
0208デフォルトの名無しさん2009/03/10(火) 01:18:52
>>207
似たようなことをしていないからだ
0209デフォルトの名無しさん2009/03/10(火) 01:21:57
Javaっていうと、携帯のアプリを思い浮かべるんだが、.net系で携帯用アプリって作れるの?
0210デフォルトの名無しさん2009/03/10(火) 01:32:15
作れるよ。
0211デフォルトの名無しさん2009/03/10(火) 02:36:14
>>207
OS握っているからある意味インチキできる。
0212デフォルトの名無しさん2009/03/10(火) 08:57:07
>>187
初心者にとっては、
ML は難しすぎる。
Haskell はコミュニティが悪すぎる。議論が難しすぎる。
Scheme はプログラムが読みにくい。
0213デフォルトの名無しさん2009/03/10(火) 20:25:33
>>208
じゃあJavaがC#を真似ればいいのに。

>>211
C#のランタイムが秘密APIをコールしてるとかそういう話?
0214デフォルトの名無しさん2009/03/10(火) 21:18:58
単純に言語仕様とJITコンパイラの設計の差だよ。
JavaがいまさらC#を真似るなんて無理。後方互換性を失ってしまう。
0215デフォルトの名無しさん2009/03/10(火) 21:31:41
>>214
言語仕様にそんな差があったっけ?
似たようなものだとおもうけど。
0216デフォルトの名無しさん2009/03/10(火) 21:39:45
コンパイラの性能に影響を及ぼすような言語使用の差があったっけ?という意味ね。
0217デフォルトの名無しさん2009/03/10(火) 21:45:42
>>215
どちらもネイティブコードを吐かない実行環境依存の言語だから、
文法だけを言語仕様と考えるのはナンセンスだと思うが。ランタイム含めての言語仕様と考えたほうが。
コードの見た目は似ていても、実行時の挙動は全然違うからね。CLRはかなり優秀。
0218デフォルトの名無しさん2009/03/10(火) 21:57:56
>>217
それって根性入れてJavaのランタイムとコンパイラを書き直せば
C#程度の速度は出るってことでしょ。だったら技術の差かねえ。
先行した分だけいろいろ捨てられないのは分かるが。
0219デフォルトの名無しさん2009/03/10(火) 22:01:57
>>218
.netってアプリのプロセスが終了してもフレームワークが居すわって、
コンパイル済みのオブジェクトをキャッシュしたままにするんじゃなかったっけ?
0220デフォルトの名無しさん2009/03/10(火) 22:05:21
それはjava
0221デフォルトの名無しさん2009/03/10(火) 22:12:02
まあ.netはOS作っているところが、かなり気合入れて自分のOS用に
作ったものだからね。最近は結構デスクトップでのjavaも頑張っている
みたいだけど。

しかし、やっぱり.netはxpでは若干もっさりするね。内部処理は
早いようだけど、結構パワーを使うGUI周りがもっさりしているみたい。
VISTAだとよくなっているのかな?
0222デフォルトの名無しさん2009/03/10(火) 22:18:37
>>219
じゃなかったっけ
C#のアプリの一回目の起動と二回目の起動じゃかかる時間が違うよね
0223デフォルトの名無しさん2009/03/10(火) 22:56:33
同じ映画を2回見ると、2回目が早く終わってしまうようなものか。
0224デフォルトの名無しさん2009/03/10(火) 23:15:43
一時的にディスクにネイティブイメージをキャッシュするだけで
javaと違って常駐したりはしないんじゃなかったっけ
0225デフォルトの名無しさん2009/03/10(火) 23:21:06
>>220
サーバープロセスと勘違いしてるだろ。
Javaのプロセスはそん行儀の悪いことはしない。
0226デフォルトの名無しさん2009/03/10(火) 23:36:09
>>221
XPではっていうか、単純にパソコンのスペックの問題じゃねーの?
0227デフォルトの名無しさん2009/03/11(水) 00:26:54
確かVISTAは、.netでの描画が改善されているって聞いたような。
でもまあ、確かにVISTA動くスペックなら、軽く感じるだろうね。
0228デフォルトの名無しさん2009/03/11(水) 04:28:06
右クリックメニューにリネームボタン追加する設定編集GUIと本体を作りたいんだけど
0229デフォルトの名無しさん2009/03/11(水) 08:15:23
ていうかOSが勝手にやってることを言語のせいにすんな
0230デフォルトの名無しさん2009/03/12(木) 07:43:34
素人ですが、将来的に社内で使う業務に特化した、Windows用アプリを
作りたいと思います。できあがったソフトを他のPCで使うときに、
ランタイムルーチンとかを入れる手間が少なく(簡単に導入できる)
できる言語はなんですか?
0231デフォルトの名無しさん2009/03/12(木) 07:54:17
>>230
Excel VBA
0232デフォルトの名無しさん2009/03/12(木) 08:04:29
>>230

ネイティブバイナリを吐ける処理系があるものなら何でもいい。

C, C++, Delphi, Haskell, Clean, Schemeなどなど。
0233デフォルトの名無しさん2009/03/12(木) 08:42:28
ドットネットを使うものは全部糞と覚えればいい。
0234デフォルトの名無しさん2009/03/12(木) 09:19:42
初心者のための、が初心者による、にいつのまにか変化してしまったようだ
0235デフォルトの名無しさん2009/03/12(木) 09:22:10
>>234
だよね。
0236デフォルトの名無しさん2009/03/12(木) 11:36:54
質問します。実は"Lisp Scheme Part25"スレに誤爆してしまったのですが、
あらためてこのスレで質問し直します。

組合せ問題、経路問題などの、記号処理問題をリストを使って解決するのに
相応しい言語を教えてください。
環境はできるだけ特定のOSに限定されない方が結構です。
グラフ表示は別の専門家が扱うのでロジック部分のみです。

0237デフォルトの名無しさん2009/03/12(木) 11:56:30
自分でリストを使って書かないといけないの?
グラフライブラリ使えば?

http://en.wikipedia.org/wiki/Graph_theory の一番最後辺りに列挙されてる。
ライブラリを先に選んだ方がいい。
boost::graph→QuickGraphみたいなポーティングもあるし。
0238デフォルトの名無しさん2009/03/12(木) 16:57:20
.netって糞なの?よく叩かれてるけど。
0239デフォルトの名無しさん2009/03/12(木) 19:22:36
クソじゃないけど初回起動がどうしても遅くなるから、
起動しっぱなしではないけどそこそこの頻度で使うような小物ツールには向かない
ngenやってもネイティブよりは遅くなっちゃう
0240デフォルトの名無しさん2009/03/13(金) 08:39:45
プログラミング言語同士を翻訳するソフトってある?
(CのコードをJavaに翻訳みたいな)
0241デフォルトの名無しさん2009/03/13(金) 09:12:04
>>240

GHCはHaskellのコードをCのコードに変換できる。
0242デフォルトの名無しさん2009/03/13(金) 09:24:19
>>240
P# はPrologをC#
0243デフォルトの名無しさん2009/03/13(金) 09:44:52
>>238
MSのイメージによるものが大きい。どうせネイティブで作ってもMFCやらwinapiやら使うくせにと思うけど。
あとネイティブだとマルチスレッド化されてないことが多いので、パフォーマンス云々は簡単に語れないんじゃないか?
重いと感じた.NETアプリなんてPaint.NETくらいだ
0244デフォルトの名無しさん2009/03/13(金) 14:44:56
cygwinでunixのコマンドを使えるようにしたいのですがどうすればいいんでしょうか?ググってもでてこないのでいいHPとか知っていたら教えてください。
0245デフォルトの名無しさん2009/03/13(金) 15:33:30
>>244
そのコマンドはインストールされてる?
pathは通ってる?
0246デフォルトの名無しさん2009/03/13(金) 15:34:06
cygwin入れたら使えるだろ
インストールの仕方もぐぐったらすぐにでてくる
お前の説明では何がわからないのかがさっぱりわからない
0247デフォルトの名無しさん2009/03/13(金) 20:30:00
>>244
おまいはもう使っている
0248デフォルトの名無しさん2009/03/13(金) 23:43:55
今年から大学1年生になるわけで、先んじてプログラミングを勉強しておきたいという者です。

まず初めにどの言語を学ぶべきかアドバイスが欲しいです。

ExcelVBAは高校の情報授業で極めて基礎的なことを学習済みです。
(簡単な演算、ループ処理など。発展としてモンテカルロ法などの問題解決法を少々。。。)
プログラミングで可能なことと言われて、ゲーム作成、数理問題の解決などしか思い浮かばないので、
目的といわれるとピンと来ないのですが、とりあえず簡単なゲーム作成が出来るのであればそれを目標に
やりたいと思っています。

環境については、現在はXP homeですが近いうちにVistaを1台新調する予定です。
Mac環境を整えるのは可能ですが、出来ればWindowsで学習したいと思っています。

出来れば易→難の流れで次に学ぶ言語まで見通しが立つと助かります。
0249デフォルトの名無しさん2009/03/13(金) 23:44:54
>>248
C#
02502482009/03/13(金) 23:55:43
>>249
VBは蛇足ですか?アプリケーション版と大差ないとは思うけれど。。。
0251デフォルトの名無しさん2009/03/14(土) 00:12:57
>>250
VBはもういらない。ついでにVB.NETもいらないと思う
目標は、とりあえずC/C++でいいかな

Windowsなら : C# → C → C++
PC-UNIXなら : Python → C → C++
0252デフォルトの名無しさん2009/03/14(土) 00:16:12
>>251
その流れだとCがものすごく異彩を放っている気がする。
C#からCとか、苦行だろ。
0253デフォルトの名無しさん2009/03/14(土) 00:18:06
>>250
C#なら今後他の言語に移る時あまり苦労しないはず。
色々な言語の要素がほどほどに入ってるから。

VB(.NET)とC#はよく似てるけど
VB系の構文にしがみつくのは時期的に損だと思う
■ このスレッドは過去ログ倉庫に格納されています