TL; DR
당신은 그것을 모두 알 수 없습니다. 당신이 알 수있는 모든 "사물"주위에는 항상 더 깊이와 폭이 있습니다. 가면서 배우십시오. 지금 적절하다고 생각되는 "모범 사례"를 적용하십시오 . 실수하다. 비용 이 많이 드는 실수 를 피하십시오 . 프로젝트가 비용이 많이 드는 실수로 이어질 수있는 경우 멘토를 찾으십시오.
그리고 지금 긴 대답은 ...
1. "작업 소프트웨어는 진행의 주요 척도입니다." ( 애자일 선언문 )
지식의 가장자리를 볼 수 있다면 정말 좋습니다! 가장자리를 추구하십시오! 계속 배우도록! 그러나 명심하십시오, 당신은 영원히 배우고 분석 할 수 있습니다 .
무언가를 만드십시오.
2. 배우고 실수하십시오. "나쁜"것을 만들지 마십시오. *
지식 / 기술의 한계를 뛰어 넘으십시오. 당신 은 실수를 할 것입니다. 그들에게서 배울 수 있습니다. 그러나 무모 할 필요는 없습니다 .
보다 숙련 된 개발자 및 멘토를 찾고 작업하는 데 소요되는 시간 은 프로젝트 의 비즈니스 가치 및 위험 프로파일 에 비례하여 증가해야합니다 .
직접 CLI 를 작성하는 경우 : 원하는대로 작동 시키십시오.
당신은 은행의 웹 포털을 작성하는 경우 : 서라운드 자신과 매우 숙련 된 개발자.
3. "모범 사례"는 따옴표로 작성하고 윙크로 말해야합니다.
"실습"은 X 가 적어도 일부 경우 에 성공한 것으로 관찰 될 때 "모범 사례"로 승격됩니다 . 누군가는 혜택 X 를 달성하기위한 실습 A 의 이점을 인식하고 이를 인터넷에서 "모범 사례"로 선언합니다. 다른 사람들은 종종 합당한 이유 때문에 동의합니다. 그러나 그 시점부터 우리는 일반적으로 일부 관행이 "우수 관행"이고 다른 관행이 "반 패턴" 또는 "고약한 " 이유를 파악하지 못합니다.
문제는 "모범 사례"가 결코 자립하지 않는다는 것입니다. "앤티 패턴"은 실제로 그 자체로는 악마적인 것이 아닙니다. 심지어 "스텐 치"조차 가끔 부패에서 나옵니다. 때로는 그 악취가 공상적이고 맛있는 치즈 일뿐입니다 ...
당신은 같은 것을 실행하지 않는다 "의존성 주입" "의존성 주입은"이기 때문에 (DI)를 본질적으로 비즈니스에 가치. 작동하는 제품을 제작하는 데 원격으로 필요한 것은 아닙니다. 그것은 수행 뭔가 는 것을 아마 원하는 최종 제품에 있습니다. 그러나 그것은 또한 이익을 위해 일을 더 오래 걸리게 할 수도 있습니다 ...
흠 ...
따라서 "모범 사례"를 따라야합니까? 당신이 그들을 이해하지 못하는 경우에도? ... 어 ... 네. 아니요 그러나 그렇습니다. 그러나 귀하와 귀하의 소프트웨어 및 그 목적에 실제로 적용되는 것만 해당됩니다.
POAP를 호출하십시오 ! (예. 내 블로그)
원칙, 패턴 및 관행은 최종 목적이 아닙니다.
그러므로 각각의 훌륭하고 적절한 적용은 우수하고보다 최종적인 목적에 의해 영감을 받고 제한됩니다. 왜하고있는 일을하고 있는지 이해해야합니다!
(POAP는 POAP에서 면제되지 않습니다.)
따라서 DI의 모든 뉘앙스를 완전히 이해하지 못할 수도 있습니다. 그러나 의도를 이해하면 DI를 "사용해야"하는지 알 수 있으며 DI를 암시 적으로 더 잘 이해할 수 있습니다.
그리고 제품을 출시하면 DI (또는 무엇이든)가 실제로 유익한 지 여부를 반영 할 수 있습니다. 그렇다면 서면으로 이유를 분명히하십시오. 그렇지 않은 경우 서면으로 이유를 분명히하십시오 ...
보너스 독서 / 다소 관련 :
분석 마비 는 일입니다. 분석하고 배워야합니다. 그러나 일을 끝내야합니다. 균형.
당신은 항상 카우보이 코더처럼 느낄 수 있습니다 .
* 당신은 실제로 할 것이다 당신은 아무것도에 주목을 할 경우 나쁜 실수를합니다. 하지만 당신은 인간입니다. 우리는 당신을 미리 용서합니다. 아마도. ... 글쎄 ... 우리는 볼 수 있습니다.