パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

初心者が学ぶのに最適なプログラミング言語は?」記事へのコメント

  • by SteppingWind (2654) on 2014年01月16日 17時46分 (#2528159)

    プログラムを学ぶには何らかのプログラミング言語を学ぶことが必要だけど, プログラミング言語を学ぶことがプログラムを学ぶことではないってことは注意しといた方がいいですね.

    それと, 何故プログラムを学ぶのかという目的によっても推薦する言語が異なってくるので, 明確な目的/目標を決めておくのも重要かと.

    • by Anonymous Coward on 2014年01月16日 20時29分 (#2528277)

      プログラミングの醍醐味というのは、自分で「目の前の機械を操ってる感」だと思うんですよ
      コンピュータを操ってる感と言えば一番簡単なのは何かを表示することなわけで、
      本当の「入門」なら(文法は滅茶苦茶でも)HTMLのIMGタグくらいでいいんじゃないかと思います
      # HTMLはプログラム言語じゃないけど

      文科系の大学生にプログラミングを教えて思ったこと http://d.hatena.ne.jp/shi3z/20131016/1381884291 [hatena.ne.jp]

      条件分岐とか繰り返しとかを機械にやらせるのは、高度すぎて入門には不適切だと思います
      他の分野の成績にかかわらず、それまでの学習メンタルモデルによっては、何がなんだかさっぱりわからないそうなので
      http://d.hatena.ne.jp/JavaBlack/20120520/p1 [hatena.ne.jp]
      http://d.hatena.ne.jp/masatoi/20090707/1246965336 [hatena.ne.jp]

      親コメント
      • by Anonymous Coward
        > 文科系の大学生にプログラミングを教えて思ったこと

        文系の新卒に教えるのと同じ感じですね。
        もっとも大学のうちにこの人のように(文法おぼえたけどわかんなーいじゃなくて)基礎をきちっと教えておいてくれると、会社入ってからは違うことが教えられるのでたすかりますが。

        初歩の初歩は習うより慣れろで良いと思うので(少し書けるようになったらまた背景を説明する必要はあるが)、どんどん書かせる方がいいんじゃないかと思います。
        生徒数が増えると説明しきれない(というかなにがわかってないか理解してあげる時間が取れない)ので少人数への教育ならば、という条件は付きますが。

        条件分岐とか繰り返しが高度というのはどうかなぁ。もともと代入とジャンプと条件付きジャンプしかないので私の中では入門です。というかそれを封じられると何を教えればいいのかわからなくなります。
        • by Anonymous Coward

          繰り返しは、恐らく頭の中でループを展開してしまっているのだと思っています。
          「hogehogeを繰り返し行ったもの」のまま留めておけないのかも

    • by Anonymous Coward

      概ね同意です。
      ただ、プログラムを学ぶ上でパラダイムは重要で、そしてパラダイムを学ぶには、やはり複数の言語を学ぶのが良いと思うのです。

      • by Anonymous Coward

        ところが人間、抽象度の低いものから学ぶとなかなかそれから脱却できないものです

        足し算をブロックの数を数えることでしか学べない子もいるし、そうでない神童揃いの/.Jerみたいなのもいます

        • by Anonymous Coward

          前半と後半のつながりがよくわからない。「早まった一般化」?

          • by Anonymous Coward

            後半はただの嫌味です
            このストーリーでおすすめされているものを見ればわかると思います

        • by Anonymous Coward

          アセンブラあたりからやると、手続き型も関数型もオブジェクト指向も、
          機械語に変換する為のマクロでしかないって事が理解しやすいと思うけど。

          例えば、関数型言語は変数に再代入が出来ない。とききくとなんか特殊な言語って感じがするけど
          llvmアセンブリも変数に再代入できない。アセンブラには変数自体が存在しない。変数自体が便宜的に作られたもの、

          CとかC++のポインタも実際にアドレスを格納しているとは限らないわけだし。

          抽象度のフェーズを移行できるってのは。プログラミングを学ぶ上で割と有用

          • by Anonymous Coward

            チューリング機械の粗悪で抽象度の低い模倣から始めるからラムダ計算のような計算モデルが理解できなくなるという典型例ですね。

        • by Anonymous Coward

          >そうでない神童揃いの/.Jerみたいなのもいます
          元神童のただの人という事か

        • by Anonymous Coward

          手続き型脳に染まるとより高度なパラダイムのプログラミング言語が理解できなくなるようなものだね。
          手続き型脳には理解できないこと自体が理解できないわけだが、無理やり例えるならCOBOLerに構造化やオブジェクト指向を理解させようとしているところを想像してみよう

UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア

処理中...