アカウント名:
パスワード:
JAVA亡き後、オブジェクト指向を教えるのにいい言語ってなんでしょう?C言語は知っている学生向けに。やっぱC++かな。スクリプト言語はどれもひと癖ある感じがしています。
do-endあたりに癖がありますが「オブジェクト指向の学習」であればRubyをオススメします。他の言語とくらべてもSmalltalkに近いですし。今はRuby on Railsがあるので少し書くだけでそこそこの規模のアプリができるので、やる気の向上にもつながります。
もしくはWindowsならC#、MacならObjective-Cでしょうか?
pythonじゃない、やっぱり。
JavaScriptでいいんじゃないの?とかいってみる。
JavaScriptは自由度高すぎる気が。書き方のばらつき度合いも含めてちょっと教育には向かないのではないかと。(C/C++/Java/C#と来た自分にはJavaScriptはフリーダムすぎてちょっと怖い)
windowsで使うのでしたらC#でよいのでは?セットアップに面倒が無いし、言語的には殆どJAVAと一緒ですから。
同意。手間を惜しまないならWindows以外でもいけますしね。
教えるだけなら言語は要らないのではないか。あれは概念だし、本当の意味を知らないまま適当にクラス使うだけじゃ意味ないし。まとめるべき物を分離して無駄にオブジェクト化すると地獄と化すから、無理に従う必要ない。どういうものをオブジェクトとしてまとめるかをみっちり叩き込んでやってください。
C言語でオブジェクティブな設計をする→まるっきり同じものをC#で書くって感じでしょうか。いいパスに思います。課題づくりが面倒か。
rubyは洗練されすぎちゃってて、僕はいまだに他人のrubyを読めない....railsの枠組みはわかりやすくて面白いのだけれど、クラス使いのアプリ作成になってしまいそうで。
C#でしょう。開発環境から言語仕様までJavaより使い勝手いいですし。
日本語でおk
一瞬イラッと来た俺は未熟なんだな。
「オブジェクト指向」を教えるのではなく、いいプログラムのあり方を教える上でオブジェクト指向という発想を教えるのがいいと思う。プログラミング界はやたらめったらオブジェクトオブジェクトと言われすぎてる気がする。
即実用性を求めないなら、C言語→C++は地に足が付いたプログラミング学習ができると思うよ。
PHPでいいんじゃないかな。Javaのいい点 (Javadoc -> phpDocumentor) も悪い点 (それ以外全部) もだいたいそのまま引き継いでるし。
教える必要はないです。C 知ってるだけじゃ足りない。ちゃんと長いコードも読んで、修正できるようになってください。
2000行くらいまでなら耐性があるから(平均。上位者は無制限の行数耐性)、あなたの想定は越えている学生です。
C++ はCの変態仕様も受け継いじゃってるとこが駄目なのよねー unsigned long a = 1; int b = -1; cout "a/b=" a/b endl; cout "b/a=" b/a endl;[結果]a/b=0b/a=18446744073709551615これが正式な仕様どおりの動作なんですよ・・・
どの辺が変態仕様なのでしょうか。unsignedな整数なんて型があること?signedからunsignedへのcastの定義またはcastが可能なこと?
一体あなたは何を意図して a∈unsigned long , b∈int の二項演算を行っているの?
汎整数拡張は変態仕様そのものでしょうに
自分の経験からすると、Smalltalkをかじったことが一番大きかった。クラスブラウザーの存在が極めて大きいと思う。そこからライブラリーのソースを参照しながら開発するというスタイルなので、自然と優秀なプログラマーのソースに触れることができて非常に勉強になった。他の言語でも、初心者向けには、クラスブラウザーベースの環境があったらいいと思うのだが、Smalltalkに匹敵するものがないのが残念。
Ru byじゃダメなん?いろいろ足りない?
逆。てんこ盛りすぎて、かつそのすべてがスマートだから、学生にはどれを選んでも最適解が存在する分かれ道が一歩ごとに訪れる。間違って選択して、転んで覚える必要がある学生には、「崖の下から、こんなにかっこよく登る方法がある」と示されるより、「こうやると崖に落ちる、落ちるとこうなる、うげー」というのが分かりやすくないと学習が遅い。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー
オブジェクト指向を教えるのに (スコア:0)
JAVA亡き後、オブジェクト指向を教えるのにいい言語ってなんでしょう?
C言語は知っている学生向けに。
やっぱC++かな。
スクリプト言語はどれもひと癖ある感じがしています。
Re: (スコア:0)
do-endあたりに癖がありますが「オブジェクト指向の学習」であればRubyをオススメします。
他の言語とくらべてもSmalltalkに近いですし。
今はRuby on Railsがあるので少し書くだけでそこそこの規模のアプリができるので、やる気の向上にもつながります。
もしくはWindowsならC#、MacならObjective-Cでしょうか?
Re: (スコア:0)
pythonじゃない、やっぱり。
Re: (スコア:0)
JavaScriptでいいんじゃないの?とかいってみる。
Re: (スコア:0)
JavaScriptは自由度高すぎる気が。
書き方のばらつき度合いも含めてちょっと教育には向かないのではないかと。
(C/C++/Java/C#と来た自分にはJavaScriptはフリーダムすぎてちょっと怖い)
Re: (スコア:0)
windowsで使うのでしたらC#でよいのでは?
セットアップに面倒が無いし、言語的には殆どJAVAと一緒ですから。
Re: (スコア:0)
同意。
手間を惜しまないならWindows以外でもいけますしね。
Re: (スコア:0)
教えるだけなら言語は要らないのではないか。
あれは概念だし、本当の意味を知らないまま適当にクラス使うだけじゃ意味ないし。
まとめるべき物を分離して無駄にオブジェクト化すると地獄と化すから、無理に従う必要ない。
どういうものをオブジェクトとしてまとめるかをみっちり叩き込んでやってください。
Re: (スコア:0)
C言語でオブジェクティブな設計をする
→まるっきり同じものをC#で書く
って感じでしょうか。
いいパスに思います。課題づくりが面倒か。
rubyは洗練されすぎちゃってて、僕はいまだに他人のrubyを読めない....
railsの枠組みはわかりやすくて面白いのだけれど、クラス使いのアプリ作成に
なってしまいそうで。
Re: (スコア:0)
C#でしょう。開発環境から言語仕様までJavaより使い勝手いいですし。
Re: (スコア:0)
日本語でおk
Re: (スコア:0)
一瞬イラッと来た俺は未熟なんだな。
Re: (スコア:0)
「オブジェクト指向」を教えるのではなく、いいプログラムのあり方を教える上で
オブジェクト指向という発想を教えるのがいいと思う。
プログラミング界はやたらめったらオブジェクトオブジェクトと言われすぎてる気がする。
即実用性を求めないなら、C言語→C++は地に足が付いたプログラミング学習ができると思うよ。
Re: (スコア:0)
PHPでいいんじゃないかな。
Javaのいい点 (Javadoc -> phpDocumentor) も悪い点 (それ以外全部) もだいたいそのまま引き継いでるし。
Re: (スコア:0)
教える必要はないです。C 知ってるだけじゃ足りない。ちゃんと長いコードも読んで、修正できるようになってください。
Re: (スコア:0)
2000行くらいまでなら耐性があるから(平均。上位者は無制限の行数耐性)、あなたの想定は越えている学生です。
Re: (スコア:0)
C++ はCの変態仕様も受け継いじゃってるとこが駄目なのよねー
unsigned long a = 1;
int b = -1;
cout "a/b=" a/b endl;
cout "b/a=" b/a endl;
[結果]
a/b=0
b/a=18446744073709551615
これが正式な仕様どおりの動作なんですよ・・・
Re: (スコア:0)
どの辺が変態仕様なのでしょうか。
unsignedな整数なんて型があること?
signedからunsignedへのcastの定義またはcastが可能なこと?
一体あなたは何を意図して a∈unsigned long , b∈int の二項演算を行っているの?
Re: (スコア:0)
汎整数拡張は変態仕様そのものでしょうに
Re: (スコア:0)
自分の経験からすると、Smalltalkをかじったことが一番大きかった。クラスブラウザーの存在が極めて大きいと思う。
そこからライブラリーのソースを参照しながら開発するというスタイルなので、自然と優秀なプログラマーのソースに
触れることができて非常に勉強になった。
他の言語でも、初心者向けには、クラスブラウザーベースの環境があったらいいと思うのだが、Smalltalkに匹敵する
ものがないのが残念。
Re: (スコア:0)
Ru byじゃダメなん?
いろいろ足りない?
Re: (スコア:0)
逆。
てんこ盛りすぎて、かつそのすべてがスマートだから、学生にはどれを選んでも最適解が存在する分かれ道が一歩ごとに訪れる。
間違って選択して、転んで覚える必要がある学生には、「崖の下から、こんなにかっこよく登る方法がある」と示されるより、
「こうやると崖に落ちる、落ちるとこうなる、うげー」というのが分かりやすくないと学習が遅い。