본문 바로가기
개발/게임) 개발관련

개발원칙)YAGNI("You Aren't Gonna Need It")

by 테샤르 2024. 11. 3.

YAGNI("You Aren't Gonna Need It")

 

YAGNI는 (You Aren't Gonna Need It)의 약자로,

소프트웨어 개발에서 불필요한 기능이나 코드를 미리 구현하지 말자는 원칙이다.

개발을 진행하다보면 너무 복잡하게 설계하거나 실제 구현하는것 보다 추측해서 개발하는것들이 생기는데

그렇게 점차 더 많은 비용과 개발 시간이 낭비가 되는 경우가 생긴다.

 필요한 것만 먼저 구현하는것을 우선순위로 두는 것이다.

반응형

 

< 기본 원칙 >

 

미래를 완전히 무시하라는 뜻이 아니고 지금 필요한 기능을 가장 우선순위로 둔다.

소프트웨어 개발에서 추가 요구 사항이나 기능이 나중에 필요할 가능성이 있다 하더라도,

 실제로 필요할 때 구현하는 것이 더 효율적일수도 있고, 확장이 가능한 형태 정도로만 개발을 진행한다.

 

< 장점 >

특징 설명
코드 복잡성 감소 필요하지 않은 기능을 추가하면 코드가 복잡해지고 유지보수가 어려워집니다.
개발 속도 향상 불필요한 작업을 줄이므로 개발이 더 빠르게 진행됩니다.
유연한 설계 필요에 따라 기능을 추가하게 되면 더 유연하고 실제 요구 사항에 맞는 설계를 할 수 있습니다.
낭비 방지 필요한 기능에만 리소스를 집중하게 되어 시간과 비용을 절감할 수 있습니다.

 

 


YAGNI는 애자일 소프트웨어 개발에서 많이 사용되는 원칙으로, 

꼭 필요한 기능을 먼저 구현하고, 필요할 때 필요한 기능을 추가하자는 점에서 기능 추가를 신중하게 관리하는 데 도움을 준다.

 

★★☆☆

 

반응형

댓글