나는 따옴표로 시작할 것입니다.
"당신이 가진 유일한 도구가 망치라면, 당신은 모든 것을 못처럼 취급합니다." (에이브 라함 매슬로)
가장 중요한 원칙 인 IMO는 다양한 프로그래밍 패러다임과 언어를 알고 자신이 원하는 도구에 대해 잘 알려주는 것입니다. 당신이 선택한 거의 모든 언어로 모든 문제를 해결할 수 있습니다. 거대한 기본 라이브러리가있는 완전한 주류 언어이거나 AutoHotKey와 같은 작은 특수 언어입니다. 프로그래머의 첫 번째 임무는 문제의 사양에 따라 무엇을 사용할지 결정하는 것입니다. 일부 개념은 정교함, 난독 화, 성능, 이식성, 유지 관리, 작은 코드 크기 등 주요 목표가 무엇이든 주제에 대한 더 나은 접근 방식을 제공합니다.
그렇지 않으면 자신이 전문화 한 하나의 언어로 무언가를 필사적으로 시도하는 일부 프로그래머처럼 끝낼 수 있지만 다른 프로그래밍 컨텍스트에서 문제를 해결하는 것은 사소 할 수 있습니다.
이 조언은 다국어 프로젝트에 대한 오늘날의 경향과 함께 진행됩니다 (예 : C #, JS, CSS, XPath, SQL, XML, HMTL, RegExp ....와 같은 단일 애플리케이션에 여러 언어가 포함될 수있는 웹 애플리케이션을 예로들 수 있습니다. 다른 프로그래밍 패러다임 (예 : C #은 최근에 함수형 프로그래밍 패러다임, 람다에서 일부 개념을 도입했습니다).
그래서 기본은 끊임없는 학습입니다. :)