X



学ぶ言語は「広く浅く」か「狭く深く」のどっちか [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2016/02/19(金) 19:29:03.86ID:W+HaL2pw
初心者なんだが
使い道に応じて色んな言語があるしそれぞれの技術が必要に思えるが
一つを極めておけばあとで他の言語にも応用が利きやすいようにも思える
0002デフォルトの名無しさん
垢版 |
2016/02/19(金) 19:41:12.71ID:JvPJIDd/
エンジニアリングには言語よりRDBとかネットワークみたいな個別の分野の知識が必要
言語はCとHaskellとLispやればいいよ
後はその都度使うはめになった時に勉強すれば済む話
0003デフォルトの名無しさん
垢版 |
2016/02/19(金) 19:45:15.93ID:e01p+uw5
人を売る立場なら浅いけどなんでも知ってるほうがいい
作る立場なら特定のことのスペシャリストのほうがいい
0004デフォルトの名無しさん
垢版 |
2016/02/19(金) 20:56:20.69ID:diF8GVSU
haskellとかlispやるぐらいならもっとメジャーな言語やった方がいい
情報量も多いしとっつきやすいから
それに一個身に付けてしまえば大抵あとから学ぶ言語もわかるから
だからCかC++,java,python,Rubyあたりがいいと思う
0005デフォルトの名無しさん
垢版 |
2016/02/19(金) 21:11:27.52ID:wEwKzS1i
一つの言語は常に使うようにした方がいい
文法がCライクは絶対条件
今ならjavaがいいと思う。C#でもいい

pythonは好きだけど、あれ書きすぎるとセミコロンを忘れるようになる
phpはテキトー過ぎるし組み込み関数もなんか変。web志望ならphp一択だけど。
rubyは触ったこと無い
vbはウンコ
vbaは事務員になれる
0006デフォルトの名無しさん
垢版 |
2016/02/19(金) 22:38:56.71ID:J8/smz0x
広く深く
0007デフォルトの名無しさん
垢版 |
2016/02/19(金) 22:48:26.65ID:5tCYSr35
C++を深くやる
そうすれば他のメジャーな言語は3日で習得できる下地ができる
最初から浅く広くやろうとすると産廃コーダーが出来上がる
0008デフォルトの名無しさん
垢版 |
2016/02/19(金) 22:50:09.84ID:GloZi6V2
深く理解するには広く知らなければならない
0009デフォルトの名無しさん
垢版 |
2016/02/19(金) 23:01:23.17ID:wEwKzS1i
自信がないからそれっぽいことテキトーに言って教えてる気になったオッサンは害悪だよね
0010デフォルトの名無しさん
垢版 |
2016/02/19(金) 23:25:32.50ID:DSX2hxXt
ふかいあなをほるには、ある程度ひろい面積がいる
同様に、いろいろ入門してから、奥義をきわめる
0011デフォルトの名無しさん
垢版 |
2016/02/19(金) 23:27:23.00ID:TH2A1UYk
どっちでもいいけど、教えるっていうかきちんと自分の言葉でアウトプットしていかないと浅くみえる
0013デフォルトの名無しさん
垢版 |
2016/02/20(土) 00:14:50.44ID:OP8B1Nvx
C++で理解した気になるのが一番危険かもね
最も強力で非常に醜悪なキメラ言語だから
0014デフォルトの名無しさん
垢版 |
2016/02/20(土) 00:24:52.16ID:omBvfY0y
>>13
C++だと自由すぎて、他の言語を使ったときにC++だとできるからという理由だけで、無理に変な実装をしようとするやつもいるからな。
0015デフォルトの名無しさん
垢版 |
2016/02/20(土) 00:37:13.32ID:4dG40mdg
C++はテンプレートの特殊化が神がかりすぎててヤバい
まぁ.Net C#がいいんじゃないかな
Javaはautoとかvarに該当するものがないのがちょっと
0016デフォルトの名無しさん
垢版 |
2016/02/20(土) 00:39:34.05ID:6H/PWXJj
C++はruby Python の前に独学でやると変な拗らせ方するからもし独学なら後にした方がいいと思う
0017デフォルトの名無しさん
垢版 |
2016/02/20(土) 01:11:59.00ID:5dzdENdK
文法がCライクは必須、とか言ってるアホもいれば
haskellとかlispやるぐらいならもっとメジャーな言語やった方がいい、とか言うアホもいると
C++勧めるやつとか脳味噌腐ってんじゃねーのか

>>2がいちばんマシな回答してるわ >>1にできるかどうかは疑わしいが
0018デフォルトの名無しさん
垢版 |
2016/02/20(土) 07:52:25.45ID:NxqHanh+
c++がいいよ
美しいオブジェクト指向の考え方が身に着く
低レベルだからこそイディオムやパターンの有り難みに気が付く
悪い習慣をコンパイルエラーにする事の重要さを学べる
他の言語では隠蔽される低レベルな資源管理方法を知れる
イミュータブル(const)である事の素晴らしさを強く体感出来る
邪悪だが便利なメタプログラムというパラダイムに馴染める
バイナリや中間コードやJIT結果を意識したコーディングができるようになる
c++を学ぶメリットは挙げればキリがないな
他の言語ではなかなか身に付かない
そしてできないと品質に大きく影響する
そういった類の知識を学ぶには最適の言語だ
此れ迄様々なプロジェクトでノベ数千人を超えるエンジニアと出会って来たがc++を経験してないプログラマは事実として漏れなく低品質だった
0019デフォルトの名無しさん
垢版 |
2016/02/20(土) 09:39:17.10ID:UHxodCVP
C++はチームで開発するには向いてるけれど、個人で使うだけならCのほうが良いと思うよ。
0021デフォルトの名無しさん
垢版 |
2016/02/20(土) 10:40:24.76ID:DHRk1KLO
>>18
まっとうな理解力のある奴ならな。
たいていの場合、普通にコンパイルして計算すりゃいいところでも
constexpr でコンパイル時に計算する!みたいな馬鹿が出来上がる。
0022デフォルトの名無しさん
垢版 |
2016/02/20(土) 12:19:16.65ID:omBvfY0y
>>18
オブジェクト指向をどうやって身につけるんだよ?

独学でC++を勉強するとオブジェクト指向を理解するのに時間がかかると思う。
0024デフォルトの名無しさん
垢版 |
2016/02/20(土) 14:30:16.67ID:1peKB6B6
数学を広く深く勉強しようとしてあきらめました。
東大理三レベルでもしょせん学生レベルだと思い知った。
0027スッキリ厨
垢版 |
2016/02/20(土) 16:43:49.69ID:LyOsXfce
まずこの本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014

その後、この2冊を順に読む
たのしいRuby 第4版、2013
みんなのPython 第3版

この順番は、漏れが編み出した、
言語を学ぶための基礎で、最速メソッドです
0028デフォルトの名無しさん
垢版 |
2016/02/21(日) 13:07:13.31ID:EyEptSoj
Cで基本的なプログラミング覚えて
C++でオブジェクト指向身につける
そうすりゃどんな言語にも対応可能
深くC++やって
浅くその他の言語仕様知ってればいいよ
0029デフォルトの名無しさん
垢版 |
2016/02/21(日) 13:20:32.11ID:UfOP8/7O
>>28
>Cで基本的なプログラミング覚えて
>C++でオブジェクト指向身につける
>そうすりゃどんな言語にも対応可能

LispにもMLにもPrologにも対応できんのかそりゃ凄えな(鼻ホジー
0030デフォルトの名無しさん
垢版 |
2016/02/21(日) 13:21:37.59ID:wRXUHbZp
C++も悪くないがみマルチパラダイム言語でオブジェクト学習するとオブジェクト指向モドキで終わってしまいそう。
オブジェクト指向は言語だけ覚えても意味がない。
分析、設計がオブジェクト指向であるからこそ、前行程との解離を少なくするためのオブジェクト指向言語なのだから。
0031デフォルトの名無しさん
垢版 |
2016/02/21(日) 13:26:08.73ID:vvUk+ASg
C++でもJavaでもなんでもいいから、とりあえず基本的なforとかifとかの文法、classみたいな型の仕組みを知れ(1週間)
そっからSICPとか読みながら型システムやらリスト構造の原理をまなべ(3週間)

そっからさきは、2つの道がある
C#とかJavaでOOPっぽいクラスについて学び、インターフェースとは何かとかを知る。
C++のテンプレートについて学び、GenericProgrammingや関数型プログラミングを知る。
0032デフォルトの名無しさん
垢版 |
2016/02/21(日) 13:39:53.89ID:UfOP8/7O
C++のテンプレートを知ると関数型プログラミングを知ったことになるとかどこの星の話なんだろう
0033デフォルトの名無しさん
垢版 |
2016/02/21(日) 13:59:26.42ID:baKzG/Kz
初心者が心配することじゃないよ。
とりあえずなんでもいいからひとつの言語でモノを作れるようになることが先決で、言語云々はそのあとに考えること。
0034デフォルトの名無しさん
垢版 |
2016/02/21(日) 14:43:13.32ID:vvUk+ASg
>>32
ごめん言葉足らず

非破壊、バインド、関数オブジェクト、再帰などを使うことになるから
段々と関数型プログラミングの知識が必要になってくるよくらいの意味でした
なのでそっから更に別途、関数型言語に傾倒していく人もいるよね
0036デフォルトの名無しさん
垢版 |
2016/02/21(日) 15:03:08.93ID:UfOP8/7O
>>34
理解した。

オレは>>2だが、
ポインタと再帰と継続を理解すればプログラミングの基礎を理解したことになるので
CとHaskellとLisp(特にScheme)を勧める。
手続き型のトイ言語のコンパイラを関数型言語で書き、
関数型のトイ言語のコンパイラを手続き型言語で書く、というのがいい経験になった

あとC++は単独でやってわかるようになるような言語じゃないし、クラスベースの
オブジェクト指向が本当に再利用可能性に貢献するのは複数の大規模開発の
基盤整備時だけだと思っている。後は開発者のスタイルの趣味の問題にすぎない。
有名なstaticおじさんにも三分の理くらいはある。
0038デフォルトの名無しさん
垢版 |
2016/02/21(日) 15:07:18.08ID:EyEptSoj
>>29
初めてc覚える
c言語からオブジェクト指向を覚える
そのハードルに比べたら
関数型とか覚えることなんて
たいしたことない(ハナホジー
0039デフォルトの名無しさん
垢版 |
2016/02/21(日) 15:08:59.52ID:UfOP8/7O
あのC++を身につけることができたというのが本当ならばそうかもしれんねえ
羨ましいこった
0040デフォルトの名無しさん
垢版 |
2016/02/21(日) 16:22:48.55ID:X8k91nqv
言語が抽象化されていくとアトム化が複雑になるだけで同じことをするにも直観的じゃなくなるんだよな。 ようするに
高階化が進むだけでトレードオフによってエントロピー自体が減ること表現能力は直行しているんだよな。残念なことに、
0045デフォルトの名無しさん
垢版 |
2016/02/22(月) 15:01:04.42ID:NgJSo9K5
本番までできる!
0048デフォルトの名無しさん
垢版 |
2016/02/22(月) 20:09:53.47ID:Prt5vswI
広く浅くだろ普通
狭く深くとは、1つ2つを深く掘り下げるまで他の言語学んじゃだめってことか?
0049デフォルトの名無しさん
垢版 |
2016/02/22(月) 22:05:57.58ID:vTuPlmuE
>>48
なんだその理屈w
広く浅くだったら、それなりに有名な言語をひととおり触るまでひとつを深く掘り下げちゃだめなのか?
0051デフォルトの名無しさん
垢版 |
2016/02/23(火) 07:48:43.70ID:7ZeaJq1H
海よりもまだ深く 空よりもまだ青く
あなたをこれ以上 愛するなんて
わたしには出来ない
0053デフォルトの名無しさん
垢版 |
2016/02/23(火) 18:41:10.36ID:TIMSmsEK
挿入
0055デフォルトの名無しさん
垢版 |
2016/02/24(水) 23:15:21.98ID:FZwg9VGX
独学でCとかやる前に
下地として必要不可欠な知識って何がありますかね?アセンブラ?というものは...?
ど素人ですみませんでも何でもするから御教授願いします
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況