분명히 어떤 프로그래머들은 아무도 이해할 수없는 엄청나게 복잡한 코드를 만들어서 얼마나 똑똑한 지 보여주고 싶어합니다. 다른 프로그래머들은 이러한 높은 수준에서 해고하고 있으며, 솔루션의 합병증은 자연스러운 진화입니다.
내가 본 최악의 코드 중 일부는 2000 줄 이상의 코드가있는 방법이었습니다. 의심 할 여지없이이 코드는 복잡했지만 매우 열악했습니다.
좋은 프로그래머는 지나치게 복잡한 코드를 피한다고 생각합니다. 여기에는 디자인 패턴이 실제로 필요하지 않은 솔루션에 적합하도록 유혹을 피하는 것이 포함됩니다. 또한 신 물체, 마술 단추, 조기 최적화, 조기 일반화 및 기타 반 패턴 방지를 포함합니다.
복잡성 증가는 유기적 인 것이기 때문에 끊임없이 리팩토링하고 솔루션을 단순화 할 수있는 기회를 찾고 있습니다. 다른 많은 유기물과 마찬가지로 계속 사용할 수 있으려면 손질하고 잘라 내야합니다. 복잡성이 증가함에 따라 코드가 깨질 가능성이 높아지기 때문에 지나치게 복잡한 솔루션과 상호 작용하는 것을 싫어합니다.
가독성은 코드 유지 관리의 가장 중요한 요소이며 지나치게 복잡한 솔루션은 거의 항상 가독성을 줄이고 유지 관리 비용을 증가시킵니다.