大石泉「オブジェクト指向について教えてほしい?」村松さくら「うん!」

Check このエントリーをはてなブックマークに追加 Tweet

12 : ◆4btDzJY0yc [saga]:2021/10/17(日) 03:53:10.54 ID:sIClmUXX0
亜子「カプセル化はオブジェクト指向の方法の一つって言うてたけど、他は?」


泉「『継承』、『ポリモーフィズム』、そして『カプセル化』。この三つがオブジェクト指向でまとめられる三つの技術だよ」


さくら「その二つはどういう意味なの?」


泉「うーん……。
『継承』は複数の親クラスからそれと同じ内部構造を持つ子クラスを複製するシステム、
『ポリモーフィズム』は操作の対象が何であれ、同じ関数を使えること、って感じなんだけど」


亜子「すまんいずみ、よくわからん」


泉「だよね」
13 : ◆4btDzJY0yc [saga]:2021/10/17(日) 03:55:37.77 ID:sIClmUXX0
泉「でもね、オブジェクト指向の基本は、プログラムをオブジェクト同士の関係というかたちで表現するってことだから、私はオブジェクト指向の本質は『カプセル化』の一つだけだと思ってる」


さくら「カプセル化はプログラムを物で表現しているってことなの?」


泉「オブジェクトはデータを受け取ってデータを返すんだけど、誰から受け取るかとかどこに渡すのかまで決めちゃうと、決められた場所でしか使えないし、どっちかに変更が加えられたときにもう片方も変えなきゃいけなくて大変だよね。
だから、『とにかく数字が来たらこう変換する、出力はこういう文字列』みたいな形だけ決めるの。その文字列を誰が受け取るのか、どうするかはまた別の受け取る方のオブジェクトが考えればいい。
この『入力と出力だけ決まっている』っていうのが現実の物っぽいんだよね」


さくら「そうなの?」
14 : ◆4btDzJY0yc [saga]:2021/10/17(日) 03:59:54.00 ID:sIClmUXX0
泉「現実世界で喩えると、テレビのこのボタンを押すと電源が点くけど、本当は内部で複雑な動作が行われているはず。でも、内部で何が起こっているかはわからないけれど、ボタンを押せばテレビが勝手に電源を点けてくれる。これって『ボタンを押す』という入力と『電源が点く』という出力だけ公開されたプログラムみたいだよね」


亜子「ふむふむ、ボタンを押すのはアタシでもさくらでも、テレビの中身は変わらんし、結果は同じになる。これってテレビというオブジェクトが中身を公開せずに『ボタンを押す』という入力だけ公開してくれてるからやな。さっき言ってたカプセル化やな」


泉「『内部処理をカプセルに入れて隠しちゃえ』ってことだね」


さくら「なるほどぉ」
15 : ◆4btDzJY0yc [saga]:2021/10/17(日) 04:04:14.98 ID:sIClmUXX0
さくら「でも……」


泉・亜子「?」


さくら「わたしはプロデューサーさんに頭を撫でられたらムズムズしちゃうけど、二人からだったら嫌じゃないけどなぁ」


泉「も、もう、なんか照れるよ」


亜子「……今から三人でなんか食べ行こか」


さくら「うん!」
16 : ◆4btDzJY0yc [saga]:2021/10/17(日) 04:13:42.19 ID:sIClmUXX0
終わりです
>>12の「複数の」は衍字です
あと途中で出てきたプログラミング言語っぽいのはC言語っぽい架空のプログラミング言語ということでお願いします

話の進行上さくらには構造体を知っててもらいましたが実際の中学のプログラミング教育は論理的な考え方を理解するといったものでコードを書いたりはしなかったはず

乱文にお付きあいいただきありがとうございました
17 :以下、名無しにかわりましてSS速報VIPがお送りします [sage]:2021/10/17(日) 10:30:39.19 ID:QHMh+v01O

NW(ほぼいずみん)でよくわかるプログラミング講座とか受けてみたい
18 :以下、名無しにかわりましてSS速報VIPがお送りします [sage]:2021/10/20(水) 08:40:40.54 ID:eco80uEQ0
char型に漢字を入れたな!
19 :以下、名無しにかわりましてSS速報VIPがお送りします [sage]:2021/10/20(水) 17:07:48.22 ID:VjjOQeueo
charが1byteなCだけで物事を考えてはいけない

javaなら2byteだからUTF16のどの1文字も入るし
20 :以下、名無しにかわりましてSS速報VIPがお送りします [sage]:2021/10/26(火) 13:25:24.35 ID:ibonmE+c0
私も関数型でこれ書こ。
インスピレーションもらいました。ありがとうございます。
12.59 KB Speed:0   VIP Service SS速報VIP 更新 専用ブラウザ 検索 全部 前100 次100 最新50 新着レスを表示
名前: E-mail(省略可)

256ビットSSL暗号化送信っぽいです 最大6000バイト 最大85行
画像アップロードに対応中!(http://fsmから始まるひらめアップローダからの画像URLがサムネイルで表示されるようになります)


スポンサードリンク


Check このエントリーをはてなブックマークに追加 Tweet

荒巻@中の人 ★ VIP(Powered By VIP Service) read.cgi ver 2013/10/12 prev 2011/01/08 (Base By http://www.toshinari.net/ @Thanks!)
respop.js ver 01.0.4.0 2010/02/10 (by fla@Thanks!)