スレ立てるまでもない質問はここで 108匹目

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2010/12/14(火) 01:10:25
>>951
違います
953デフォルトの名無しさん:2010/12/14(火) 01:17:17
>>951
違いますですね
954デフォルトの名無しさん:2010/12/14(火) 01:24:45
>>951
グローバル変数ヘルを味わわないとわかんないかなー。
クラス変数は制限されたグローバル変数でありカプセル化の恩恵でインスタンスの並列化もいける。
クラス変数は便利だぞー。変な汚染もあんまないし。

よく言われるのはデータとそれに付随する関数を一まとめにして独立性をあげるための考え方。
その際に関数書くじゃん?その関数の仕様にのっとって操作すれば中身が何であろうと目的を達成できる。かもしれない。
955デフォルトの名無しさん:2010/12/14(火) 01:24:50
違うことはわかっててもちゃんと説明出来る人はいません
956デフォルトの名無しさん:2010/12/14(火) 01:28:54
あるデータ構造に対して、いくつかの操作ができる
例えばスタックに対して、pushとpopができる
このスタックを操作するためのインタフェイスとして用意したpushとpopを使えば、スタックのデータ構造は正しく操作されるが、
外部から勝手にスタックの内部変数を操作してしまうと、スタックとしての正しいデータ構造を破壊できてしまう可能性がある
もちろん破壊しないように気をつけて操作すればいいが、そのようなプログラミングの仕方は規模が大きくなるにつれてだんだん収集が付かなくなってくる
例えばなにかバグが起きたときに、調査の結果、スタックのデータ構造がおかしくなっていた・・・その場合、
いろんなところでいろんなデータを操作していると、いったいどこでおかしくなったのか探すのが非常に困難になる
スタックを操作するときは必ずpushとpopを使い、外から勝手に内部のデータ構造を触ることを禁止する、というルールにしておけば、
データ構造を破壊しないよういちいち気をつけながら操作せずに済むのでバグが生じにくいし、
スタックのデータ構造を操作するのはpushとpopだけしかないので、万一何か起きても調査範囲が狭くてすみ、原因を突き止めやすい
957デフォルトの名無しさん:2010/12/14(火) 01:31:33
>>955
説明してくれる人はいませんね
958デフォルトの名無しさん:2010/12/14(火) 01:52:21
2chのレス程度で説明できるなら、オブジェクト指向プログラミングの入門書は要らんな
959デフォルトの名無しさん:2010/12/14(火) 01:55:48
カプセル化≒ブラックボックス化という認識はまずい?
960デフォルトの名無しさん:2010/12/14(火) 02:06:25
>>951
> ソースを見れば仕様や構造はわかってしまうし、ソースをいじればデータも直接操作できてしまいます。
その通り。

車のアクセルを踏むと窓が開くようにしたり、ハンドルを回すとドアのロックがかかるようにしてもいい。
そのかわり、その車に乗るドライバー全てに教えてあげないといけないよ。
それはそういう改造をした人の責任だし、そんな変更をされた車を捨てられてしまっても仕方のないこと。
961デフォルトの名無しさん:2010/12/14(火) 02:07:07
グダグダ言ってないでカプセル化はカプセル化として理解しろ。
962デフォルトの名無しさん:2010/12/14(火) 03:14:03
そうです理解しろです。
963デフォルトの名無しさん:2010/12/14(火) 07:53:37
>>959
どう違うの?って言われると答えられない自分が悔しい。
きちんと理解できてないってことなんだろうなあ。
カプセル化の表現方法の1つとしてブラックボックス化があるというイメージ。

あと、ブラックボックス化という言葉には、
日常会話としては悪い意味を持つ場合があるから気を付けなきゃならんかも。
964デフォルトの名無しさん:2010/12/14(火) 08:08:39
ブラックボックスは中が見えない
カプセルはそうとは限らない
965デフォルトの名無しさん:2010/12/14(火) 14:19:53
見れないと、見なくていいの差か
966デフォルトの名無しさん:2010/12/14(火) 14:31:28
getterってカプセル化的によくないの?
967デフォルトの名無しさん:2010/12/14(火) 14:33:37
使い方により
968デフォルトの名無しさん:2010/12/14(火) 14:36:38
>>967
本来そのクラスが処理するのがカプセル化だよね
969デフォルトの名無しさん:2010/12/14(火) 14:37:44
10年以上前にこんなやり取りあったよね
970デフォルトの名無しさん:2010/12/14(火) 14:38:51
まだオブジェクト指向が浸透してないってことよ
971デフォルトの名無しさん:2010/12/14(火) 14:45:25
プロパティなんて普通に使われてるだろ。
今時OOP原理主義なんてはやんねーよ。

