アカウント名:
パスワード:
この設問、「簡単」の定義があやふやなので論争の元になって居るが、現実としては表題の通りだと思う。
これが、二つの言語を習得た者と一つしか習得していない者の比較だと習得している言語のタイプによって状況が変わってくる可能性があるが、一切未経験と他言語経験者であればほぼ間違いなく他言語経験者の方が習得は容易であると言えるだろう。
ただ、それが「簡単に習得できた」と言えるかはまた別問題というか、人によって感覚が異なるというだけの話だろう。
> 一切未経験と他言語経験者であればほぼ間違いなく他言語経験者の方が習得は容易であると言えるだろう。
それもない。毎年、数十人にprolog教えてるのだが、C/Java系の言語経験者と、プログラム経験一切ない人間に、prolog 教えると後者のほうが覚えるのも理解するのも圧倒的に速い。例外もあるが、そういうのはは毎年1人いるかいないかぐらい。C/Javaの経験者はコンピュータプログラムはこういうものという先入観にとらわれて、理解がとても遅い。
> C/Javaの経験者はコンピュータプログラムはこういうものという先入観にとらわれて、理解がとても遅い。
当方C#erですが、関数型言語の習得にひどく苦労しています。
こういうパラダイムが違う言語は、何も先入観ない方が、すんなり習得できるのではと思っています。
同じくC#メインですが、パラダイムの習得自体は大したことないですが…
知ってる言語より記述長くメンドーになる言語だとやる気一気に消えますw
「プログラムをどのレベルまで抽象化しているのか」が人によってかなり違うのが容易か困難かに別れる原因の一つでしょう。プログラム言語を具体的にほぼそのまま覚える人は第2言語の習得は全く別物に思えて(似た言語であっても)非常に困難になるし、言語を自分なりに抽象化して覚えた人は容易になるでしょう。
プログラムに限ったことではないが、事象を抽象化出来る人と出来ない人では学習にかなり差が出る。その辺を教える側も認識が必要だと思う。
ないと言い切るのはどうだろうか。prolog はちょっと例としては特殊すぎない?逆に作用することもある一例程度ではないか?
prologはそもそも書けないというレベルになることが多いので明確ですが、学習の妨げになってるのは、パラダイムが違えば当たり前でしょう。パラダイムが違うものに対して共通する部分が存在しているはずだとか、再度学びなおさなくていい部分があるはずだなんて、変なこと考えてれば理解を阻害する要素になりますよ。
C系の言語しかやってない人も、関数型をやらせても本人は書けると言ってるし動くものは出てくるけど、はたから見れば、いくらなんでも、それは書けるとは言わないだろうってレベルの人が大半じゃないですか?
Prolog できないやつはプログラミングではなくて、それこそ基礎数学の命題論理や一階述語論理がわかっていないだけじゃないかな?
述語論理ほぼわかってないやつが書く Prolog と、完全に述語論理に従ってないと Prolog プログラミングとは認めない指導者。
そりゃ言語を全く解さない人物(狼などに育てられた人物)に、ゼロから言語を教えるより、言語を一つでも解する人物に新言語を教える方が容易。
>後者のほうが覚えるのも理解するのも圧倒的に速いそこは疑問だなあ。
教え方が下手な人だと、「最初は何も考えずに書いてください」と言ったりする。
本当になにも考えずに、エラー処理とか異常系とか考えずにコピペするだけなら初心者でも早かったりするけど、彼等は基本を全く理解してないから自分の書いたプログラムを自分でデバッグできないことも多い。
経験者の方が遅いのは、そういう部分を気にしての話。たとえ初めての言語でも、何も考えずには書かない。
一方初心者は、本当に何も考えずに書く。でもそれは本当に早いと言えるのか。
コンピューター操作・プログラム操作が出来るだけで随分違うはず。まあ昔はペーパープログラミング(パンチカード・ワイヤードロジック)なんてのもあったが。
プログラミング前の環境構築が一番きついですね知らん専門用語が並ぶマニュアル近頃のリッチなIDEに並ぶこのボタン群は何?押して大丈夫?
たぶん大丈夫。バルスと表示されなければ。
キーボードの打鍵もろくにできなかった大学時代。いきなり「慣れれば分かる」とかでプログラミング演習などやっても、結局BASICは身につかなかった。肩が凝って目が疲れて頭が混乱した状況で、何かが残るはずもなく。
半年前の座学「情報科学」にBASICも出ていたなぁ、そういえば。と気づいたのははるか後と。
Cはともかく、Javaしかやってない人間はそこから一歩も出られない人が多い印象はある。
何を言うんですか?lispだったらよかったですか? Emacs界隈ではCより普及しています.
まあ、CとかJavaとかPythonとか手続き型で育った人からしたら、Prolog よりも Lisp のほうがまだしもついていけるかもしれん。
#それでもかなり苦労したけど。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds
ずぶの素人よりましなのは確か (スコア:1)
この設問、「簡単」の定義があやふやなので論争の元になって居るが、現実としては表題の通りだと思う。
これが、二つの言語を習得た者と一つしか習得していない者の比較だと習得している言語のタイプによって状況が変わってくる可能性があるが、一切未経験と他言語経験者であればほぼ間違いなく他言語経験者の方が習得は容易であると言えるだろう。
ただ、それが「簡単に習得できた」と言えるかはまた別問題というか、人によって感覚が異なるというだけの話だろう。
しもべは投稿を求める →スッポン放送局がくいつく →バンブラの新作が発売される
Re:ずぶの素人よりましなのは確か (スコア:2, 参考になる)
> 一切未経験と他言語経験者であればほぼ間違いなく他言語経験者の方が習得は容易であると言えるだろう。
それもない。
毎年、数十人にprolog教えてるのだが、C/Java系の言語経験者と、プログラム経験一切ない人間に、prolog 教えると後者のほうが覚えるのも理解するのも圧倒的に速い。例外もあるが、そういうのはは毎年1人いるかいないかぐらい。
C/Javaの経験者はコンピュータプログラムはこういうものという先入観にとらわれて、理解がとても遅い。
実感している (スコア:0)
> C/Javaの経験者はコンピュータプログラムはこういうものという先入観にとらわれて、理解がとても遅い。
当方C#erですが、関数型言語の習得にひどく苦労しています。
こういうパラダイムが違う言語は、
何も先入観ない方が、すんなり習得できるのではと思っています。
Re: (スコア:0)
同じくC#メインですが、パラダイムの習得自体は大したことないですが…
知ってる言語より記述長くメンドーになる言語だとやる気一気に消えますw
Re: (スコア:0)
「プログラムをどのレベルまで抽象化しているのか」が人によってかなり違うのが容易か困難かに別れる原因の一つでしょう。
プログラム言語を具体的にほぼそのまま覚える人は第2言語の習得は全く別物に思えて(似た言語であっても)非常に困難になるし、言語を自分なりに抽象化して覚えた人は容易になるでしょう。
プログラムに限ったことではないが、事象を抽象化出来る人と出来ない人では学習にかなり差が出る。
その辺を教える側も認識が必要だと思う。
Re: (スコア:0)
ないと言い切るのはどうだろうか。prolog はちょっと例としては特殊すぎない?逆に作用することもある一例程度ではないか?
Re: (スコア:0)
prologはそもそも書けないというレベルになることが多いので明確ですが、学習の妨げになってるのは、パラダイムが違えば当たり前でしょう。
パラダイムが違うものに対して共通する部分が存在しているはずだとか、再度学びなおさなくていい部分があるはずだなんて、変なこと考えてれば理解を阻害する要素になりますよ。
C系の言語しかやってない人も、関数型をやらせても本人は書けると言ってるし動くものは出てくるけど、はたから見れば、いくらなんでも、それは書けるとは言わないだろうってレベルの人が大半じゃないですか?
Re:ずぶの素人よりましなのは確か (スコア:1)
Re: (スコア:0)
Prolog できないやつはプログラミングではなくて、それこそ基礎数学の命題論理や一階述語論理がわかっていないだけじゃないかな?
述語論理ほぼわかってないやつが書く Prolog と、
完全に述語論理に従ってないと Prolog プログラミングとは認めない指導者。
Re: (スコア:0)
そりゃ言語を全く解さない人物(狼などに育てられた人物)に、ゼロから言語を教えるより、言語を一つでも解する人物に新言語を教える方が容易。
Re: (スコア:0)
>後者のほうが覚えるのも理解するのも圧倒的に速い
そこは疑問だなあ。
教え方が下手な人だと、「最初は何も考えずに書いてください」と言ったりする。
本当になにも考えずに、エラー処理とか異常系とか考えずにコピペする
だけなら初心者でも早かったりするけど、彼等は基本を全く理解してない
から自分の書いたプログラムを自分でデバッグできないことも多い。
経験者の方が遅いのは、そういう部分を気にしての話。
たとえ初めての言語でも、何も考えずには書かない。
一方初心者は、本当に何も考えずに書く。でもそれは本当に早いと言えるのか。
Re: (スコア:0)
コンピューター操作・プログラム操作が出来るだけで随分違うはず。
まあ昔はペーパープログラミング(パンチカード・ワイヤードロジック)なんてのもあったが。
Re: (スコア:0)
プログラミング前の環境構築が一番きついですね
知らん専門用語が並ぶマニュアル
近頃のリッチなIDEに並ぶこのボタン群は何?押して大丈夫?
Re: (スコア:0)
たぶん大丈夫。
バルスと表示されなければ。
Re: (スコア:0)
キーボードの打鍵もろくにできなかった大学時代。
いきなり「慣れれば分かる」とかでプログラミング演習などやっても、結局BASICは身につかなかった。
肩が凝って目が疲れて頭が混乱した状況で、何かが残るはずもなく。
半年前の座学「情報科学」にBASICも出ていたなぁ、そういえば。
と気づいたのははるか後と。
Re: (スコア:0)
Cはともかく、Javaしかやってない人間はそこから一歩も出られない人が多い印象はある。
Re: (スコア:0)
何を言うんですか?
lispだったらよかったですか? Emacs界隈ではCより普及しています.
Re:ずぶの素人よりましなのは確か (スコア:1)
まあ、CとかJavaとかPythonとか手続き型で育った人からしたら、
Prolog よりも Lisp のほうがまだしもついていけるかもしれん。
#それでもかなり苦労したけど。