요다 조건(Yoda conditions) 또는 요다 표기법(Yoda notation)은 프로그래밍 특수용어에서 표현식의 두 부분이 조건문의 일반적인 순서와 반대되는 프로그래밍 스타일이다. 요다 조건은 조건문의 왼쪽에 표현식의 상수 부분을 배치한다.
요다 조건은 심포니[1] 및 워드프레스의 코딩 표준의 일부이다.[2]
이 프로그래밍 스타일의 이름은 비표준 구문으로 영어를 말하는 스타워즈 캐릭터 요다에서 파생되었다[3](발언 예시: "900세에 도달하면 좋아보이지 않을 것이다."[4][5]). 토마스 M. 투에르케(Thomas M. Tuerke)는 요다 표기법이라는 용어를 만들어 2006년에 처음으로 온라인에 게시했다고 주장한다.[6] 그에 따르면 요다 조건이라는 용어는 나중에 2010년 펠릭스 클라우티에(Félix Cloutier)에 의해 대중화되었다.
일반적으로 조건문은 다음과 같이 작성된다.
if ($value == 42) { /* ... */ }
// Reads like: "If the value equals 42..."
요다 조건은 동일한 표현식을 설명하지만 반대이다.
if (42 == $value) { /* ... */ }
// Reads like: "If 42 equals the value..."
One way to look at Yoda's syntax is that it shows signs of favoring OSV syntax (Object-Subject-Verb) as the basic order in the simple clause.
When nine hundred years old you reach, look as good you will not.
When nine hundred years old *you* reach, look as good *you* will not, hmm?