Car-tech

Java, C ++ 복잡성으로 좌절 한 Google 경영진

Java vs C++: что выбрать?

Java vs C++: что выбрать?
Anonim

오늘날 상업용 프로그래밍 언어 - - 특히 C ++과 Java는 오늘날의 컴퓨팅 환경에 너무 복잡하고 적절하지 않습니다. Google의 뛰어난 엔지니어 인 Rob Pike는 목요일 O'Reilly Open Source Conference에서 연설을 통해 논평했습니다.

Pike는 오레곤 주 포틀랜드에서 열린 기조 연설에서 기조 연설 중에 "산업 프로그래밍 언어"를 사용했다.

"이 언어는 사용하기가 너무 어려우며 너무 복잡하고 너무 복잡하다. 너무 세심하고 섬세함과 복잡함이있는 것 같다. 시간이 지남에 따라 증가 할 것 "이라고 파이크는 말했다. Pike는 자신과 다른 Google 엔지니어가 개발 한 새로운 프로그래밍 언어 인 Go. 라는 목표를 설명하는 방법으로 이러한 언어의 단점을 자세히 설명했습니다.

Pike는 이러한 언어의 복잡성을 보여주는 예로서 C ++ 코드의 몇 가지 예를 보여줍니다. 하나의 예는 화면의 전체 라인에 거의 뻗어있는 변수 선언이었습니다.

"학교에서 가르치고 산업계에서 사용되는 표준 컴퓨팅 방식은 어떻게 될까요? " 그는 수사학으로 물었다. 이런 종류의 프로그래밍은 "매우 관료적 인 일로 모든 단계가 컴파일러에게 정당화되어야한다"고 Pike는 자신이 약간 우스꽝 스럽다고 인정하면서도 그는 그러한 질문에 여전히 의문을 제기해야한다고 주장했다. C ++은 저급 C 언어로 작업하는 것에 대한 사람들의 좌절감 때문에 생겨 났고 Java는 C ++을 단순화하는 방법으로 등장했습니다. 그러나 시간이 지남에 따라 새로운 기능이 두 언어에 추가되어 더욱 복잡해졌습니다.

파이크는 멀티 코어 처리의 출현 전에 이러한 언어가 개발되었다고 덧붙였습니다. 널리 퍼진 네트워킹으로 인해 이러한 새로운 환경을 쉽게 수용 할 수 없습니다.

파이크는 전통적인 상업용 언어에 대한 불만을 표하는 고독한 Google 직원이 아닙니다.

지난 달 USENIX 연례 회의에서 Gmail 기술자 인 Adam de Boor 이 회사의 Gmail 서비스가 전적으로 자바 스크립트로 작성되었으며, 약 443,000 줄의 코드가 모두 손으로 작성되었다는 사실에 주목하여 고객을 놀라게했습니다.

그는 자바가 표현력이 풍부하면서도 더 자세한 정보를 제공한다고 지적했습니다.. 드 보어는 "이 시점에서 나에게 사용하는 언어는 선택의 문제이다."자바 스크립트는 지난 10 년 동안 개발 된 루비와 파이썬을 포함하는 전체 언어 모음 중 하나이다 C ++ 및 Java의 복잡성이 증가함에 따라 그러나 더 간단한 구문을 사용하는 동안 그러한 언어에도 단점이 있다고 그는 주장했다.

이 새로운 언어는 더 느리고 경향이없고 더 많은 오류를 감당할 수 있다고 파이크는 정교했다. 컴파일되기보다는 해석되는 경향이 있습니다. 즉, 이러한 언어로 작성된 프로그램은 실행 전에 컴파일되지 않으므로 결과적으로 느리게 실행되는 경향이 있습니다. 또한 동적 유형 지정을하는 경향이있어 프로그래머는 변수가 보유 할 데이터 유형을 지정할 필요가 없습니다. "동적 유형 지정은 반드시 좋지는 않습니다. 런타임에 정적 오류가 발생하여 실제로 수행 할 수 있어야합니다 컴파일 타임에 잡아라. "라고 말했다.

이 점을 염두에두고 파이크는 고 (Go)가 두 언어의 최상의 속성을 융합하려는 시도라고 묘사했다.

"이동은 안전과 성능을 결합하려는 시도이다. 동적 유형의 해석 언어를 편리하고 재미있게 정적으로 입력 한 언어로 번역했습니다. "라고 말하면서 추가하기 전에"성공하면 자동으로 판단해야 할 것입니다. "라고 말했습니다.

청중의 한 명인 Larry Augustin, 고객 관계 관리 소프트웨어 공급 업체 인 SugarCRM의 CEO는 Pike의 평가에서 C ++과 Java가 너무 복잡해 졌다고 동의했지만, 이는 일반적으로 광범위한 언어의 사용 사례를 충족시키기 위해 모든 언어에서 증가하는 것으로 나타났습니다.

"언어가 복잡해지면서 사용되는 언어가 많을수록 더 많은 오류와 모호성이 발견되었고 이러한 모호성과 오류를 제거하려는 시도는 좀 더 복잡해졌습니다."라고 Augustin은 말했습니다. 소프트웨어 엔지니어링 및 프로그래밍 언어 디자인의 배경 "이라고 말했습니다."파이크의 노력에 대해 "나는 그의 목표에 감사드립니다. Joins Jackson은 엔터프라이즈 소프트웨어 및 일반 기술 관련 뉴스를 다루고 있으며, IDG News Service는 "

. @Joab_Jackson에서 Twitter의 Joab을 팔로우하십시오. Joab의 전자 메일 주소는 [email protected]입니다.