나는 몇 년 동안 전문 코더였습니다. 내 코드에 대한 의견은 일반적으로 동일합니다. 테스트를 거친 훌륭한 코드를 작성하지만 더 빠를 수 있습니다 .
그래서 내가 어떻게, 더 빠른 코더 될 수 있나요 품질을 희생하지 않고? 이 질문을 위해 범위를 C #으로 제한하겠습니다. 주로 내가 코딩 (재미를 위해) 또는 Java는 중요한 여러 가지면에서 충분히 유사하기 때문에 범위를 C #으로 제한합니다.
내가 이미하고있는 것 :
- 작업을 수행 할 수있는 최소한의 솔루션 작성
- 많은 자동화 된 테스트 작성 (회귀 방지)
- 모든 종류의 것들에 대해 재사용 가능한 라이브러리 작성 및 사용
- 잘 작동하는 잘 알려진 기술을 사용하십시오 (예 : 최대 절전 모드).
- 적절한 곳에 디자인 패턴을 사용하십시오 (예 : 싱글 톤)
이것들은 모두 훌륭하지만 시간이 지남에 따라 속도가 증가하는 것처럼 느끼지 않습니다. 나는 어떻게 내가 (심지어 10 %) 내 생산성을 높이기 위해 뭔가를 할 수 있다면, 그건 내 경쟁사보다 10 % 더 빠른 있기 때문에주의를. (아무것도 없습니다.)
게다가 소규모 Flash 개발이든 엔터프라이즈 Java / C ++ 개발이든 상관없이 관리자로부터 지속적으로이 수수료를 받았습니다.
편집 : 금식의 의미와 속도가 느린 지에 대한 질문이 많이 있습니다. 좀 더 자세히 설명하겠습니다.
다양한 프로젝트와 다양한 기술 (Flash, ASP.NET, Java, C ++)을 통해 여러 회사의 중소 규모 팀 (5-50 명)에서 근무했습니다. 내 관리자 (직접 나에게 말한)의 관찰은 내가 "느리다"는 것입니다.
이것의 일부는 상당수의 동료들이 속도를 위해 품질을 희생했기 때문입니다. 그들은 버그가 많고, 읽기 어렵고, 유지하기가 어렵고, 자동화 된 테스트를 작성하기 어려운 코드를 작성했습니다. 내 코드는 일반적으로 잘 문서화되고 읽기 쉽고 테스트 가능합니다.
Oracle에서는 다른 팀 구성원보다 느리게 버그를 해결하려고합니다. 나는 그 효과에 대한 의견을 얻을 것이기 때문에 이것을 알고 있습니다. 이는 다른 (예, 상급 및 경험이 많은) 개발자가 거의 동일한 품질 (가독성, 유지 관리 성 및 테스트 가능성)로 저보다 짧은 시간 내에 작업을 수행 할 수 있음을 의미합니다.
왜? 내가 무엇을 놓치고 있습니까? 어떻게하면 더 나아질 수 있습니까?
최종 목표는 간단합니다. 오늘 40 시간 안에 제품 X를 만들 수 있고 내일 20, 30 또는 38 시간에 같은 제품을 만들 수 있도록 어떻게 든 개선 할 수 있다면 이것이 제가 알고 싶은 것입니다. 내가 거기 어떻게? 지속적으로 개선하기 위해 어떤 프로세스를 사용할 수 있습니까? 코드 재사용에 관한 것이라고 생각했지만 충분하지 않습니다.