«anti-patterns» 태그된 질문

반 패턴은 비 효과적이거나 비생산적 임에도 불구하고 일반적인 행동이나 관행입니다.


8
"실패 중심 개발"에 대해 어떻게해야합니까?
우리 가게에서는 민첩 해 지려고 노력합니다. 그리고 우리가 큰 걸음을 내딛고 있다고 말하고 싶습니다. 즉, 우리 중 일부는 "실패 중심 개발"이라고 부르기 시작한 패턴을 발견했습니다. 실패 주도 개발은 기본적으로 버그 / 기능이 작업 및 스토리가 아니라 승인 기준을 통해 결함 추적 소프트웨어에 입력되는 민첩한 릴리스 / 반복 주기로 설명 될 …

12
최악 또는 가장 좁게 정의 된 디자인 패턴은 무엇입니까? [닫은]
모든 프로그래밍 프로젝트에서 과거 프로그래밍 경험이있는 관리자는 프로젝트의 일부 디자인 패턴을 추천 할 때 빛을 발합니다. 디자인 패턴이 의미가 있거나 확장 가능한 솔루션이 필요한 경우 디자인 패턴이 마음에 듭니다. 예를 들어 프록시, 관찰자 ​​및 명령 패턴을 긍정적 인 방식으로 사용했으며 매일 그렇게합니다. 그러나 팩토리가 나중에 객체를 더 쉽게 만들 수 …

9
싱글 톤 패턴의 대안
싱글 톤 패턴에 대한 다른 의견을 읽었습니다. 어떤 사람들은 모든 비용으로 피해야하고 어떤 상황에서는 유용 할 수 있다고 유지합니다. 단일 클래스를 사용하는 한 가지 상황은 특정 클래스 A의 객체를 만들기 위해 팩토리 (F 유형의 객체 f라고 가정 함)가 필요한 경우입니다. 팩토리는 일부 구성 매개 변수를 사용하여 한 번 생성 된 …

8
널이 악한 경우 값이 의미가 없을 때 사용해야하는 것은 무엇입니까?
이것은 반복해서 반복되는 규칙 중 하나이며 저를 당혹스럽게 만듭니다. 널 (null)은 사악하므로 가능할 때마다 피해야합니다 . 그러나 내 순진함에서 비명을 지르는 경우가 있습니다. 때로는 가치가 없을 수도 있습니다! 내가 지금하고있는이 안티 패턴 타기 끔찍한 코드 에서 나온 예제에 대해 물어보십시오 . 이것은 핵심적으로 멀티 플레이어 웹 턴 기반 게임으로 두 …

12
이 코딩 방법을 설명하는 반 패턴이 있습니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 프로그래머가 이해가되지 않는 영역에서 일을 마무리하는 코드베이스가 있습니다. 예를 들어, 오류 로그가 있으면 ErrorLog.Log(ex, "friendly message"); 그는 동일한 …

1
“종료 (-1)”는 어디에서 왔습니까?
내가 사용하는 것이 좋습니다 인터넷에서 기존 소프트웨어와 나쁜 튜토리얼을 많이보고 exit(-1), return -1"비정상적인 종료"를 표현하기 위해 또는 이와 유사한. POSIX에서 문제는 적어도 -1지금까지 없었으며 유효한 상태 코드가 아닙니다. man 3 exit그 설명 exit()을 반환에게의 값 status & 0377그 의미, 부모를 -1하게된다 255. POSIX 이외의 시스템에서는 EXIT_FAILURE이식성을 권장합니다. 그러나 "EXIT_FAILURE는 1 …

6
코드를 주석 처리 한 다음 점진적으로 제거하여 이미 수행 한 작업과 수행 할 작업을 추적하는 것이 왜 잘못 되었습니까?
코드가 잘못되었거나 다른 이유로 인해 필요한 주요 아키텍처 변경 사항에 맞게 조정되어야하므로 코드의 많은 부분을 변경해야 할 때마다 이것이 일반적으로 수행하는 작업입니다. 변경해야 할 것으로 의심되는 모든 코드를 주석 처리합니다. 주석 처리 된 코드를 일종의 TODO 목록으로 취급합니다. 주석 처리 된 코드를 검토 하고이 코드의 주석 처리를 제거하거나 다른 곳에서 …