てか当時ですら普通に使われてたし。

>>966
使ってる言語の標準ライブラリ参考にして使いどころ覚えとけ。

引き続き前世紀的宗教論争やりたかったらここらへん
OOP 2
http://hibari.2ch.net/test/read.cgi/tech/1289397085/
972デフォルトの名無しさん:2010/12/14(火) 17:34:17
http://2ji-is.sakura.ne.jp/imgboard-okazu.cgi?page=1
ここのページにC/C++言語で画像を送付して書き込みするプログラムってどうやるのでしょうか?
973デフォルトの名無しさん:2010/12/14(火) 17:37:15
まずHTTPプロトコルを勉強します
974デフォルトの名無しさん:2010/12/14(火) 17:44:54
>>972
クリスマスなんだから外に出て生身の女を抱いて来いよ
975デフォルトの名無しさん:2010/12/14(火) 18:26:43
次にソケットについて勉強します
976デフォルトの名無しさん:2010/12/14(火) 18:39:16
multipart-encodingについて勉強します
977デフォルトの名無しさん:2010/12/14(火) 20:42:45
チューリングマシンについての話はどこですればいいですか
チューリングマシン関係でこんなプログラム作った とか
978デフォルトの名無しさん:2010/12/14(火) 20:43:49
>>977
ちらしの裏に書いておくと良いですよ
979デフォルトの名無しさん:2010/12/14(火) 21:22:31
チューリング完全言語であるところのbrainfuckスレマジおすすめ
980デフォルトの名無しさん:2010/12/14(火) 22:19:27
981デフォルトの名無しさん:2010/12/14(火) 22:22:30
次スレまだぁ?
982デフォルトの名無しさん:2010/12/14(火) 22:22:33
次スレ立てます
983デフォルトの名無しさん:2010/12/14(火) 22:23:47 BE:75737524-S★(532000)
次スレ立てました
スレ立てるまでもない質問はここで 109匹目
http://hibari.2ch.net/test/read.cgi/tech/1292333005/
984デフォルトの名無しさん:2010/12/15(水) 00:51:54
>>983
985デフォルトの名無しさん:2010/12/15(水) 19:46:40
モツ
986デフォルトの名無しさん:2010/12/15(水) 22:21:17
>>983
乙梅
987デフォルトの名無しさん:2010/12/15(水) 22:23:51
うめ〜〜
988デフォルトの名無しさん:2010/12/15(水) 22:27:12
ume
989デフォルトの名無しさん:2010/12/16(木) 00:57:13
UML
990デフォルトの名無しさん:2010/12/16(木) 01:02:20
っめ
991デフォルトの名無しさん:2010/12/16(木) 01:23:08
すいません。
ひとつ聞きたいことがあります。
学校でプログラミングをコンパイルするときは
***.cのファイルをテキストエディタでつくり、
コマンドプロンプトで
gcc-4 ***.c -o ***.exe

というふうにやっています。
しかし家ではそのようにすると

「'gcc-4' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません」

とでます。家のパソコンにGccはないということでしょうか。

出来る限り学校のやり方に忠実に再現したいので、どうすればよいのか教えていただければありがたいです
992デフォルトの名無しさん:2010/12/16(木) 01:26:45
LinuxならVMWARE Player+Ubuntuでも入れとけ

あるいはmingwかcygwin
993デフォルトの名無しさん:2010/12/16(木) 01:39:17
>>991
Windowsにはgccはついてないよ
cygwinおすすめだけどそのレベルの初心者には敷居が高いかもしれない
他のやり方としては
最近はCDから起動できるLinuxがあるから
雑誌の付録とかでそういうの探して
CD入れた状態でパソコンを立ち上げればいい
994デフォルトの名無しさん:2010/12/16(木) 01:49:44
>>991
なんであっちのスレのレスに返事しないの?

一番簡単なのは学校のマシンを活用すること。
995デフォルトの名無しさん:2010/12/16(木) 07:24:05
高がPCをマシンとかw
996デフォルトの名無しさん:2010/12/16(木) 08:43:14
PCをマシンということにどう問題があるというのか?
997デフォルトの名無しさん:2010/12/16(木) 08:56:12
マッスィーンって言えってことだよ
言わせんな恥ずかしい
998デフォルトの名無しさん:2010/12/16(木) 08:59:47
あんたらは携帯電話をマシンと呼ぶのか? つまりはそういうことだ。
999デフォルトの名無しさん:2010/12/16(木) 09:09:44
ケイタイマシンだろjk
1000デフォルトの名無しさん:2010/12/16(木) 09:36:34
じゃあ中間でケッタマシンで
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。