プログラマ適正判定
すべて独断と偏見によるプログラマ適正試験プログラムです。
プログラマの皆さんのストレスが少しでも発散できれば、幸いです。
・!仕事中にバグを見つけました。
あなたならどうしますか?
public class 適正診断 implements Callable<診断結果> {
private final 社員 あなた;
public 適正診断(社員 target) {
this.あなた = target;
}
public 診断結果 call(){
if( あなた.is条件反射(バグ)){
// 一瞬でなかったことにする→ return “イ”;
} else if( TimeUtil.is今は金曜の定時前() ){
if ( あなた.get上司() == null ){
throw new 判定不可例外();
} else if( あなた.上司().getType() == “赤い血が通っていない“){
// 今はやめておく → return “ロ”;
var 調査結果 = あなた.調査する();//とりあえず調査。
if( 調査結果 .is自分のバグ()){
if(調査結果.get修正にかかる時間() < 30分){
// 案1. 上司に報告し、修正する→ return “ハ”;
// 案2. 上司に報告せず、来週迄温める→ return “二”;
} else{ // 修正に時間がかかりそう
// 案1. 上司に報告し、作業を始める→ return “ホ”;
// 案2. 上司に報告せず、来週迄温める → return “ニ”;
}
} else if( 調査結果 .is身内のバグ() ){
// この場合の適正判定は難しい。お客様に相談。
// 案1. 身内に報告し、帰宅する→ return “ト”;
// 案2. 上司に報告し、帰宅する→ return “チ”;
} else {// 他社のバグ
// 上司に報告の一択なので、 適正判定不可
throw new 判定不可例外();
}
} else {// 信頼している上司
// 仕様確認待ち
throw new 判定不可例外();
}
} else {// 金曜日の定時前以外
// 仕様確認待ち
throw new 判定不能例外();
}
}
main(){
診断クラス 診断= new 診断クラス (あなた);
ExecutorService 会社= Executors.newFixedThreadPool(1);
会社.submit( 診断 ).get();//診断スレッド実行
}