2008-10-10 2 views
4

전날 전화 시스템에서 일부 이벤트를 구문 분석하고 데이터베이스에 기록하도록 클래스 세트를 설계 했으므로 그렇게 보냈습니다. 내가 다스 클래스 중 5 개를 생성 했으므로 이벤트 매개 변수를 해시 테이블로 파싱하여 이벤트가 무엇인지 파악하고 insert 문을 작성해야한다고 생각했습니다. (모든 이벤트 데이터 + 팩토리를 보유하는 이벤트 및 이벤트 데이터 클래스의 기본 클래스 및 인터페이스 ...)디자인 실수에 대한 가장 큰 문제

전체 설계가 전체적으로 약간 복잡한 작업 이었기 때문에 이벤트를 전혀 조작하지 않습니다.

는 내가 이벤트 헤더와 데이터를 가지고 삽입 쿼리를 돌려 세 가지 방법 ...

에 아래로 새롭게 디자인 한

그래서 ... 오캄의 면도칼 다시 파업 추측

는 이상 당신의 가장 큰 무엇입니까 간단한 탐침의 합병증? 그리고 당신은 당신이 그것을 지옥에 넘기도록 설계했다는 것을 깨달았을 때 언제 "이마 때리는"순간을 보았습니까?

+3

내 전처가 내 사무실에서 페인트 색을 선택하게하십시오. – Kev

+0

매우 재미 있습니다. 롤 –

+0

오컴 (Ockham)이 아닌 오캄 (Occam) – JeeBee

답변

8

추상적 인 클래스를 만들기 전에 두 개 이상의 서브 클래스를 염두에 두어야합니다. 그것은 사소한 것처럼 들리지만, 여러분은 이제까지 쓰여질 수도 있고되지 않을 수도있는 "미래"클래스의 행동에 대한 모든 종류의 가정을 작성하게되고 이러한 가정은 일반적으로 잘못되게됩니다.

2

필자가 가장 많이 저지른 실수는 기존의 기술 구현을 사용하지 않고 기존 솔루션을 잘 알 수 없기 때문입니다. 그래서 네, RESTful 서비스를 개발할 때 HTTPClient를 사용할 수 있었을 때 HTTP의 서브 세트를 다시 구현했다. (내가 REST가 무엇인지를 알지 못했을 때).

2

하나의 시스템에서 다른 시스템으로 통합 게이트웨이를위한 개념 증명을 구현하는 데 일주일이 걸렸습니다.

ThreadExecutionService를 통해 parallell에서 여러 개의 컴플렉스 Commands을 실행하는 CommandExecutionService를 프로그래밍하여 시작했습니다.

그런 다음 10 초 대기 또는 임의 번호 인쇄와 같은 몇 가지 샘플 명령을 만들었습니다.

그리고 오늘 저는 깨달았습니다. 통합은 결과 집합을 구문 분석하고 일부 메시지를 큐에 보내고 큐에서 메시지를 가져 와서 SQL 업데이트를 만드는 것과 같이 간단합니다. 그리고 어쨌든 WAS에 배치됩니다.

그래서 나는

다음에 내가 Perl로 해킹 ... 200 선에서 할 수있는 일을하는 코드의 전체 30 클래스와 함께 지금 여기에 앉아있어.

4

over-design보다 과도한 문제 해결의 문제가 더 많았지 만, 어렸을 때 아버지와 저는 몇 주 동안 상당히 복잡하고 정교한 모델 기차 레이아웃을 구축했습니다. 우리는 열차의 처녀 항해의 "사건"을 계획했다. 모든 것이 마침내 "단지 그렇게"되었을 때, 우리는 변압기를 연결했고, 조절판을 앞으로 밀었고, 기차가 뒤의 가야하는 것을보기 위해 당황했다.

우리가 도구를 집어 들고 다시 전화를 걸 때 엄마가 "왜 기차를 돌아 보지 그래?"라고 제안했습니다.

쉬 쉬.


편집 : 내 자녀가 부호 비트를 뒤집어서 동일한 문제를 해결할 것으로 기대합니다.

2

COM 기반 VBScript 엔진에 구축하고 최종 사용자가 실제로이를 사용하게 될 것이라고 생각합니다.

7

PHP를 한 번 사용했습니다.

2

Windows에서 일괄 처리 스크립트를 만들어 내 HD를 조각 모음하고 차단 했으므로 매일 끝날 때 아이콘을 클릭하면 모든 것이 가능합니다.

불행히도 아침 3시에 'defrag'및 'format'명령을 혼동했습니다.

예, 화면에 '운영체제를 찾을 수 없음'으로 깨우 치는 것이 재미 있지 않았습니다.

+0

정말 overdesign하지 않지만 너무 upvote하지 재미 있습니다. 나는 deltree를 c : \에 사용하는 것을 기억한다. 왜냐하면 나는 c : \ temp에 있어야했다. – Mauro

+0

죄송합니다.하지만 정말 참고하고 싶습니다. https://github.com/MrMEEE/bumblebee-Old-and-abbandoned/commit/a047be85247755cdbe0acce6f1dafc8beb84f2ac 하하! –