요즘IT
위시켓
최근 검색어
전체 삭제
최근 검색어가 없습니다.

본문은 요즘IT와 번역가 Mr.P가 함께 만든 해외 번역 콘텐츠입니다. 이 글을 작성한 Frank Andrade는 데이터 과학 및 프로그래밍 기술에 관한 다양한 글을 업데이트하고 있으며, 총 400만이 넘는 누적 조회수를 기록할 정도로 인기 에디터입니다. 이번 글은 파이썬이 느리다는 편견이 왜 불필요한 논쟁인지 설명하는 내용입니다.

회원가입을 하면 원하는 문장을
저장할 수 있어요!

다음

회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!

확인

개발

“파이썬은 느리다”에 대한 반론

년차,
어떤 스킬
,
어떤 직무
독자들이 봤을까요?
어떤 독자들이 봤는지 궁금하다면?
로그인

 

본문은 요즘IT와 번역가 Mr.P가 함께 만든 해외 번역 콘텐츠입니다. 이 글을 작성한 Frank Andrade는 데이터 과학 및 프로그래밍 기술에 관한 다양한 글을 업데이트하고 있으며, 총 400만이 넘는 누적 조회수를 기록할 정도로 인기 에디터입니다. 이번 글은 파이썬이 느리다는 편견이 왜 불필요한 논쟁인지 설명하는 내용입니다.

 
파이썬 거북이
<출처: Shutterstock>

 

예, 파이썬은 아마 느릴 겁니다. 그래도 우리는 여전히 잘 사용하고 있습니다.

 

저는 살면서 다음 문장을 얼마나 많이 들어봤는지 셀 수조차 없습니다.

 

“파이썬은 느린 속도의 프로그래밍 언어입니다”

 

이는 사실일지도 모릅니다. 실제로 파이썬은 자바(Java)나 C++에 비교하면 느린 축에 속합니다. 그러나 사실 실제 응용 프로그램 개발(적어도 모든 단계에서는 아닙니다)이나 소규모 프로젝트에서 속도가 가장 우선순위가 되는 부분은 아닙니다.

 

몇몇 사람들은 파이썬이 얼마나 느린지 영원히 깨닫지 못할지도 모릅니다. 몇몇 실제 응용프로그램에서는 0.01초와 0.1초 그리고 1초의 실행 시간이 아무런 차이가 없기 때문입니다. 파이썬이 느리거나 말거나 신경을 쓸 필요가 없는 이유를 지금부터 알아봅시다.

 

0.01초, 0.1초, 1초가 그 어떠한 차이도 만들어내지 못합니다

저는 지금까지 속도를 가장 우선순위로 하는 프로젝트에 참여해왔습니다. 애플리케이션이 느리다면 아마 고객을 잃을 수도 있었습니다. 그러나 모든 단일 애플리케이션이 ms 단위의 실행 시간을 보장해야 하는 것은 아닙니다.

 

몇몇 경우에서, 개발 속도는 프로그램의 실행 속도보다 더 중요합니다. 왜 스포티파이가 파이썬을 사용하는지에 대해 링크를 통해 확인해보세요.

 

속도는 스포티파이에 있어서 중요합니다. 파이썬은 개발 속도에 있어서 큰 이점이 있기 때문에 이러한 우리의 신념에 잘 맞습니다.

 

다른 경우에서도 응용프로그램의 퍼포먼스는 개발을 완료하는 것 자체보다 중요하지 않습니다. 예를 들면, 파이썬은 자동화에 있어서 가장 인기 있는 언어입니다. 자동화하고 싶은 업무가 생기면, 스크립트가 0.1초가 걸리든 1초가 걸리던 문제가 되지 않습니다. 가장 중요한 것은 자동화 스크립트를 작성하는 데 걸리는 시간입니다.

 

여전히 언제나 빠른 실행 속도가 제일 중요하다고 생각하신다면 다음 예시를 같이 보겠습니다.

 

SSC 투아타라
<출처: Unsplash>

 

구글에 따르면, SSC 투아타라(SSC Tuatara)는 316.11 mph의 속도를 가진 세계에서 가장 빠른 자동차입니다. 그래서 모든 사람이 SSC 투아타라를 운전할까요? 그럴 리가요.

 

대부분 사람이 SSC 투아타라를 구매하지 않는 이유는 비단 가격뿐만이 아닙니다. 세계적으로 가장 많이 팔린 자동차는 도요타의 코롤라입니다. 왜냐하면 그것은 실용적이며 사용하기 쉽고, 큰 불편함 없이 운행을 마칠 수 있기 때문입니다. 저는 여러분이 SSC 투아타라에 대해 위와 같은 말을 할 수 없다고 확신할 수 있습니다.

 

반면 파이썬은 도요타 코롤라와 비슷하다고 말할 수 있습니다.

 

 

파이썬은 빠른 확장을 도와줍니다

파이썬은 가독성이 좋고, 작성 또한 쉽기 때문에 배우기도 쉽습니다. 플랫폼 간 지원을 생각하면 파이썬은 빠른 확장을 위한 좋은 선택지가 될 것입니다.

 

