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

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

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

質問者の方へ
どのプログラミング言語を最初に覚えるべきかは
なぜプログラミングを始めたいのか、何を作りたいのかによってまったく変わってきます。
なんとなく、でもかまわないので動機、用途、使っている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

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/
0331デフォルトの名無しさん2008/06/04(水) 22:44:24
別にC#で良いとおもうよ
0332デフォルトの名無しさん2008/06/04(水) 23:21:49
>>330
C#、Delphi、C++Bulderどれでも好きなのを。
その経歴だとDelphiは外してもいいかもしれんが。
0333デフォルトの名無しさん2008/06/04(水) 23:26:50
ておりあさんは初めての人にはhaskellがいいっていってたよ
0334デフォルトの名無しさん2008/06/04(水) 23:50:16
知識なし(ネットぐらい)
おれを成長させて
まずなにをすればいい?
0335デフォルトの名無しさん2008/06/04(水) 23:54:05
まず何をしたいのかが
0336デフォルトの名無しさん2008/06/04(水) 23:57:29
まず目標を決める
大雑把にどんなものを作りたいのか
エディタ?掲示板?ゲーム?
03373342008/06/05(木) 00:26:59
よくわかんないけど
プログラマになりたい
0338デフォルトの名無しさん2008/06/05(木) 00:34:20
や め て お け
03393342008/06/05(木) 00:37:31
簡単そうなWeb系がやりたい
なにしたらいい?
0340デフォルトの名無しさん2008/06/05(木) 00:51:09
>>339
Java
0341デフォルトの名無しさん2008/06/05(木) 01:12:24
もしくは、PHP Perl Ruby Python の何れか
0342デフォルトの名無しさん2008/06/05(木) 01:41:46
Rubyが流行ってるようだけどその理由ってなに?
0343デフォルトの名無しさん2008/06/05(木) 01:43:47
日本で流行ってる(?)のはやっぱ日本人製だからじゃない?
まあ、使いやすいってのもあるんだろうけど
使った事無いから詳しくは知らない
0344デフォルトの名無しさん2008/06/05(木) 01:48:38
>>342
Ruby on Rails が使いやすかったからじゃない?

>>343
今は日本だけじゃないと思うけど。
03453342008/06/05(木) 01:50:17
>>340,341
ありがとう
真ん中えらんで、Perlやります
0346デフォルトの名無しさん2008/06/05(木) 01:51:13
よりにもよって一番古臭いの選ぶのかよw
0347デフォルトの名無しさん2008/06/05(木) 01:56:12
>>343-344
なるほど、日本発ってことでなんか入りやすいのと
いいフレームワークがあるからってことですね
0348デフォルトの名無しさん2008/06/05(木) 02:07:22
Ruby信者に言わせると、文法が簡潔で強力なのもあるんだけどね
そもそもヒットの起爆剤になったRuby on Railsは、
Rubyの柔軟な記述力なくしては書けなかったとも言われる

ほとんど使ったことがないんだが、
おそらくPythonもほとんど同じくらいの表現力を持ってる
ただ、個人的にはRubyのほうが使いやすかった。この辺は好みかもしれないし、そうでないかもしれない
0349デフォルトの名無しさん2008/06/05(木) 02:14:56
RubyとPythonってパフォーマンスには差があるんだろうかね
0350デフォルトの名無しさん2008/06/05(木) 03:36:14
大学の講義でC、Javaと学んできて今もその2つを学んでいる最中なのですが
できる人とできない人にわかれていくもので自分はできない人の部類に入ってます
これから上達していくためにはどういう勉強をしていけばよいでしょうか?
今はひたすらプログラムを書いてみるっていう勉強法で勉強しています
使っている参考書はCは指定参考書がないので明解C言語入門編、Javaは指定参考書のやさしいJava第3版です
0351デフォルトの名無しさん2008/06/05(木) 03:57:30
文法を覚えたいなら例に載ってるような奴でも
目写ししながら書いて書いて体で覚える
プログラム的な考え方を身に付けたいなら色んな問題を解いてみる

まあ、どっちにしろ色んな問題に挑戦すれば良いんじゃないかと
その辺は普通の勉強と変わらないよ
0352デフォルトの名無しさん2008/06/05(木) 04:04:45
>明解C言語入門編
やさしいJavaは分からんが、これは良い本。信用していい
Cの基本で必要なことは、ほぼ全て書いてあるる

