SW 개발

[라즈베리파이 나스] python 개발환경 구축하기 - vs-code 서버를 사용해보자 (1)

. . . 2020. 12. 18. 11:26
반응형

python 개발환경 구축과 관련해서 정리한다.

기존 초보자 입장에서의 python 개발환경

필자는 기본적으로 윈도우 환경을 주로사용한다.

윈도우를 베이스로 사용하는 입장에서의 취미 python 코딩은 다음과 같이 개발했었다.

python 을 실행하는 환경은 라즈베리파이 리눅스다. 즉, 개발할때는 윈도우 실행할때는 리눅스에서 실행하게된다.

python 커멘드 직접 실행하면서 print() 로 디버깅

  1. 윈도우에서 코드작성
  2. 코드를 리눅스로 옮김 (삼바를 사용하였을때는 코드를 옮기는 과정 필요없음)
  3. 리눅스에서 코드실행 및 디버깅

위와같이 할 경우 불편한점이 많았다. 일단 print() 함수를 통해 원시적으로 디버깅하다보니 개발속도도 늦어지고, 창을 왔다갔다하면서 매번 실행테스트해보고 하는것이 개발속도도 느리고 버그나 예외상황에 대해서 깜깜이 디버깅을 해야했다.

취미로 개발하는 입장에서 위의 환경은 너무 비효율적이며 불편하다.

python IDE 를 사용하여 개발

  1. 윈도우에서 python IDE 를 코드작성
  2. 윈도우에서 코드 실행 및 IDE 디버깅
  3. 리눅스로 코드 옮길 및 실행

위와같이 할 경우 개발은 빨랐다. 하지만, 문제가 코드를 다시 리눅스로 옮겨서 실행할때 문제가 종종 발생한다. 패키지 의존성이나 path 등의 이슈로해서 윈도우에서 실행할때와 리눅스에서 실행할때의 결과물이 미묘하게 달라지는 경우가 있었다.

그리고, 윈도우의 IDE 개발환경은 pycham을 대부분쓰는데 오묘하게 느리고 무겁다.

반정도만 편리한 느낌

vs-code 서버를 이용하여 개발

  1. 리눅스에 vs-code 를 실행
  2. 윈도우던, 리눅스건 웹브라우져에서 vs-code 서버 접속하여 코딩
  3. vs-code 에서 바로 실행 및 디버깅

위와같이 할 경우가 가장 편했다. 다음과 같은 장점이 있다!

  • 브라우져 기반이니, 에디터를 편집하는 OS 상관없이 동일 ux 환경을 구축할 수 있다.
  • 가벼운 개발환경, vs-code 서버 동작이 생각보다 가볍다.
    • 브라우져라고 해서 느리다거나 굼뜸현상이 거의없다.
  • 에디터 상에서 바로 python 디버깅 및 실행환경제공
    • vs-code 상에서 바로 실행해보기도하고, bash 쉘을 바로 실행할 수있다.
    • break point 에 따른 변수확인등등 디버깅이 원큐에 해결된다.

실행환경예제

다음은 라즈베리파이에서 실행한 환경이다.

vs-code server 는 64bit 빌드만 지원된다. 즉 라즈베리안 32비트의경우 vs-code 를 실행하지 못한다. 라즈베리안 64비트를 사용하자. - 관련 포스팅 : https://xenostudy.tistory.com/619

다음포스팅에서는 vs-code 를 docker 환경에 구축하는 방법을 포스팅하겠다. 그전에 vs-code 서버에서의 실행환경을 맛보자.

패스워드로 보안가능

vs-code 는 아무데서나 브라우져로 접근가능하기때문에 다음과같이 password 를 정하여 최소한의 보안을 지킬 수 있다.

패스워드 입력해야 접속가능

에디팅환경

일반적인 vs-code 와 동일하다. 단 몇가지 차이점은 뒤로가기키ctrl+w 같은 키들은 브라우져가 닫힌다거나, 브러우져의 뒤로가기키가 눌린다거나 한다. 몇가지 키들만 조심하면 동일하게 데스크탑 vs-code 와 환경이 동일하다.

vs-code 와 거의 동일한 에디팅환경

파이선 실행 및 디버깅

파이썬 디버깅이 바로 가능하다! 좌측창을 보면 각 변수도 잘보이고 브레이크포인트도 잘 잡힌다. step by step 으로 바로 디버깅가능하다.

파이썬 디버깅

타겟머신의 쉘 접근가능

터미널 미니 창에서는 호스트의 bash 접근이 가능하다. 즉, 그냥 리눅스를 쓰면된다. 이는 굉장히 편하다. 에디팅을 하면서 라즈베리파이 서버의 각종 쉘 명령어를 바로 실행 할수있다는것이다.

쉘명령바로가능

반응형