본문 바로가기
Python

[Python] 파이썬 웹기반 IDE: Jupyterlab, Colab

by Henry Cho 2022. 9. 3.
728x90

파이썬 웹 기반 IDE: Jupyterlab, Colab


포스트 난이도: HOO_Junior

 

[Notice] 포스트 난이도에 대한 설명

안녕하세요, HOOAI의 Henry입니다. Bro들의 질문에 대한 내용을 우선적으로 포스팅이 되다 보니 각각의 포스트에 대한 난이도가 달라서 난이도에 대한 부분을 작성하면 좋겠다는 의견을 들었습니다

whoishoo.tistory.com


# Web-Based Interactive Development Environment

 

파이썬뿐만 아니라 다른 언어를 기반으로 프로그래밍을 한다고 하면 IDE를 설치하는 게 우선이다. 콘솔 창에서 코딩을 하는 것이 불편하기 때문에 코딩을 할 때는 IDE를 활용한다. 그렇기에 프로그래밍을 처음 배우면 먼저 하는 일이 IDE를 설정하는 방법에 대해서 배운다. IDE를 설치했다고 해서 바로 프로그래밍이 가능한 것이 아니라 필요한 라이브러리들을 연결해주는 작업을 직접 해야 한다. 물론 간단한 작업인 경우에는 기본적으로 저장되어있는 라이브러리를 통해서도 가능하지만 대부분의 경우에는 특정한 라이브러리를 가져다 사용해야 되기 때문에 IDE를 설정해주는 게 첫 번째 해야 할 일이다.

 

IDE를 사용한다는 것은 결과적으로 로컬 환경에 영향을 받을 수 밖에 없다. 하드웨어가 충분히 좋으면 이러한 걱정을 하지 않아도 되지만 노트북이나 데스크톱이 성능이 좋지 못한다면 IDE를 통해서 프로그래밍을 하는 게 어려울 수도 있다. 그렇다 보니 태블릿으로 코딩을 한다는 건 공부 목적이나 코드를 보는 목적이지 태블릿 자체로 프로그래밍을 할 수는 없었다.

 

하지만 이제는 웹 기반 IDE로 인해 하드웨어에 대한 부담없이 아무 곳에서나 프로그래밍이 가능해졌다. 웹 기반 IDE에도 로컬 하드웨어를 사용하는 경우도 있지만 최근에는 클라우드 기반으로 IDE를 제공하기 때문에 노트북이나 데스크톱 성능 상관없이 프로그래밍이 가능해졌다. 한마디로 모바일이나 태블릿에서도 웹 기반 IDE를 활용하면 코딩이 가능해졌다는 것이다. 물론 그래도 노트북이나 데스크톱을 사용하는 게 당연히 여러모로 편리한 건 사실이다. 그래도 필자처럼 그래픽 카드와 컴퓨터 성능을 많이 요구하는 개발자의 경우에는 간단한 작업이나 더미 테스트 용도로 웹 기반 IDE를 사용할 수 있게 되어 편리성이 증대되었다.

 

또한 웹 기반 IDE의 경우에는 라이브러리나 플랫폼 설치가 로컬 IDE보다 상대적으로 간단하고 쉽다. 설치에 필요한 링크만 작성해서 입력해주면 자동으로 설치가 이루어지니 경로 설정 문제와 같은 이슈를 고민하지 않아도 된다. 또한 많이 사용하는 라이브러리의 경우에는 기본적으로 설치가 되어 있기 때문에 설치에 대한 불편함이 상대적으로 적다는 장점을 가지고 있다.

 

다만 웹 기반 IDE를 사용하는데 있어서 유의할 점이 있다. 우선은 데이터 저장 및 관리를 유의해야 한다. 웹 기반 IDE의 경우에는 일정 시간이 지나면 코드가 사라질 수 있으니 저장을 별도로 하며 관리를 해주어야 한다. 또한 웹 기반 IDE를 사용함에 있어서 코드의 공개 유무를 잘 확인해주어야 한다. 코드 공개가 가능으로 되어 있다면 다른 사람도 해당 코드를 볼 수 있기 때문에 보완에 있어서 유의하여 사용해야 한다. 또한 웹 기반 IDE는 기본적으로 정해진 메모리와 그래픽 성능을 제공하기 때문에 보다 더 높은 성능을 원한다면 유료 결제가 필요할 수도 있다. 과거에 비해서는 웹 기반 IDE가 많이 발전했고 많이 사용하는 추세이지만 비공개 데이터를 다루는 경우에는 로컬 환경에서 작업을 하는 걸 추천한다.


# Jupyterlab

https://jupyter.org/

 

Project Jupyter

The Jupyter Notebook is a web-based interactive computing platform. The notebook combines live code, equations, narrative text, visualizations, interactive dashboards and other media.

jupyter.org

 

 

Jupyterlab은 Jupyter notebook을 보완해서 나온 새로운 버전의 이름이다. 한마디로 Jupyter notebook 2세대라고 불러도 무방하다. 주피터가 가지고 있는 단점들을 보완하고 업데이트해서 나온 게 주피터 랩이다. 주피터 랩은 로컬 환경에서 작업을 할 수 있을 뿐만 아니라 웹에서 주피터 랩을 사용할 수 있다. 따라서 작업실이나 사무실에서 고정적으로 사용하는 컴퓨터 외적으로 휴대용으로 가지고 다니면서 코딩을 확인하고 작업을 할 때 사용하기 편한 게 바로 웹 기반 주피터 랩이다. 머신러닝 및 딥러닝 프로젝트를 수행하는 데 사용하기 좋으며 필자처럼 데이터 사이언티스트에게도 프로젝트 수행하는데 용이한 툴이다.


# Colab

https://colab.research.google.com/

 

Google Colaboratory

 

colab.research.google.com

구글 코랩은 필자가 자주 사용하는 웹 기반 IDE 중 하나이다. 주피터랩과 같이 머신러닝과 딥러닝 프로젝트를 수행하는데 편리한 웹 기반 IDE이며, 과거에는 개발자들 사이에서 욕을 먹었지만 이제는 많은 개발자들과 개발 팀에서 사용하는 대표적인 웹 기반 IDE이다. 구글 코랩의 가장 큰 특징은 클라우드 기반 웹 IDE이고 데이터를 다루는 개발자에게 편리하다는 것도 있지만 공유가 매우 편리하다는 것이다. 구글답게 구글 드라이브 및 구글에서 사용하는 여러 툴들을 연동하여 사용이 가능하기 때문에 개발자들에게 있어서 코드 브리핑 및 검토하는데 편리하게 사용되고 있다. 코딩이라는 것이 혼자서 불가능하기 때문에 결국 다른 개발자들과 공유하고 이해를 해야 하는데, 이 부분에 있어서 실질적으로 도움이 되는 툴이 바로 코랩인 셈이다. 코랩은 무료와 유료버전을 둘 다 제공하고 있는데 무료 버전으로도 충분한 사용이 가능하다는 점에서 만족스러운 툴이다. 물론 머신러닝을 돌리는 과정이 다소 느릴 수는 있지만 휴대용 노트북으로 아무 곳에서나 테스트해보고 코드를 확인할 수 있다는 점에서 편리하다.


 

728x90

'Python' 카테고리의 다른 글

[Python] 파이썬 변수명 규칙: snake_case, CamelCase  (2) 2022.09.24
[Python] 파이썬 라이브러리(Python Libraries)  (0) 2022.09.08
[Python] Sets란?  (0) 2022.08.08
[Python] defaultdict  (0) 2022.08.04
[Python] def 란?  (0) 2022.08.03

댓글