>  기사  >  백엔드 개발  >  Python의 네 가지 도전자: Swift, Go, Julia, R

Python의 네 가지 도전자: Swift, Go, Julia, R

巴扎黑
巴扎黑원래의
2017-03-29 15:44:241371검색

프로그래밍 언어를 포함하여 영원히 지속되는 것은 없습니다. 미래에는 멋져 보일 것 같은 많은 것들이 잊혀질 수도 있습니다. 거부할 수 없는 이유 때문인지, 아니면 자신의 발전 때문인지.

Python은 현재 "가장 인기 있는 프로그래밍 언어 목록"에 있으며 불멸의 언어가 될 것으로 보입니다. 그러나 이제 다른 많은 언어에서도 편리한 프로그래밍, 수학 및 과학 계산을 위한 강력한 처리 기능, 거대한 타사 라이브러리 등 Python의 장점 중 일부를 점차적으로 보여주고 있습니다.

다음은 Python에 대한 몇 가지 잠재적인 도전자이며 Python이 어떻게 1위 자리를 유지하는지 논의합니다.

스위프트

정의: Apple의 프로그래밍 언어로 기본 iOS 개발에 주로 사용되었지만 이제는 오픈 소스이며 서버 측에서 개발하는 경향이 있습니다.

장점: Swift를 사용한 프로그래밍은 번거로움 없는 경험입니다! 컴파일된 언어(간접적인 전신인 Objective-C 등)보다는 스크립팅 언어(Python 등)에 더 가깝습니다. Swift의 결정적인 장점은 속도입니다. Swift는 LLVM 컴파일 프레임워크에 의해 기계어 코드로 컴파일되므로 진정한 멀티스레드입니다. Python은 이 분야에서 여전히 어려움을 겪고 있습니다.

실행 속도보다 개발 속도가 더 중요하다면 이런 측면에서는 Python이 유리합니다. 그러나 Swift에는 XCode IDE의 "Playground" 모드가 있습니다.

Python의 장점: Python에 비해 Swift는 새로운 프로그래밍 언어입니다. Python은 대규모 사용자 기반, 다수의 라이브러리 및 성숙한 다중 플랫폼 지원 등 성숙한 언어의 모든 장점을 갖추고 있습니다. Swift는 아직 Windows도 지원하지 않습니다(타사 라이브러리를 포함하지 않는 경우). 이는 향후 확실히 구현될 기능이지만요. Swift는 또한 Apple의 도구 체인(예: Xcode)에 의존하는 반면 Python의 종속성은 매우 작습니다.

가세요

**정의:** Google의 "표현력이 풍부하고 간결하며 깨끗하고 효율적인" 언어, Docker 및 관련 프로젝트부터 InfluxDB 데이터베이스, Ethereum의 나쁜 체인 시스템 및 Canonical의 Snappy 패키지 관리 도구에 이르기까지 모든 것이 Go로 작성되었습니다.

장점: Swift와 마찬가지로 Go 언어도 플랫폼별 기계 코드로 컴파일되므로 멀티태스킹에서 Python보다 훨씬 빠를 뿐만 아니라 Python처럼 런타임에 추가 대상을 생성할 수도 없습니다. Go 코드는 매우 빠르게 컴파일되고 매우 빠르게 개발되므로 해석된 언어에 가깝습니다.

Python의 장점: Go는 2009년에 출시된 Swift만큼 새로운 것은 아니지만 Python은 사용자 수와 라이브러리 수 측면에서 여전히 장점이 있습니다. 게다가 Go의 구문과 오류 처리는 Python과 많이 다릅니다. 따라서 이제 Python 사용자가 Go로 전환하는 것이 어렵지만 신규 사용자가 그러한 언어를 선택하는 것을 막지는 못할 것입니다. 이 단계에서 Python의 설치 프로그램을 사용하면 Python이 표준이 된 Linux와 같은 시스템은 말할 것도 없고 Python 애플리케이션을 매우 쉽게 사용하고 구축할 수 있습니다.

줄리아

정의: 2012년에 출시된 이 언어는 데이터 분석 및 선형 대수와 같은 기술 응용 프로그램을 위한 프로그래밍 언어입니다.

장점: Python은 Numpy 및 대화형 IPython 편집기와 같은 라이브러리 덕분에 수학 및 과학 응용 프로그램에 많이 사용됩니다. Julia의 대상 사용자도 Go 및 Swift와 마찬가지로 Python보다 빠릅니다. 또한 과학 및 수학 컴퓨팅 애플리케이션뿐만 아니라 클라우드 공급자로부터 데이터 검색과 같은 많은 Python 기능을 포함하는 패키지가 점점 늘어나고 있습니다.

Python의 장점: Julia는 Python과 유사한 라이브러리를 가지고 있지만 Python은 현 상태에 만족하지 않고 언어의 핵심과 개발 환경을 지속적으로 최적화하고 있습니다. Python의 속도는 Julia(또는 다른 Python 경쟁사)보다 반드시 열등하지는 않습니다. 다양한 작업에 적합한 라이브러리를 선택하는 한 속도는 여전히 객관적입니다.

Julia 언어 자체에는 여전히 몇 가지 논란이 있습니다. 예를 들어, Julia의 배열 첨자는 0이 아닌 1부터 시작합니다. 이는 Python과 비교할 때뿐만 아니라 다른 많은 언어와 비교해도 단점입니다. (타사의 패키지 인덱스도 1부터 시작하는 경우가 많지만 여전히 매우 불편합니다.)

정의: 이것은 개발 환경과 언어 자체 측면에서 매우 오래된 언어입니다. 통계를 위해 특별히 설계되었습니다.

장점: R에는 풍부한 타사 라이브러리와 같은 Python의 많은 장점이 있습니다. 그러나 R은 특별히 통계를 위해 탄생했으며 이후 개발에서도 여전히 여기에 초점을 맞출 것입니다. Python은 수학적, 통계적 계산도 할 ​​수 있지만 이 점에서는 R 언어에 완전히 압도됩니다.

R 언어는 또한 많은 대기업의 관심을 끌었습니다. Microsoft는 클라우드 데이터를 제공하기 위해 R 언어 표준 구현 개발자를 인수했습니다. Hewlett-Packard는 여러 노드에서 동시에 실행할 수 있는 분산 R 언어 컴퓨팅 제품을 개발했습니다. 이 제품은 앞으로 이 분야에서 Python을 완전히 압도할 수 있습니다.

Python의 장점: 때로는 범용 언어라는 것도 장점이 있습니다. R 언어의 기능은 통계 계산으로 제한됩니다. 개발 환경의 한계로 인해 R 언어 애플리케이션을 구축하는 것도 까다롭습니다. Python을 사용하여 애플리케이션을 만드는 것은 매우 간단합니다. 그리고 R과 Python은 RPy2와 같은 패키지를 통해 쉽게 결합될 수 있습니다.

Microsoft는 R 언어에 많은 투자를 했지만 동시에 Python에 대한 지원도 많이 제공하므로 두 언어 모두 Azure에서 매우 잘 작동할 수 있습니다.

원문: Python이 아닌 Python에 대비한 4개 언어

위 내용은 Python의 네 가지 도전자: Swift, Go, Julia, R의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.