CとJavaは基本的な構文では似ている言語。重なる部分は多いはず
0353デフォルトの名無しさん2008/06/05(木) 04:28:10
大学の講義なら別にそれほどできなくても上達しなくてもいいんじゃね
1年の教養の授業で教科書1冊きちんと理解してることのほうが稀だろ
それと同じようなことだ

なんかヘタにPC使うもんだから目が曇ってしまう人がいるんだが
小中学校でリコーダー吹くのに入門書買ったりしないだろ
0354デフォルトの名無しさん2008/06/05(木) 04:55:07
>>349
Rubyのほうが確実に実行速度は遅い
よく言われるが、コンマ1秒の遅れが致命的になるようなシステムにRubyを使うのはただのバカ
0355デフォルトの名無しさん2008/06/05(木) 05:19:25
そんなもんにスクリプト言語を使うのはただのバカ
0356デフォルトの名無しさん2008/06/05(木) 07:06:42
スクリプト言語だから遅い、って言う人は、抽象度の低い
アプリしか作ったこと無いんだろうな・・・
0357デフォルトの名無しさん2008/06/05(木) 09:43:33
でも、コンマ1秒の遅れが致命的になるようなシステム、の話だぜ。
0358デフォルトの名無しさん2008/06/05(木) 09:53:32
リアルタイム保証が必要なら、部分的なハード化は必要。
0359デフォルトの名無しさん2008/06/05(木) 09:58:51
コンマ1秒が致命的になるシステムってなんだ?
0360デフォルトの名無しさん2008/06/05(木) 10:01:39
ゲームとかか
0361デフォルトの名無しさん2008/06/05(木) 10:08:56
ゲームの種類でも変わるな。

シューティングとかアクションは無理だろ。
ハード(PCとか)の処理能力が高ければ
そこそこいけるだろうけど。
あとは解像度を下げるか、オブジェクト数を減らすか。
0362デフォルトの名無しさん2008/06/05(木) 11:38:09
どうせTwitterのこと言ってんだろ
0363デフォルトの名無しさん2008/06/05(木) 15:19:27
Forth始まったな

Adobe高速JavaScript実装、バイトコードにForthを採用
http://journal.mycom.co.jp/news/2008/02/07/011/
0364デフォルトの名無しさん2008/06/05(木) 16:38:14
もともと、Adobeの作ったPostScriptがForthだからな
0365デフォルトの名無しさん2008/06/06(金) 03:32:18
どれやったらいいかわからんよ
おまえらきめてくれ
JAVA  C  PHP  
0366デフォルトの名無しさん2008/06/06(金) 03:34:56
>>365
つJAVA
0367デフォルトの名無しさん2008/06/06(金) 05:04:06
>>365
つC
0368デフォルトの名無しさん2008/06/06(金) 05:09:13
JAVA、C、PHPは決めづらいな
どれも初心者向けとして良い言語じゃないかな
0369デフォルトの名無しさん2008/06/06(金) 05:12:13
JAVAは定番な言語でかつ中庸でなおかつ標準でできることがたくさんある
Cも定番でかつ敷居が低く初心者向け
PHPもサーバーの問題さえクリアすれば後は敷居が低く、初心者向け
0370デフォルトの名無しさん2008/06/06(金) 05:14:47
初心者向けと言うより情報が溢れてるから
調べやすくて良いよってのが正しい気もするけど
個人的には
0371デフォルトの名無しさん2008/06/06(金) 05:50:49
>>365
何やる気なんだよ
0372デフォルトの名無しさん2008/06/06(金) 08:55:06
個人的には
Ruby(Python) -> Java -> C/C++
がういいと思う。
0373デフォルトの名無しさん2008/06/06(金) 09:35:15
>>369
すげぇいい加減だな。
0374デフォルトの名無しさん2008/06/06(金) 11:51:49
>Cも定番でかつ敷居が低く初心者向け
定番はともかく、それ以降はないわ…
0375デフォルトの名無しさん2008/06/06(金) 12:32:27
純粋なCで制御構造などの基本を学ぶぶんには資料も豊富で学びやすい、という点は真実だな
それ以上のことは言語レベルでサポートしてくれないから茨の道だが

