파이썬으로 할 수 있는 것

DevSmiler·2020년 5월 29일
0

파이썬이 HOT 하다며 ?

요즘 학교에서도, 교육 기관에서도 파이썬을 많이 가르치고 파이썬으로 프로그래밍을 입문하는 비 전공자들이 늘어나고 있습니다. 그래서 파이썬으로 어떤것을 할 수 있는지 한번 얘기를 해볼까 합니다.

  1. 웹 개발(FLASK, DJANGO)
  2. 머신 러닝, 데이터 분석 및 시각화
  3. 어플리케이션
  4. ETC..

웹 개발

대표적인 파이썬 웹 프레임워크(WEB-FRAMEWORK)는 Django(장고) 와 Flask(플라스크)가 있습니다.
그렇다면 두개의 차이점은 무엇일까요 ?

  • 플라스크는 단순하고 가볍습니다. 유연하고 세밀한 제어가 가능합니다. 즉, 개발자의 역량에 영향을 많이 받는 프레임워크입니다.

  • 반대로 장고는 기본적으로 관리자 패널이 제공이 되어서, 제작 속도가 빠르고 데이터베이스 인터페이스와 ORM등이 제공 됩니다. 많은 기능들이 제공됩니다. 또한, 장고 REST Framework가 제공이 되어서 처음 사용하는 개발자들도 쉽게 REST API를 짜는데 유리합니다.

그렇다고 플라스크가 별로냐? 절대 아닙니다. 유연하기 때문에, 다양하게 시도해볼수 있고 처리해야할 구성 요소가 적기 때문에 좋은 선택이 될수도 있습니다.

머신러닝, 데이터 분석 및 데이터 시각화

파이썬에는 머신 러닝을 위한 머신 러닝 라이브러리와 프레임워크가 있습니다.
그 중에 소위 말하는 가장 인기 있는 것은 scikit-learn과 TensorFlow가 있습니다.

  • Scikit-learn에는 대중적인 머신 러닝 알고리즘이 있습니다.
  • Tensorflow는 커스텀 머신 러닝 알고리즘을 구축 할 수 있는 저수준 라이브러리 입니다.

그래서 기계학습을 처음 시작할때는 Scikit-learn으로 시작하고, 효율성 문제가 생기면 TensorFlow를 사용하는게 좋습니다.

머신러닝 입문
보통 Standford 기계학습 과정이 있는 것으로 알고 있습니다. 그리고 먼저 미적분학과 선형대수에 대한 선수지식이 필요한 것으로 알고 있습니다. 국내에는 풀잎스쿨에서 관련 수업이 있는 것으로 알고 있습니다.

데이터 분석 및 시각화
가장 많이 쓰는 것은 Matplotlib입니다. 이유는 시작하기가 쉽고, 다루기가 다른 라이브러리에 비해서 쉬운 것으로 알고 있습니다. Matplotlib와 관련된 내용은 Youtube에 굉장히 많이 있으므로 잘 검색해서 습득하시길 바랍니다.

데스크탑 응용 프로그램과 ETC

응용 프로그램

일반적으로 데스크탑 프로그램은 C, C++, JAVA와 같이 전통적인 네이티브 언어들이 장악하고 있는 영역입니다. 그래서 보통은 이런 언어들을 추천드립니다. 혹은, JAVASCRIPT를 추천드립니다. 그 이유중 하나는 Electron이라는 프레임워크 때문입니다. 최근에 사람들, 회사에서 많이쓰는 Slack은 Elctron으로 만든 것으로 알고있습니다. 뭔가 인터렉티브한 언어는 다은과 같은 언어들을 추천드립니다.

게임

Pygame이라는 라이브러리를 이용해서 게임을 만들수 있습니다. 그렇지만, 게임은 UNITY3D나 Unreal들을 이용해서 제작하는 것이 완성도가 훨씬 높습니다.
(전통적인 영역들은 네이티브들이 강력합니다. 그래도 재미로 만들어보는것은 추천드립니다.)

임베디드 어플

라즈베리 파이가 파이썬으로 동작이 가능한것으로 알고 있습니다.

결론

웹 프로그래밍과 머신 러닝 및 데이터 분석 쪽은 강력하게 추천드립니다.
그 외에, 다른 것들은 취미로 하셨으면 좋겠습니다. 용도에 맞는 언어를 선택하는걸 추천드립니다.

profile
A ship is always safe at the shore, but that is not what it is built for - Albert Einstein

0개의 댓글