5
정적 메소드 만 포함하는 *** Helper 또는 *** Util 클래스를 사용합니까?
나는 종종 Java 또는 모든 종류의 언어에서 도우미 또는 유틸리티 클래스에 직면합니다. 그래서 나는 이것이 일종의 안티 패턴인지 여부를 묻고 있었고 이러한 종류의 클래스의 존재는 소프트웨어의 디자인과 아키텍처에서 누락이 부족한 것입니다. 이러한 클래스는 종종 정적 메소드를 사용하여 제한되며 많은 기능을 수행합니다. 그러나 대부분 상황에 따라 다르며 상태가 가득합니다. 내 질문은, …

8
TryGetValue보다 C # 사전을 사용하는 더 좋은 방법이 있습니까?
온라인에서 자주 질문을 찾고 있으며 많은 솔루션에 사전이 있습니다. 그러나 구현하려고 할 때마다 코드 에서이 끔찍한 악취가납니다. 예를 들어 값을 사용할 때마다 : int x; if (dict.TryGetValue("key", out x)) { DoSomethingWith(x); } 기본적으로 다음을 수행하는 4 줄의 코드입니다. DoSomethingWith(dict["key"]) out 키워드를 사용하면 함수가 매개 변수를 변경하기 때문에 안티 패턴을 사용하는 …

1
예외 메시지를 기록하고 다른 예외를 throw하면 여전히 반 패턴입니까?
Google 웹 애플리케이션에서 ExceptionMapper일부 예외를에 매핑 하기 위해를 사용하고 Response있습니다. 다음과 같이 새 예외를 발생시키기 전에 예외 메시지를 기록합니다. catch (SomeException ex) { LOG.error(ex.getMessage()); throw new MyException(ex.getMessage()); } 우리는 같은 예외를 다시 던지지 않기 때문에 이것이 Log and Throw 반 패턴 으로 간주되는지에 대한 질문입니다 . 따라서 비슷한 장소에서 로깅을 …

2
For-Case Antipattern이란 무엇입니까?
오늘의 TDWTF 기사 는 저자의 고백으로 시작됩니다. For-Case 안티 패턴은 안티 패턴으로 비난하는 기사가 많았을 때까지 비교적 최근까지 알지 못했습니다. 나는 아마 어느 시점에서 그것을 사용 했을 것이라고 확신 하지만, 나는 그것을 이름으로 알지 못했습니다 . 일반적으로 for 루프, 사례 설명, 해결중인 문제 또는 세 가지 모두의 조합에 대한 오해를 …

1
펌프 프라이밍이란 무엇입니까? 프라이밍 읽기라고도 함
나는이 표현과 패턴을 배웠습니다. 물론, 그 이름은 물을 펌핑하기 전에 물로 채워야했던 오래된 펌프에서 유래 한 것입니다. 우리는 여기서 코드에 대해 이야기하고 있습니다. 정말 좋은 예와 패턴이 달성하는 것에 대한 설명은 환영받을 것입니다. 이 패턴은 오늘날 어떻게 간주됩니까? 프라이밍은 때때로 루프 작동에 결함이 생길 수 있지만 DRY가 필요 합니다. 따라서 …

7
객체를 변경하는 메소드에 객체를 전달하는 것이 일반적인 패턴입니까?
Martin Fowler의 Refactoring book 에서 일반적인 코드 냄새에 대해 읽고 있습니다. 그런 맥락에서, 나는 코드베이스에서보고있는 패턴에 대해 궁금해했고, 객관적으로 패턴을 반 패턴으로 간주 할 수 있었다. 패턴은 하나 이상의 메소드에 대한 인수로 오브젝트가 전달되는 패턴으로, 모두 오브젝트의 상태를 변경하지만 오브젝트를 리턴하는 것은 없습니다. 따라서 C # /. NET의 참조 특성에 …

2
외부 파일에서 단위 테스트를위한 데이터를로드하거나로드하지 않으려면
단위 테스트를 할 때, 나는 얼마나 많은 데이터를 피드하고 있는지, 그리고 테스트중인 단위로부터 다시 기대할 때 종종 실제 테스트 파일에 포함시켜야합니다. 내가 끊임없이 고투하고있는 트레이드 오프는 : 테스트의 많은 부분 (코드 볼륨)이 입력 및 출력 데이터로 구성되어 있으면 실제로 테스트를 읽는 것이 어려워 보이지만 실제 입출력을 쉽게 볼 수 있습니다. …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.