C言語を修めなければならないというのとC言語を最初に学ばなければならないというのは全く別だ

あと、完全に用途による
事務仕事をプログラムで自動化して効率的にする勉強をしたいという人に勧めるのはCでもJavaでもなくVBAだ
0376デフォルトの名無しさん2008/06/06(金) 12:52:40
スクリプトのボトルネックをCで書いた.so, .dllのモジュールで解消できる程度には
使えた方がいいかもしれないな。
0377デフォルトの名無しさん2008/06/06(金) 12:53:15
C言語覚えればゲームの構造とか簡単に作れちゃうの?
ギャルゲ形式なんかは素人脳で仕組み考えただけで命令が単純そうだし余裕?
0378デフォルトの名無しさん2008/06/06(金) 13:04:03
C言語覚えてもテキストファイルの読み書き程度しか出来ない。
ゲームの絵を描いたり音を出したりというのは全く別の知識が必要。
確かギャルゲ専用ライブラリとかあったよな。
0379デフォルトの名無しさん2008/06/06(金) 13:07:03
あと開発ハードによってもかなり変わるよね。
0380デフォルトの名無しさん2008/06/06(金) 13:07:25
命令が単純そうっていうのは、単に絵を出すとか、そういうイメージだろうけど
単に絵を出すっていうのも、Cで書くとそれなりに大変な作業だよ
0381デフォルトの名無しさん2008/06/06(金) 13:17:07
今じゃ2Dアドベンチャー方式でもDirect3D使った方が楽だからなぁ‥‥
0382デフォルトの名無しさん2008/06/06(金) 13:18:23
自分がギャルゲーの何を作りたいか次第。
コンテンツを作成してゲームの形に整えたいだけなら
わざわざCを覚えなくてもスクリプト言語形式のフレームワークがあるから
よくあるギャルゲーの形くらいにはそんなに苦労せずに作れる。
0383デフォルトの名無しさん2008/06/06(金) 13:36:16
画像・動画・音を用意して後はC言語等のプログラムで組み上げればいいのかなと思ってたけど、ちょっと違うみたいね・・・
よくあるギャルゲ形式にオリジナルのギミックとか入れられたら面白そうだなぁとか思ってるんだけど
今とにかく全くの無知だからまず図書館で入門書を借りてみようかなと
0384デフォルトの名無しさん2008/06/06(金) 13:52:32
「よくあるゲーム」すら作れないのにオリジナルとか片腹痛いわー
とか言う

とりあえず、プログラムはイラストも背景も効果音もBGMも文章もシナリオも一切作らない
それらは全て自前で用意しなければならない
ゲームの場合、プログラムの比重は10のうち1か2程度で残り8は全部コンテンツだ
だからこそ出来合いのスクリプトエンジンが多数存在するわけで
「ADV ゲーム 作成」とかでぐぐって既存のゲーム作成ソフトを試すのがとりあえず最初かと
0385デフォルトの名無しさん2008/06/06(金) 13:53:18
そういう用途なら NScripter や吉里吉里 を使うのが近道。
Cで実装するには相当の覚悟と努力と時間が必要で、
遊びや趣味で作りたいってだけの人にはお勧めしない。
0386デフォルトの名無しさん2008/06/06(金) 14:01:09
仕事で作ってる人だってゼロから作ってはいないと思われ
たいていの場合は内製や外製の出来物のエンジンを使ってるはず
0387デフォルトの名無しさん2008/06/06(金) 14:03:53
あえてCやC++を選んだりしたらゲームを作るよりツクールを作る作業になりそうだな
0388デフォルトの名無しさん2008/06/06(金) 14:04:31
まーなー

でも案外ゲームエンジンは作れなくはないぜ。
むしろその上で動く演出だとかを考えるのがゲームとしては大変。

0389デフォルトの名無しさん2008/06/06(金) 14:05:14
>>387
ゲームメーカーは自社用ツクール持ってるようなものだよ。