어느 드롭박스(Dropbox) 엔지니어는 그들의 플랫폼을 위해 왜 굳이 파이썬을 채택했는지 링크 속 글을 통해 설명했습니다.

 

플랫폼 간 지원성, 좋은 가독성, 배우기 쉬운 점, 파이썬의 이러한 강점들이 드롭박스의 빠른 확장을 위해서 꼭 필요했습니다. 파이썬을 통한 기민한 개발 사이클은 구현과 테스트 그리고 새 기능 배포에 있어서 중대한 요소입니다.

 

오늘날 드롭박스는 Go와 Rust 같은 다른 프로그래밍 언어에도 의존합니다.

 

이것은 굳이 한 프로그래밍 언어만을 고집할 필요가 없는 것을 보여줍니다. 실제로 대부분의 대형 응용프로그램은 한 가지 이상의 언어로 작성되었습니다. 즉, 여러분이 선호하는 언어가 대부분의 대형 응용프로그램에서 독점적으로 사용되지 않습니다.

 

스포티파이레딧도 파이썬을 그들의 백엔드에서 사용합니다. 그러나 그들은 다른 언어 또한 함께 사용합니다. 스포티파이의 백엔드는 ZeroMQ를 통한 자체 메시지 프로토콜로 연결된 상호 의존적인 서비스들로 이루어져 있습니다. 그중 대략 80%의 서비스가 파이썬으로 작성되어 있습니다.

 

일반적으로 파이썬으로 작성되지 않은 서비스들은 자바로 작성되나 우리는 C와 C++를 사용하기도 합니다.

 

파이썬은 아마도 빠른 퍼포먼스를 보여줘야 하는 프로그램의 중요한 부분에 사용되지 않을 것입니다. 그러나 그것이 파이썬의 가치를 폄하할 수는 없습니다.

 

 

일부 분야에서 프로그래밍은 목적을 위한 수단에 불과합니다

파이썬은 컴퓨터 과학과 관련이 없는 많은 분야에서도 사용됩니다. 아마도 파이썬은 통계학자, 데이터 과학자, 데이터 분석가, 관리자, 그 밖에 다른 분야의 사람들을 위한 첫 번째 언어일 것입니다. 왜 그럴까요? 간단합니다. 파이썬은 비전공자 프로그래머들이 가장 접근하기 쉬운 언어이기 때문입니다.

 

컴퓨터 과학이 아닌 다른 분야의 전문가들에게 있어서 프로그래밍을 배우는 것은 CPU 런타임이나 코드의 실행 속도에 관한 것이 아니라 오직 작업을 완료하기 위해서 코딩하는 방법을 배웁니다.

 

데이터 분석가나 과학자는 수백 줄의 코드를 유지 보수할 필요가 없습니다. 메모리 관리나 효율성을 걱정할 필요도 없고, Git[1]을 통해 일할 필요도 없습니다. 실제로 그들에게 있어서 모델의 성능과 분석이 더 중요합니다.

 

파이썬과 함께라면 당신은 굳이 이미 있는 걸 새로 만들 필요는 없습니다. 파이썬 생태계에는 비전공자 프로그래머들이 쉽게 작업을 완료할 수 있도록 도와주는 수백 개의 프레임워크가 존재합니다.

 

데이터 분석을 원하십니까? Pandas나 Numpy를 사용해보세요.

웹 개발을 하고 싶으신가요? Flask가 존재합니다.

머신 러닝의 구현이 필요하시나요? Sklearn, 혹은 Tensor Flow를 사용할 수 있습니다.

 

파이썬 라이브러리 숫자는 점점 늘어가고 있고, 이에 따라 굳이 원하는 기능을 처음부터 개발할 필요가 없습니다. 때때로 사업에 있어서 이것은 좋은 일입니다. 이런 기능을 개발할 수 있는 전문가들의 급여는 작업을 수행하는데 필요한 도구 및 구성 요소보다 더 비싸기 때문입니다.


[1] 코드를 협업, 관리하기 위해 존재하는 소스 코드 버전 관리 툴

 

<원문>

In Defense of “Python is Slow”

 

위 번역글의 원 저작권은 Frank Andrade에게 있으며, 요즘IT는 해당 글로 수익을 창출하지 않습니다.

좋아요

댓글

공유

공유

댓글 6
작가
476
명 알림 받는 중

작가 홈

작가
476
명 알림 받는 중
요즘 해외 개발자들은 어떻게 일할까요? 기획자나 디자이너는요? 그래서 준비했습니다. 읽어볼만한 해외 소식들을 번역해 전합니다. "We are the world."

좋아요

댓글

스크랩

공유

공유

요즘IT가 PICK한 뉴스레터를 매주 목요일에 만나보세요

요즘IT가 PICK한 뉴스레터를
매주 목요일에 만나보세요

뉴스레터를 구독하려면 동의가 필요합니다.
https://auth.wishket.com/login