알씨타운 뉴스레터 Vol.28 > 알씨타운 뉴스레터

본문 바로가기

알씨타운 뉴스레터

NEWS

알씨타운 뉴스레터 Vol.28 작성일 23-08-10

페이지 정보

본문

알자취 28호                                                                 
더 쉽고 빠른 파이썬” 파이파이(PyPy)의 이해

 파이썬은 강력하고 유연하며 다루기 쉬운 언어로 유명하다. 이런 장점 때문에 방대하고 다양한 애플리케이션과 워크플로우, 분야에 사용된다. 그러나 인터프리티드 언어인 데다 런타임의 동적 특성 때문에 파이썬은 C, C++와 같은 머신 네이티브 언어에 비해 속도가 훨씬 더 느리다는 고질적인 단점이 있다. 개발자들은 오랜 시간 동안 파이썬의 속도 제한을 극복하기 위한 다양한 방법을 고민해왔다. 예를 들어 성능 집약적인 작업을 C로 작성하고 이 C 코드를 파이썬으로 래핑하는 방법 같은 것이다. 많은 머신러닝 라이브러리가 실제로 이 방식으로 동작한다. 또는 파이썬 코드에 런타임 형식 정보를 섞어 C로 컴파일할 수 있게 해주는 프로젝트인 사이썬(Cython)을 사용하는 방법도 있다.

 그러나 차선책은 이상적인 방법일 수는 없다. 그냥 파이썬 프로그램을 그대로 가져와 훨씬 더 빠르게 실행할 수 있다면 좋지 않을까? 그 대답이 바로 파이파이(PyPy)다. 
 

파이파이 vs. C파이썬 

 파이파이는 기본 파이썬 인터프리터인 C파이썬(CPython)을 대체한다. C파이썬은 파이썬을 중간 바이트코드로 컴파일하고 이 바이트코드가 가상머신에 의해 인터프리트되는 방식인 데 반해, 파이파이는 JIT(Just-In-Time) 컴파일을 사용해 파이썬 코드를 머신 네이티브 어셈블리어로 변환한다. 

 수행하는 작업에 따라 상당한 정도의 성능 향상이 가능하다. 평균적으로 파이파이는 파이썬 3.7에 비해 파이썬 속도를 약 4.7배 더 높여주며 일부 작업에서는 50배 이상의 속도 향상이 가능하다. 새로운 버전의 C파이썬 인터프리터에도 특정 종류의 JIT 최적화가 추가되고 있지만 현재 파이파이의 범위와 효과에 비할 바는 아니다. 앞으로 대등해질 가능성을 배제할 수 없지만 적어도 지금은 아니다.

 가장 좋은 점은 파이파이가 제공하는 효과를 얻기 위해 개발자가 따로 해야 할 일이 거의 없다는 것이다. C파이썬을 파이파이로 바꾸기만 하면 된다. (다음에서 설명할) 몇 가지 예외는 있지만 파이파이의 공식적인 목표는 기존의 파이썬 코드를 수정 없이 실행하면서 자동으로 속도를 높여주는 것이다. 

 현재 파이파이는 파이썬 2와 파이썬 3을 각기 다른 프로젝트 구현으로 모두 지원한다. 즉, 실행할 파이썬의 버전에 따라 다른 버전의 파이파이를 다운로드해야 한다. 파이파이의 파이썬 2 브랜치가 나온 시점이 훨씬 더 오래됐지만 파이썬 3 버전도 최근 거의 따라잡았다. 현재 파이썬 버전 3.9까지 지원하며 파이썬 3.10은 실험 수준에서 지원된다. 파이파이는 모든 핵심 파이썬 언어를 지원하는 것 외에, 패키징을 위한 pip, 가상 환경을 위한 virtualenv 등 파이썬 생태계의 방대한 툴과도 호환된다. C 모듈을 사용하는 패키지를 포함해 대부분의 파이썬 패키지는 변경 없이 그대로 동작한다. 물론 일부 제한도 있다. 이는 아래에서 살펴본다.

웹디자이너 되는 방법 (하는 일, 전망, 연봉)

웹디자이너가 하는 일은 무엇일까?

 웹디자이너는 웹사이트를 제작하고 관리하는 일을 합니다. 웹사이트를 개발하고 매력적으로 디자인을 더해 웹사이트의 반응 속도와 직관적인 사용자 인터페이스를 지속적으로 테스트해야 합니다.
 
즉, 웹디자이너라고 해서 하루 종일 디자인 작업만 하는 것은 아닙니다. 만약 프리랜서로 일한다면 다음과 같은 업무 일과를 예상해 볼 수 있습니다.
  • 오전 일과: 새 클라이언트와의 계약 작성 및 의뢰받은 업무 시작.

  • 정오 일과: 클라이언트를 위한 사이트맵 및 와이어프레임 개발.

  • 오후 일과: 클라이언트의 웹사이트에서 교차 플랫폼 테스트 실행.



웹디자이너가 되는 방법 9단계
 

 웹 디자인 분야는 지난 수십 년 동안 끊임없이 발전해 왔습니다. 1990년대 중반에는 웹 디자인의 발전으로 온라인 채팅방과 온라인 피자 주문 기능이 나올 수 있었습니다. 2000년대에 접어들고 웹 2.0이 탄생하면서 웹 디자인은 콘텐츠와 검색 엔진 최적화에 활용되기 시작했습니다. 그리고 오늘날의 UX 디자인은 기능적으로 뛰어난 웹사이트를 구축하는 데 있어서 가장 중요한 분야로 손꼽히고 있습니다.


 사실, 웹 디자인은 더욱 정교한 작업을 필요로 하는 분야입니다. 웹 디자인 이론을 통해 오늘날의 웹이 어떤 방식으로 작동되는지 이해하는 과정이 필요하며, 성공적인 웹 디자이너 작업을 수행할 수 있도록 이에 적합한 디자인 도구를 잘 알고 있어야 합니다.


  1. 디자인 이론 배우기

  2. 웹 구동 방식에 대한 기초 쌓기

  3. 웹디자이너가 되기 위한 스킬 쌓기

  4. 디자인 툴킷 제작하기

  5. 구체적인 커리어 방향 설정하기

  6. 포트폴리오 웹사이트 제작하기

  7. 웹 디자인 분야에서 일자리 찾기

  8. 네트워킹하기

  9. 콘텐츠 제작하기

왜 이렇게 MZ를 좋아하세요? 언론, 기업, 정치권에 물어봄
알씨타운 뉴스레터 어떠셨나요?
다음엔 더 알찬내용 전하도록 저, Mr.R이 노력하겠습니다.
지난 주말에 잘 보내주셨나요?
오늘 오후부터 태풍 카눈 우리나라로 오고 있으니 태풍 피해없도록 하시고 실내에서는 문과 창문을 닫고, 외출을 자제하며 기상 상황을 수시로 확인하시면 좋을것같습니다.
2주뒤에 소식 알리겠습니다!! 감사합니다.
(주)소프트랩스
partner@rctown.co.kr
서울특별시 금천구 디지털로121 1610호
T | 02-6494-2848  F | 02-6494-2847

본 메일은 (주)소프트랩스에서 제공하는 정보발송 메일로서,
문의, 입사 지원, 행사 참여 등을 통해 등록된 고객님께 발송되는 메일입니다.


  • 대표자 성제훈
  • 주소 서울특별시 금천구 디지털로 121
  • 사업자등록번호 112-88-00129
Copyright ⓒ Softlabs. All Rights Reserved