0390デフォルトの名無しさん2008/06/06(金) 16:37:35
ギャルゲーのクレジットに、プログラムとスクリプトがあったけど
プログラム→吉里吉里みたいな土台をつくる
スクリプト→物語の構成を組み立てる
ってな感じなのかな。
0391デフォルトの名無しさん2008/06/06(金) 16:39:55
作られた土台を使って演出とか作った人じゃないのか
0392デフォルトの名無しさん2008/06/06(金) 16:41:08
>>390
それはプログラムがスクリプトを処理するタイプの場合。

スクリプトを嫌う場合は、専用ツールとか作ってバイナリのデータを出力させて
プログラムでそれを読み込んだりする。
0393デフォルトの名無しさん2008/06/06(金) 16:42:48
その場合のスクリプトは台本進行という意味のスクリプトという可能性が大なんじゃなかろうか
まあ、所謂ツクールを作った人とツクール上でプログラム組んだ人の違いかもしれんが
0394デフォルトの名無しさん2008/06/06(金) 16:44:14
まあ吉里吉里あればプログラマーはいらんからな。
スクリプト書く人は要るけど
0395デフォルトの名無しさん2008/06/06(金) 17:05:59
いま話に出てきた物事に関して、一番スタッフが多くなる体制は、
「プログラマ」がエンジンを作って、「シナリオライター」がシナリオ(オール自然言語ね)を書いて、
「スクリプター」がシナリオをそのエンジン用のスクリプトにする、というパターンかな。

でも「シナリオライター」と「スクリプター」は同じ人物ってことが結構多いよね。
外部から有名ライター呼ぶ場合は別だろうけど。
>>390のゲームのスクリプト担当が何をどこまでやっているかは、クレジットの中に
「シナリオ」が他にいたかどうかで決まると思う。居ないなら、多分シナリオもその人が書いてる。
0396デフォルトの名無しさん2008/06/06(金) 17:09:38
>>395
これはエロゲの話だけど基本的なシステムはノベルゲーも同じなので読め
http://www.geocities.jp/bouasan2004/
0397デフォルトの名無しさん2008/06/06(金) 17:14:32
>>396
そこは読んだこと無いけど、俺は別のところで今まで集めた「実例」の話をまとめてしてるんで、
もしそこを読んで、俺の話と違うから俺の言ってることが間違いだと思ったなら、それは早とちりだと思う。
色んな例があるんだろう。
03983652008/06/06(金) 23:36:09
JAVAの本買ってきた
今年中に終わるかな・・・
0399デフォルトの名無しさん2008/06/07(土) 21:47:52
C++の本買ってきた
まずは2D横スクアクション→行く行くは3D格闘作りたい。
仕事の合間に頑張るよー。
0400デフォルトの名無しさん2008/06/07(土) 21:51:35
400
0401デフォルトの名無しさん2008/06/07(土) 21:52:24
401
0402デフォルトの名無しさん2008/06/07(土) 22:53:29
動画を扱うには?
フィルタ
0403デフォルトの名無しさん2008/06/08(日) 00:12:01
DirectShow
0404デフォルトの名無しさん2008/06/08(日) 02:02:21
C++ 難し杉ました(><)
0405デフォルトの名無しさん2008/06/08(日) 02:08:37
本気でやるなら最初の言語としては意外とCASLがいいかもって思う
反対意見も多いだろうけど
0406デフォルトの名無しさん2008/06/08(日) 13:35:34
>>405
俺はほぼ反対。
CASLは機械寄りのことを知りたい人の入門にはいいかもしれない。
けど、初めての人は既存のソフトを見て
アレがつくりたいっていうのを持ってると思うし、
それはCASLじゃ実現できないだろうから。
0407デフォルトの名無しさん2008/06/08(日) 13:40:55
>>404
経験上
いきなりC++なら、正直無茶としか。他言語の経験がないならまずC
C++はただでさえややこしい言語ってことで有名なわけで、ワンステップ踏まないと大変だと思う
0408デフォルトの名無しさん2008/06/08(日) 14:23:47
仮にC++やるにしてもiostreamは窓から投げ捨てた方がいいと思う。
0409デフォルトの名無しさん2008/06/08(日) 14:26:29
でもC#にくるとstream使えないといろいろ厳しいぞ
0410デフォルトの名無しさん2008/06/08(日) 14:31:54
>>406
自分はCASLと本物のアセンブラのどちらを先にやったのかは覚えていないけど
ひょっとすると生のマシン語が先だったのかもしれないが
それ以降は新たな言語の習得に困ったことはない、すぐに理解できるようになった
だから、本気の人ははじめのうちにアセンブラレベルの言語に触れておくと後が楽だと思ったんだ

