실제 응용 프로그램에 D를 사용하는 사람이 있습니까? 그렇다면 무엇을 사용하고 있습니까? D로 작성된 웹에서 큰 것을 찾을 수없는 것 같습니다.
알려진 큰 사용자의 부족에도 불구하고 D는 나에게 매우 무시할만한 언어 인 것처럼 보이고 TIOBE 에 따르면 상당히 인기가 있습니다.
실제 응용 프로그램에 D를 사용하는 사람이 있습니까? 그렇다면 무엇을 사용하고 있습니까? D로 작성된 웹에서 큰 것을 찾을 수없는 것 같습니다.
알려진 큰 사용자의 부족에도 불구하고 D는 나에게 매우 무시할만한 언어 인 것처럼 보이고 TIOBE 에 따르면 상당히 인기가 있습니다.
답변:
컴퓨터 그래픽 분야의 연구 작업에 D를 사용하고 있습니다. 나와 다른 사람들은 D를 사용하여 수행 한 작업을 바탕으로 우리 분야에 논문을 발표했습니다. 성능이 중요한 중소 규모의 연구 프로젝트에 사용할 준비가 된 것 같습니다. 어쨌든 처음부터 시작하기 때문에 연구 작업에 적합합니다. 따라서 통합에 대해 걱정할 레거시 코드가 많지 않습니다.
널리 사용되는 또 다른 영역은 웹 서비스 인 것 같습니다. 다른 사람이이 공간에있는 사람에 대해 언급 할 수 있기를 바랍니다. 그러나 저 역시 아이디어가 성능이 종종 중요하므로 컴파일 된 금속 언어를 원한다고 생각합니다. 서비스는 종종 상당히 작은 자체 포함 프로세스이므로 많은 양의 레거시 C ++ 코드와의 상호 운용이 실제로 필요하거나 유용하지는 않습니다. 따라서 D는 문에 발을 넣을 수 있습니다.
D는 이런 식으로 풀뿌리 추종자들을 계속 얻을 것이라고 생각합니다. 어떤 이유로 든 C ++ 레거시를 버릴 수있는 작은 프로젝트에서 사용하기가 훨씬 더 즐겁고 생산적인 프로그래밍 언어를 얻을 수 있습니다.
그러나 풀뿌리 사용자가 엄청나게 많을 때까지 대기업 사용자에게는 큰 영향을 미치지 않습니다.
저는 D에서 생물 정보학 연구를하고 있습니다. 저에게 D의 핵심은 트레이드 오프에 대해 매우 수준이 높은 접근법을 취하고 수익 감소의 원리를 인식한다는 것입니다.
오버 헤드 제로 (zero-overhead) 원칙을 엄격하게 준수하는 C ++와 달리 D는 언어를보다 유용하게 사용할 수있는 경우 성능 / 공간 비용이 작은 기능을 허용합니다. 여기에는 가비지 수집, 각 클래스의 모니터 객체, 런타임 유형 정보 등이 포함됩니다.
Ruby, Python, PHP 등과 달리 D는 스크립트 언어보다 동적이면서 프로그래밍하기가 다소 어려워도 C만큼 빠릅니다.
결과는 개발 시간과 실행 시간이 똑같이 중요 할 때 최적의 언어이며, 필자의 분야에서는 대부분의 시간입니다.
마찬가지로 D는 안전성과 유연성에 대해 매우 수준 높은 접근 방식을 취합니다. 프로그래머는 기본적으로 자신이하는 일을 알고 있지만 실수를한다고 가정합니다.
C 및 C ++와 달리, 코드의 모든 위치에서 포인터, 안전하지 않은 캐스트, 수동 메모리 관리 등을 사용하고 싶지 않다고 가정합니다. 오류가 발생하기 쉬우므로 크기 조정 배열을 사용하기 위해 망칠 때 -page template 오류 메시지가 표시됩니다.
Java 및 기타 속박 및 훈련 언어와 달리 D는 때때로 포인터, 안전하지 않은 캐스트, 수동 메모리 관리 등이 필요악 한 것으로 가정하고 실제 템플릿, 연산자 오버로드 등을 작성하지 않고 처리 할 수있을 정도로 똑똑하다고 가정합니다. 난독 화 된 코드. 또한 범위를 벗어난 배열을 망쳐 놓고 액세스 할 수 있다고 가정하지만 프로그래머는 주어진 상황에서 안전과 속도 사이에 어떤 트레이드 오프가 이루어져야하는지 잘 알고 있다고 가정합니다. 따라서 배열의 범위 검사 여부는 단순히 컴파일러 스위치에 의해 결정됩니다.
메일 서버 제품을 시장에 보낸 작은 회사가 있습니다. 그들은 적어도 2 명의 사람들이이 프로젝트에서 풀 타임으로 일했습니다.
또한 IT 비즈니스의 주요 업체에는 대규모 내부 프로젝트에서 D를 사용하는 직원이 여러 명 있습니다.
또한 벤처 자금을 찾는 한 회사, D를 파트 또는 풀 타임으로 D를 사용하는 소규모 회사의 직원 (최소 4 명), 컨설팅 시장에서 적극적으로 기회를 찾는 커플 (나 포함)을 알고 있습니다.
나는 아마 내가 알아야 할 몇 가지를, 아마도 내가 들어 보지 못했던 몇 가지를 생략했지만 위의 내용은 내가 커뮤니티를 통해 나 자신을 아는 사람들이 많기 때문에 여전히 존재합니다.
현재 소득의 작은 비율이 D에서 발생합니다.
페이스 북 은 오늘부터 프로덕션 환경에서 사용하고 있다고 발표했다.
컴파일 타임 코드 변환에 대한 연구에서 D를 사용하고 있습니다. 튜플 및 믹스 인과 결합 된 고급 템플릿은 코드 변환을 훨씬 쉽게하고 별도의 도구없이 컴파일 시간 동안 코드 변환을 수행 할 수 있습니다.
D를 메타 프로그래밍하여 프로그램을 향상시키기 위해 D를 사용하는 물리학 자의 예가 있습니다.
비디오 -컨퍼런스 토크, 물리학자가 사용하는 소스 사이트를 찾을 수 없습니다.
트래픽이 많은 전체 네트워크 인프라는 D1과 탱고에만 기반합니다. 우리는 베를린에있는 젊은 스타트 업 회사입니다 : sociomantic.com
Remedy Games 는 게임 을위한 큰 D2 코드베이스를 가지고있는 것 같습니다 (참조 : Manu Evans-DConf 2013 의 게임 엔진과 함께 D 사용 ).
그들은 큰 회사인데, 큰 회사가 D를 사용하고 있다는 것을 알고 있습니다.
다양한 하드웨어 테스트 스테이션에서 테스터 프로토콜을 추적 성 및 그와 유사한 것들을 위해 표준화 된 출력 형식으로 변환하기위한 소프트웨어를 작성했습니다.
D 1.x와 Phobos 라이브러리로 작성된 5k 라인 이상의 코드.
D는 배우기 매우 쉬우 며 (Pobos 라이브러리의) 함정을 무시하고 프로그램하기에 진정한 기쁨입니다.
OS X에서 DGCC를 빌드하는 래퍼 스크립트를 작성했습니다.
http://github.com/davecheney/make-gdc-apple/tree/master
다른 DMD 프로그래머의 의견을 듣고 싶습니다
버전의 두 번째 표준 인 D2를 사용합니다. 실시간 애플리케이션 (예 : 3D 엔진)을 작성했습니다.
언어는 매일 점점 더 강력 해집니다. D는 매우 실용적이며 모든 임베디드 기능, 특히 메타 프로그래밍 패러다임은 C ++보다 훨씬 뛰어납니다. 구문은 더 명확합니다. filter 또는 reduce 와 같은 함수를 통해 기능적 프로그래밍 의 장점을 사용할 수 있으며 가장 중요한 기능 중 하나는 모든 C 라이브러리를 사용할 수 있습니다.
확실히 내가 가장 좋아하는 언어이며, 널리 사용되는 언어가 될 것입니다.
나는 우리 가이 질문에 대한 즉각적인 답변이 부족하다는 것을 읽을 수 있다고 생각합니다. 즉, 많은 스택 스택 플로우 응답자가 D를 사용하고 있지 않다는 것입니다. 또한 TIOBE 목록의 순위 수준에 대해 약간 놀랐습니다. 다음으로 연결.
월터 브라이트 (Walter Bright)는 현재 몇 년 동안이 언어를 연구 해 왔으며 90 년대에 조르 테크 C ++ 컴파일러로 어떤 일을 잘했는지 기억하는 많은 추종자들이 있다고 생각합니다. 또한 언어는 현재 기능적인 방향으로 기울어지고있는 것으로 보입니다.
D의 공식 웹 사이트는 현재 D를 사용하는 조직을 열거합니다.
D 위키는 또한 조직의 목록을 제공하지만 오래된 것.
거의 모든 사람들이 어떤 회사에서 일하고 있으며 직장에서 D를 사용합니다.
Perl에서 D로 내부 도구 중 일부를 다시 작성하는 프로젝트를 시작하고 있습니다. 언어의 디자인 철학에 매우 흥분하여 D를 선택했습니다. 저는 오랫동안 프로그래밍을 해왔으며 어셈블러에서 고급 (대부분 C), 스크립팅 언어 (대부분 Perl)에 이르기까지 많은 언어를 사용했으며 D는 몇 년 동안 배우고 싶은 첫 번째 언어입니다. .
보안이라는 한 가지 주요 이유로 컴파일 된 언어로 전환하기로 결정했습니다. 기능적으로 Perl은 내가 작업하고있는 툴셋에서 잘 작동하지만 안전하지 않다. 스크립트를 실행할 수있는 사람은 누구나 수정 된 버전의 툴을 읽고, 복사하고, 만들 수있다. 나는이 문제를 해결할 수있는 회로적인 방법이 있다는 것을 알고 있지만, 솔직히 말해서 하루 종일 그 모든 것을 관리하고 여전히 내 주요 업무를 수행 할 시간이 충분하지 않습니다.