トップページ⇒tech
322コメント97KB

      プログラム修得順序     

■ このスレッドは過去ログ倉庫に格納されています
0001桃尻女NGNG
最適なプログラム修得順序ってありますか?
やっぱりCが重要だからCからになるのかな?
0002デフォルトの名無しさんNGNG
HTMLからに決まってるだろ!
もしくはPASCAL
0003デフォルトの名無しさんNGNG
をいをい、HTMLってプログラム言語なのか?
0004デフォルトの名無しさんNGNG
>>3
違うともいいきれないぞ。
0005マジレ酢NGNG
PERL > C > C++ >JAVA > LISP
0006デフォルトの名無しさんNGNG
BASIC -> PASCAL -> アセンブラ -> C -> C++ -> JAVA

BASICはVisualでないやつ。プログラムってこんな感じって
掴める程度でよい。PASCALはソース編集、コンパイル、リンク
の一連の流れ、構造化やモジュール開発を理解。

アセンブラではコンピューターが実際にどのように動作するかを
理解。プログラムカウンタとかスタックポインタとか
フラグレジスタとか・・・後のCの学習で役立つ。
(CASLシミュレータ程度、Z80でも86系でも応用可能)

Cはいずれにしても通っておくべき。

そしてC++,JAVAでオブジェクト指向開発を理解。
(PASCALの所がDelphiであればそこで少しやっておくのもいい。)
0007出来ない子NGNG
頭のいいヤツ/悪いヤツ、
理系/文型 etc...で、
それぞれ見合った習得順序は変わってこないか?
0008デフォルトの名無しさんNGNG
取りあえずこの業界で飯が食えればいいと思う奴向け。
VB > SQL92エントリーレベル (終了)
その手の入門書は腐るほど有る。
0009デフォルトの名無しさんNGNG
趣味の段階からゆっくりやるなら6の順番でいいんでないの?
自分も似たようなもんだし。
0010デフォルトの名無しさんNGNG
ttp://cruel.org/freeware/hacker.html

初めての人は"Python"から始めた方が良いって↑のサイトに書いてあったんですけど
>>6さんが書いた"PASCAL"から始めた方が良いのかな・・。

うーん・・わからない。
0011デフォルトの名無しさんNGNG
やれるところからやれよ
「不向き」だと気づいた時にもすぐ戻れるから
0012デフォルトの名無しさんNGNG
HTMLがプログラム言語?
001310NGNG
>>11
なるほど。
じゃあPythonから始めてみようかな。
暇があったら入門書でも探してみよう・・。
0014デフォルトの名無しさんNGNG
俺はこんな感じです
basic(?忘れた)->C->ASM(86)->C++->VB(2〜4)->delphi/BCB(1〜3)->perl(5)->Scheme(R4RS)
(VBやdelphiは主に言語じゃなくてGUI作成ツールとして使ってただけだけど。)
今Scheme勉強中・・
0015デフォルトの名無しさんNGNG
Pascal->Python, Java->C,C++,VB
Pascal はCに近くて設計もすっきりしているのでお勧めです。

Python はドキュメント不足ゆえに、
Java はOOPを強制されるので、
初学としてはお勧めできません。
(以上の点が気にならなければ、最初でも良いでしょう。)

C,C++,VB は実践的ですが泥臭いです。
習得時間があるなら、最初にアレを学ぶのはちょっと。
0016デフォルトの名無しさんNGNG
コンパイラ、インタプリタ類はVectorなどからお好きなものを。
ttp://www.vector.co.jp/vpack/filearea/dos/prog/index.html
ttp://www.vector.co.jp/vpack/filearea/win/prog/index.html
001710NGNG
どこもかしこもUNIX、Linuxでうんぬん・・って書いてありますね。
Windowsじゃ駄目ナノカ〜?

Pascalはお勧めです・・か。
なるほど。