でもまぁプロでないのなら最初はなんとなく始めるだろうからCASLは選べないか
0411デフォルトの名無しさん2008/06/08(日) 14:40:27
>>410
>それ以降は新たな言語の習得に困ったことはない、すぐに理解できるようになった
ALGOL系の言語はどれも似たようなもんだし、
ひとつ知ってれば、アセンブラを知らなくてもすぐに理解できるよ。
0412デフォルトの名無しさん2008/06/08(日) 14:46:41
>>409
C#のstreamってC++のiostreamよりDelphiのTStreamじゃ?
0413デフォルトの名無しさん2008/06/08(日) 14:56:13
iostreamの何が気に食わんの?
どうすりゃよかったの?
0414デフォルトの名無しさん2008/06/08(日) 15:11:02
format が欲しい。
boost 使えばいいんではあるが
0415デフォルトの名無しさん2008/06/08(日) 15:27:51
初心者にはわけわかめな会話が続いている w
0416デフォルトの名無しさん2008/06/08(日) 16:04:43
basic_iosを継承しただけでiostream
0417デフォルトの名無しさん2008/06/08(日) 17:32:42
マニュピレータうぜぇ
0418デフォルトの名無しさん2008/06/08(日) 20:49:41
           ,r‐ 、           
   z'Zr─〜''''彡 ̄ ̄⌒ミーv─ -tf'.z
      ̄`'''''─ム/'⌒' ⌒ヽ_>'''  ̄ ̄ 
         /  彡、 ノノ:::  
        / _,;彡'´⌒(´ ミ}::: 
    _/ フ::::      Y ヽ::: 
  (⌒こ))≧:::        jfう》::: 
    ̄::::::::::        (_ノ:::::: 
               ::::::
0419デフォルトの名無しさん2008/06/08(日) 23:28:14
ひとまずHalloWorldはマスターした。
0420デフォルトの名無しさん2008/06/08(日) 23:28:46
MessageBox.Show("Hello World!!");
0421デフォルトの名無しさん2008/06/08(日) 23:31:16
それはなんだ、powershelか?
0422デフォルトの名無しさん2008/06/09(月) 00:27:31
基本的なアルゴリズム覚えてから
勉強したほうがいいかな?
0423デフォルトの名無しさん2008/06/09(月) 00:28:46
>>422
目標を掲げつつ、言語とアルゴリズムを学ぶといいと思うけど。
作る物で使っていくアルゴリズムも変わってくるし。
0424デフォルトの名無しさん2008/06/09(月) 00:44:45
机上で覚えてもわけわからないだろ。
プログラミングなんて実際に動かして何ぼだし。
0425デフォルトの名無しさん2008/06/09(月) 00:54:52
何か一つはあるていど言語を使えないと、
アルゴリズムの実例(コード)を見ても理解しにくいだろうな。
0426デフォルトの名無しさん2008/06/09(月) 05:04:14
ひとまず本に付いてくるサンプルゲームのプログラムを
出来るだけシンプルなモノになるまで削除して実行
何を消したら何が動かなくなるのかってのを1つずつチェックしてる。
0427デフォルトの名無しさん2008/06/09(月) 06:20:57
>>426
リバースエンジニアリング的でいいねぇ
0428デフォルトの名無しさん2008/06/10(火) 01:08:14
とりあえず、基礎として、まじめに書かれたC言語の入門書を1冊マスターすべきでは?

ヒープ、スタック、グローバル変数の違いが分からない状態で、コンストラクタだのディストラクタ、コピーコンストラクタ、ガーベッジコレクションなど言われても、何のことだか理解できないのでは?

Cの入門書を1冊マスターした後、好きな言語を選べばいいと思う。
0429デフォルトの名無しさん2008/06/10(火) 10:32:58
Cの良質な入門書を教えてくれ
0430デフォルトの名無しさん2008/06/10(火) 11:32:52
>>429
柴田望洋「明解C言語 入門編 」
■ このスレッドは過去ログ倉庫に格納されています