忍者ブログ
にゅん。のにゅん。によるなにか。→衣谷の衣谷による何か。 小説の事とか、いつものこととか、コーヒーの事とか、うつ展開なこととか。
[352] [351] [350] [349] [348] [347] [346] [345] [344] [343] [342
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

研修で絶賛Java中でUMLを見ながらコーディングをするという演習をやっているのだけれども。

演習問題のUMLがひどすぎる。使用するデータのデータ型が間違っていたり、クラス図とシーケンス図・実行イメージからでは動作が予測できないメソッドの実装が求められていたり。なんじゃこりゃ、と思うような設計なわけで。

多分、これを作った本人はJavaとかオブジェクト指向云々について勘違いしているんじゃないかな、と思うのさ。クラス図の表記が間違っているのは言語以前の問題だけれども、どうして現実空間ではあり得ない挙動をプログラムでは求めているのやら。仕様について簡単に触れると、
  1. キーボードから数字を入力する(購入する的な挙動)と、
  2. 消費者オブジェクトに数字が引き渡されて、
  3. さらにその数字が店舗オブジェクトに引き渡されて、
  4. それに相当する商品オブジェクトが返されて、
  5. それを買い物カートオブジェクトに引き渡す
なんてところがあったのだけれども、この流れのどこかで、『与えられた数字に対応する商品オブジェクトが存在するのか』という判断が必要になるのだけれども、初期使用だと消費者オブジェクトが在庫の有無をはんだんしているわけだけれども、これはオブジェクト指向として間違っているよね、と考えるわけさ。
だって消費者オブジェクトはキーボードの入力=購入をするわけであって、在庫確認をしているわけではないでしょ。購入をしようとしているのに、商品オブジェクトをフェッチするよりも前に在庫がないという返答はおかしいのではと。つまり、購入したいという振る舞いの消費者オブジェクトに対して、在庫の有無を判断するのは店舗オブジェクトでなければ現実空間との矛盾が発生する、というわけさ。すくなくとも消費者オブジェクトが『その商品は存在するか』を考えなくてもよいようにするのがただしいのではないかな?

オブジェクト指向と言えばカプセル化に多様性などなどがあるわけだけれども、それ以外にも、現実空間での挙動に近づけるようにするなんてのも含まれていた気がするのだけれども、それはどうなんだろう? これはまさか値の認識が間違っているのかな?

拍手[0回]

PR
この記事にコメントする
name
title
color
mail
URL
comment
pass   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
secret (チェックを入れると管理人だけに表示できます)
ついったー
かうんたー。
さいとますたー
らいほうなう。
カレンダー
12 2025/01 02
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
プロフィール
HN:
衣谷 創
HP:
性別:
男性
職業:
プログラマー見習い
自己紹介:
とりあえず、メンタルの波が激しい今日この頃。
小説を書いてます。素人ながら。
コーヒーを飲んでいます。素人ながら。
サークル「にの、にの?」の人だす。

ソフトウェア開発企業に就職しました。

あくせす解析

ジオターゲティング
ぶろぐらむ。
blogram投票ボタン
最新CM
[03/18 松浦筧]
[08/26 ねこう]
最新TB
バーコード
ブログ内検索
はんばいちゅう。

++++宣伝中++++

++++on SALE++++

夢うつつePUB版
¥105-

ばとねのかたまり2
¥105-

演者に来ない暁
¥420-

ごちゃまぜに。
¥105-

ごちゃまぜいち。
¥105-

ばとねのかたまり
¥105-

COMING out of the CLOSET
¥420-

黒い雨に赤く滴り
¥420-

またごうとしてとちる
¥420-

For Whom She Chirps #2
¥420-

傍から見れば勇者
¥420-

For Whom She Chirps #1
¥315に値下げー

ファインダー越しに
¥210

こちらのさいとではんばいちゅう。
Copyright ©   衣谷となにか。とコーヒー。   All Rights Reserved
Design by MMIT simple_plain Powered by NINJA TOOLS
忍者ブログ [PR]