Pascal、Python・・どっちにしよう・・・(鬱
0018デフォルトの名無しさんNGNG
>>10
awk
0019デフォルトの名無しさんNGNG
はじめから複数の言語を覚えるつもりでいるより、
まずは一つの言語を極めたほうが良くないか?
0020デフォルトの名無しさんNGNG
いんや、広く浅く、そして最後に自分の一番得意だと
思ったもので”深く”だ。
1つの言語だとその仕事が来なくなった時のつぶしがきかん。
視野も狭くなる。
0021デフォルトの名無しさんNGNG
つーか、極めるって言い出すと、いつまでかが不明確すぎないか?
0022デフォルトの名無しさんNGNG
順序はどうでもいいから、まぁ、なんか始めろや
0023デフォルトの名無しさんNGNG
取りあえずメモ帳で"hoge.vbs"ってファイル名付けて
次のリストを打ち込んでみよう。

showapp("Excel.application")
showapp("Word.application")

sub showapp(appname)
dim app
set app = CreateObject(appname)
app.application.visible = true
msgbox appname & "を開きました"
app.application.quit
set app = nothing
end sub

WSHの情報は以下から漁ってくれや。
ttp://www.microsoft.com/japan/developer/scripting/
0024デフォルトの名無しさんNGNG
WSHってさぁ、ここでは時々見かけるけど実際に使っているところ見た事無いんだけど。
みんな使ってる?
0025デフォルトの名無しさんNGNG
ベーマガにはWSH+DirectXのリストがたまーに載ってる。
まあScriptingEngineはASPでの利用が主体だけどな。
0026デフォルトの名無しさんNGNG
ウイルスさんは良く使ってるらしいよ。
・・・・・アメリカ人の。
002710NGNG
PythonもPascalも入門書らしきものはどこにも無かった。

仕方が無いからC言語のスタートブックみたいなものを購入。
「計算してみよう!」ってとこまでやってみたが まだまだわからんちん。
0028デフォルトの名無しさんNGNG
JavaScriptをおすすめ。
0029デフォルトの名無しさんNGNG
そんなプログラミング工学をやるような方法を取る必要なし。

C -> スクリプト系言語(Perl or Ruby or Python) -> Java or C++

で一年コースだ。
0030デフォルトの名無しさんNGNG
Pascalなどというくだらないものを薦める奴は逝ってよし。
学習のし易さ優先だ。
0031デフォルトの名無しさんNGNG
>>30
netasure dakara doudemoiiyo
0032デフォルトの名無しさんNGNG
>>29
変な順番。
0033デフォルトの名無しさんNGNG
HTML > Perl > Java > ASM
0034デフォルトの名無しさんNGNG
前の3つまではWebがらみでなぜ最後にASM ?
0035デフォルトの名無しさんNGNG
ASM = Aphrodisic Synchronized Merge
0036デフォルトの名無しさんNGNG
最大公約数を取るとCは入ってるからいいんじゃない。
0037デフォルトの名無しさんNGNG
なんかさー、この板って言語は何取得すりゃいいのかとか、
そんな質問多いけどさ。

なんか、幸せ、平和でいいなぁーーーって嫌味の一つもいいたく
なるね。

いきなり、やったこともねぇC++で何か作れ、一ヶ月で仕上げろ、
とか、Javaでこれ作れ。作れなきゃ、こっちの期待を裏切った
ということでよろしく。
なーんて、言われて、死ぬ気で一ヶ月でやってる俺だっているんだ。

最前線の特攻兵に比べたら、お前らなんてただの白ブタだ!
誰かに食われて胃袋でねむってろ!
0038デフォルトの名無しさんNGNG
てめぇらクソに言っておく。趣味、研究者になりてーのか、
コードの戦士になりてーのか!
言語なんかのんびり選択してる暇があったら、覚悟をきめろ!
0039デフォルトの名無しさんNGNG
おっ、マターリしてるところで、まっとうな意見が出たのでsage
0040デフォルトの名無しさんNGNG
>>37,38
このスレ最高のクソレス。
0041デフォルトの名無しさんNGNG
>>37,38
「俺は地獄を見てるんだぜ」とか言いたがる奴うざい。
そこ豊富なツワモノなら、犬みたいに
吠えてないで、もっと渋い魅力を見せてちょ。
0042デフォルトの名無しさんNGNG
1は難易度の順番が知りたかったんじゃなくて、
効率的な言語習得の順番を教えて欲しかったんだろうけど、
だれも答えてない(ワラ

俺的にはこういう順番。
VB>C>C++>Perl>Java>ASM(細かいものは除く)
随分と遠回りしたと思う。
だけど肝心なのは設計や構造のほうだから
言語がどうのこうのってのはあんまり気にしなくてもいいんじゃない?
習得する事が目的になってるのってあんまりいい子とじゃないと思う。
まず目的ありき。その次に言語が出てくるわけでね。
だから37がいってることは間違ってないと思う。

#必要になればどんな言語の構文、その他もろもろ(こっちの方がでかいけど)
#も覚えられる。やる気さえあればどんな人にも。多分・・・
0043デフォルトの名無しさんNGNG
>>38
趣味と研究は同格かよ。悲しいな。
0044デフォルトの名無しさんNGNG
BASIC→アセンブラ→C→Java→C++
うちはこうだった。
どれもスムーズに移行できましたよ。
0045デフォルトの名無しさんNGNG
ドキュメント書き用日本語→ドキュメント読み用英語→あとは何でも。
0046デフォルトの名無しさんNGNG
私の古いPCでは負荷がかかったらフリーズしそうなので
古いCPUでもできるプログラム教えて下さい
0047デフォルトの名無しさんNGNG
>46
アセンブラ
0048デフォルトの名無しさんNGNG
ネッター→2チャンネラー→厨房→カツ丼
0049デフォルトの名無しさんNGNG
やべえカツ丼食いたくなってきた。
0050デフォルトの名無しさんNGNG
>>49
なぜやばい?
0051デフォルトの名無しさんNGNG
なんでみんなCに至る過程が長いの?
いきなりCでいいじゃん。
0052FM-7で童貞すてましたNGNG
BASIC→アセンブラ→C→C++→Java
>>51 厨房のころは自分のマシンで動くCコンパイラが無かったんだよ。
0053デフォルトの名無しさんNGNG
>>51
はじめてのC 言語はちょっとね・・・
ポインタあたりでつまづくのが関の山。
0054デフォルトの名無しさんNGNG
>>53
世間一般の人間は君が思うほどバカじゃない。
0055デフォルトの名無しさんNGNG
いいえ、バカばっかりです。じゃなきゃVBやCOBOLなんてとうの
昔にすたれてるでしょ。ビジネス系だと特にクライアントからの
強い要請が無い限り敬遠されます。

みんなポインタがわかるんならJavaやC#なんて作ろうと思わんて。
0056デフォルトの名無しさんNGNG
>>27
地方で大きな書店がなかったら通販だ。
ttp://www.amazon.co.jp/
ttp://bookweb.kinokuniya.co.jp/

文法がある程度理解できたらアルゴリズムとデータ構造についての
本も早い時期に読んでおいたほうがいい。
0057デフォルトの名無しさんNGNG
UNIX環境なら、shell。
Windows環境なら、VBscript。
てきとーに答えてみました。
0058デフォルトの名無しさんNGNG
fortran > Pascal > COBOL > VB > shell > POWER COBOL
という俺の言語取得順序を評価してくれ!!
0059デフォルトの名無しさんNGNG
>>58 典型的なメインフレームメンテナンス要員だな
パスカルが救いだけど
0060デフォルトの名無しさんNGNG
MSX-BASIC -> += Z80ASM -> C -> += C++ -> += WinSDK -> += MFC
(最後の方は言語じゃないけど)
ここまでは良かったが…

Perlを覚える -> 楽なのでついPerlの仕事を選んでする -> C/C++から遠ざかる
-> 不安になりC/C++で組んでみる -> まだできる -> 安心 -> Perl浸り
-> C/C++の知識の陳腐化に気づく -> Perl厨にダウングレード

激鬱
0061デフォルトの名無しさんNGNG
SICPを読むとどんな言語でのプログラミングでも、読み書きが楽になります。
今は、Webでただで読めるしおすすめです。言語はScheme。アメリカの大学
では、Schemeがプログラミング入門用言語として、Pascalを淘汰しつつあ
るようです。

SICP全文
http://mitpress.mit.edu/sicp/full-text/book/book.html

日本語訳も出版されていますが、Webでは読めません。
0062いつでもどこでも名無しさんNGNG
英一君の訳ってひどいって聞くけどどうよ>>61
0063デフォルトの名無しさんNGNG
>>62
SICPは、第2版の原書と翻訳の両方持っていますが、よほど英語が苦手な
人以外は、翻訳は買わない方がいいと思います。硬直した日本語で、やさ
しいことも難解に感じてしまいます。翻訳者ぐらいの年輩の方なら、抵抗
がないかもしれません。
0064デフォルトの名無しさんNGNG
Cでプログラムのことと、コンピュータの仕組みを学び
C++で地獄を見て
Javaで救われる

 っていうのが良いプランだと思うけどな。
#俺はJavaで地獄見てる最中だけど。
0065デフォルトの名無しさんNGNG
>>55 は、
Cのポインタが理解できず、悪戦苦闘の末、ようやく理解できた!!
その時の感動のあまりポインタ至上主義者になったと思われる。
0066デフォルトの名無しさんNGNG
ポインタは何処かの入門書で「ポインタは難しい」と連発して、
初心者はそれが困難なものだと頭に植え付けられた。と言うことが発端とされる。
0067デフォルトの名無しさんNGNG
>64
Javaは簡単です。地獄見れるほどのものではありま千まさお。
0068デフォルトの名無しさんNGNG
こないだCのポインタに的絞った本が
出てなかったっけか?

そうそう。C言語 ポインタ完全制覇。あれだ。

俺、汗から入ってはないけど、ポインタは別に違和感無かったな。
自然じゃん。
逆にどんなデータもメモリ中でコピぺ(笑)しないとならんのは
うんざりする。「同値じゃなくて同一」を扱いたいときは多いし。
MSX Basic捨ててCに逝った。

ポインタの理解でハマル奴ってのは、
メモリの具体的イメージ(汗)以前に
値は「どっか」に記憶しなきゃならんという
当然の概念をまず理解してねーんじゃないかと思う。
0069>68NGNG
そいう本かなり昔からあるみたいだけど。
アセンブラやった方が早い。
0070デフォルトの名無しさんNGNG
>>69
ポインタ主題の本は以前もあったけど、
完全制覇みたいな「ノリ」で書いてる本って
あんまり見た記憶が無いなあ。

ところで今みたいな仮想メモリの時代になっても
汗やったほうが理解早いんでしょうか?
まぁEmbeddedに戻る(?)という手もあるけど。
007169>70NGNG
仮想メモリ理解するってのなら、
なおさらやっといた方が良いと思うけど?
高級言語やっただけで理解出来るとは思えない
0072デフォルトの名無しさんNGNG
Javaは互換性がない地獄です>>67
0073デフォルトの名無しさんNGNG
Cで基礎を学び、C++で地獄を学び、
Javaで救われたと思ったらさらに地獄にはまり、
C♯で救われる。
間違ってもVB厨房にならないようにしたいよね。
0074デフォルトの名無しさんNGNG
C# はすくわれるのか。そうかな。
0075デフォルトの名無しさんNGNG
>>67 >>72
 特にサーブレットエンジンの互換性のなさ

#アプレットの時の、ブラウザの互換性のなさの悪夢再び。
0076デフォルトの名無しさんNGNG
>>75
べつにサーブレットエンジンに互換性がなくてもそれほどこまらないべ
アプレットのときは同じバイナリでIEとNNの各バージョン同時に
相手にしなけりゃならなかったからつらかったけど。
サーブレットの動作はサーバー内で閉じてるし、
たとえばSQLの互換性問題で困ったことあるかいや?
0077デフォルトの名無しさんNGNG
ポインタが難しいというより、アスタリスクが見難い。
もっと他の記号にしてくれればなぁ。
ずっとCだけなら慣れるけど、他の言語やった後久しぶりに見ると
やっぱり見難い。
0078デフォルトの名無しさんNGNG
>>71
ああ。逆っす。
仮想メモリの担い手の話じゃなくて、
恩恵受けるお客サン(笑)の側の話。
単なるのっぺらぼーなメモリ空間があるだけ。
0079デフォルトの名無しさんNGNG
>>10

今さら10にレスするのも遅いけど。。
あんな似非クラッカー養成HPはアテにするな。
0080デフォルトの名無しさんNGNG
◆超初心者コース◆

LoGoライター →HTML→JavaScript→<<完璧&終了>>

ロゴライターは亀さんのやつね。
まえへ 10
とか入力するやつ。小学生向き。

◆ノーマル◆

HTML→JavaScript→C→Perl→C++→Java

飽きがこないようにしたけど。。。
0081デフォルトの名無しさんNGNG
◆俺の場合◆
C → C++ → JAVA → 何にしよう
0082デフォルトの名無しさんNGNG
僕としては Lispとか Prologとか Smalltalkとか
Haskellとか KL/1とか Eiffelとか役に立たなさそうな
言語もちょっと見て欲しいな。
効率的じゃないけどね♪
0083APIバイブルNGNG
つうか言語を覚えるのは3種類ぐらいにしといて
後はもっと不変的なものを勉強しろよ。
アルゴリズムとか設計とかさ。
0084デフォルトの名無しさんNGNG
初心に返ろう。

>>1
>最適なプログラム修得順序ってありますか?
>やっぱりCが重要だからCからになるのかな?

君たちの言語習得自慢の場じゃないんだよ。
0085デフォルトの名無しさんNGNG
え?ネタスレじゃなかったの?
0086デフォルトの名無しさんNGNG
そうだね。やっぱりプログラムを作るにあたって、
構成するために必要なアルゴリズム(計算手順)が重要でしょう。
どの言語においても、だいたいアルゴリズムは似たようなもん。
こういう手順や方法を用いると、効率が良いという勉強をした方が
良いですね。
0087 NGNG
ううっ、80さんの通りのことを通ってC#にはいるおいらは,,,
0088デフォルトの名無しさんNGNG
>>86
とはいえ、手続き指向言語から見るとオブジェクト指向言語
は独自の作法がありすぎて、アルゴリズムを実現する前に
へこんでしまいます・・・
0089デフォルトの名無しさんNGNG
>>61-63
英一君の日本語訳のWEB版らしきものがあったよ。
http://www.excite.co.jp/world/url/body/?wb_url=http%3A%2F%2Fmitpress.mit.edu%2Fsicp%2Ffull-text%2Fbook%2Fbook.html&submit=%83E%83F%83u%83y%81%5B%83W%96%7C%96%F3&wb_lp=ENJA&wb_dis=2&wb_co=excitejapan
0090デフォルトの名無しさんNGNG
VB→VB.NET
0091デフォルトの名無しさんNGNG
VB → Java → Perl → C → C++ → Objective-Cを勉強中
HTMLとかJavaScriptは除外しました。
個人的には手続き型よりもオブジェクト指向の方が好き。
理路整然としているから。
0092sdfNGNG
VRML→HTML→TeX
0093SilentMajorityNGNG
C→C++→Java→C#
0094デフォルトの名無しさんNGNG
>>88
オブジェクト指向は、プログラミング設計の方法論。方法論
を押さえずに言語の機能から入ろうとすると、まず間違いな
く挫折します。

というわけで、これから Java, C++ 勉強しようという人間
には参考図書スレッドに上がっている「憂鬱なプログラマの
ための…」を読むことをお薦め。

あと、プログラミング「言語」の習得と、プログラミング「技
術」の習得は、微妙に違う。

優れたプログラマを目指すなら、アルゴリズムとかオブジェク
ト指向設計、オペレーティングシステム、コンピュータアーキ
テクチャ、言語理論なんかも、いつかは学習する必要がある。
このあたりが空っぽだと、いつまで経っても単純なコーダー止
まり。
0095デフォルトの名無しさんNGNG
>>94
一概にそう言いきれるかな?
優れたAPIが豊富に用意されている最近のプログラム言語
を見るにつけ、各種アルゴリズムを学ぶ必要性は薄れてい
るような気がする。
そんなの只のコーダーだと言われればそうかもしれないが、
現実問題、自作の関数を作る絶対的な必要性は一般のプロ
グラムでは殆どないのが現状でしょう。
「作る前によーく探せ、絶対にその機能はあるから」って
のがプログラマの鉄則になりつつあるんでは?
「優れたプログラマ」の「優れた」の定義がハッキリしてい
ないので何とも言えないけどさ。
0096デフォルトの名無しさんNGNG
>>95
APIとか既存関数とか(あと言及されていないが、
言語によっては既存Classとかもソレに含まれると思う)ってのは、
あくまでプログラムの「ある部分」を支援してくれるだけの
ものだと思う。
勿論それが充実していない言語としている言語なら
どっちを選ぶか考えようね、っていう話は
ソノトオリだと思うんだけど、
それだけじゃ「ある部分」しか埋まらないと思う。

というわけで>>94は、「それ以外の部分」を
埋めるという意味での人の能力について
言及したものと思われ。

勿論、「それ以外」についても、なにか既存の道具を
持ち出すことが可能な場合は、また多い。
OO設計をデザパタ集とUMLツールに依存してヤルとか(笑)、
OSはOS部品(そんなものを作っている人々もいるらしい)を
流用するとか(笑)。言語作るときもParserなんざ自作せず
yacc使えっていうのは既に定番だし。

ただまぁ、ある場面で幾つかの選択肢がある場合、
どれが選れているか?を見極める能力は、
結局必要だよね。それを養うために自作に挑む、
っていうことは結構あるし。
勘が働くように鍛えていなければ、探しても見つけられない
ってことはよくあるようだ。

あと、概念は、覚えておいたほうがいいね。
というわけで、たとえばOOについて言えば、
まぢ「憂鬱」はお勧め。

蛇足:
自作の関数は、VB/Delでもイベントプロシジャを書くから、
広い意味ではたいてい常に誰でも書いてると思うけど(^^;。
0097デフォルトの名無しさんNGNG
>>89
笑える。だけど凄い。こんなことがWeb上でできるとは知らなかった。

(定義しますパイ 3.14159)
(定義します半径 10)
(* パイ(*半径 半径))
314.159
(定義します周囲(*2 パイ 半径))
周囲
62.8318

MINDもビックリ。
0098 NGNG
HTML>>JavaScript>>VB>>Perl>>C>>JAVA>>C++

この順番が一番妥当だろ。
表示も、IE>>Win>>DOS と時代を戻れる。

まあ、WinプログラムしないならVBは除外してもいいけどな。
VB以外は、無料で環境もそろう。
0099デフォルトの名無しさんNGNG
>>95
実際に作る必要はなくても原理を知らなくても良いかといえば
そうではない。

アセンブラで組む必要はないが、アセンブラの知識は必要。
この違いがわかるかな。
0100デフォルトの名無しさんNGNG
>>95
>現実問題、自作の関数を作る絶対的な必要性は一般のプロ
>グラムでは殆どないのが現状でしょう。
>「作る前によーく探せ、絶対にその機能はあるから」って
>のがプログラマの鉄則になりつつあるんでは?

よーく探せばあるようなものばかりを作ってる場合はそうでしょうが、
普通はそんなこと無いですよね。
>>94が言ってるものは、そのような「よーく探せばある」ような
ものを想定しているのではないと思います。
0101デフォルトの名無しさんNGNG
99が良いこと言った!
■ このスレッドは過去ログ倉庫に格納されています