Python 수업 보충(1)

류소리·2022년 9월 1일
0

파이썬-복습

목록 보기
1/4

[파이썬 코딩도장 정리]

<1.1 문제 해결을 위한 과학적 사고>

  • Unit 1. 소프트웨어 교육과 파이썬

스마트폰이 나오면서 일상을 변화시켰습니다. SNS를 통해 손쉽게 주변 사람들의 소식을 주고 받고, 몇 번의 터치만으로 은행 업무도 볼 수 있게 되었습니다. 그리고 이제는 스마트폰의 지도와 길 찾기 기능만 있으면 어디든지 정확하게 찾아갈 수 있습니다. 모두 소프트웨어가 발전한 덕분입니다.

의료 분야는 빅데이터와 인공 지능을 통해 최적화된 치료법을 제공해주고 있습니다. 또한, 일상 생활에서도 스마트 워치로 심박수, 혈당 수치 측정, 칼로리 계산까지 가능합니다. 이러한 의료 정보는 모두 소프트웨어로 처리되며 스마트 헬스케어라는 분야로 자리를 잡았습니다.

그리고 빅데이터는 데이터를 기반으로 예측을 하고 과학적으로 의사를 결정하는 분야인데, 대표적인 사례가 서울시 심야버스 노선 최적화입니다. 서울시와 KT는 사람들의 휴대전화 사용 위치, 신용 카드와 교통카드 결제 데이터, 택시 승하차 정보, 휴대전화 청구지 주소 등을 분석하여 실제 유동인구를 파악한 뒤 노선을 최적화하여 심야버스 이용율을 크게 늘였습니다.

이처럼 일상 생활의 모든 분야에 소프트웨어가 적극적으로 활용되면서 예전보다 삶의 질이 눈에 띄게 향상되었습니다. 기업 중에서도 소프트웨어를 적절히 활용한 기업들은 크게 성장했지만 그렇지 않은 기업들은 고전을 면치 못하고 있습니다. 이미 세계 기업 순위는 애플, 구글, 마이크로소프트, IBM 등 소프트웨어 회사가 상위권을 차지하고 있으며 페이스북, 텐센트, 알리바바 등이 새롭게 등장했습니다.

따라서 앞으로는 어떤 분야든 소프트웨어 기술은 필수입니다. 소프트웨어 전문가는 늘 부족한 상태입니다.

<1.1(2) 컴퓨테이셔널 씽킹>

  • 현실 세계의 문제를 분석하여 해결책을 찾는 과학적 사고법을 컴퓨테이셔널 씽킹(computational thinking)이라 하며 이렇게 설계한 해결책을 컴퓨터의 명령어로 작성하는 것을 컴퓨터 프로그래밍이라 합니다.
  • 참고

처리하고자 하는 작업 또는 문제는 다른 말로 요구사항이라고도 부릅니다. 즉, 프로그램을 작성하는 작업은 요구사항을 만족시키는 일이 됩니다.

컴퓨터는 물리적인 기계로 구성되어 있어서 하드웨어라고 하는데 이에 대비되는 개념으로 프로그램은 소프트웨어라고 합니다. 그래서 컴퓨터 프로그래밍은 다른 말로 소프트웨어 개발이라고 합니다.


<1.2 알고리즘과 코딩>

컴퓨터 분야를 공부하다 보면 알고리즘이라는 말을 자주 듣게 됩니다. 그런데 알고리즘이 도대체 어디에 쓰이고 있을까요? 사실 눈에 잘 띄지 않아 멀게만 느껴집니다. 하지만 우리는 알고리즘의 혜택을 많이 보고 있는데 대표적인 알고리즘이 압축 알고리즘입니다

23글자가 8글자로 줄었습니다. 'aaaaabbbccccccddddddddd'를 압축할 때는 반복되는 문자의 횟수를 적어주고, 'a5b3c6d9'의 압축을 해제할 때는 숫자만큼 문자를 반복해주자고 약속하면 됩니다. 생각보다 간단하죠? 컴퓨터에서 쓰이는 압축 알고리즘도 이러한 방법을 사용하고 있습니다(이 방식은 Run-Length Encodig, RLE라고 하며 PCX 그림 파일 포맷에 쓰였습니다. 요즘은 좀 더 다양한 상황에 대응하고 압축 효율을 높이기 위해 훨씬 복잡한 알고리즘을 사용합니다).

<1.2(2) 문제의 패턴 발견과 해결 절차>

문제에서 일정한 패턴을 발견하고, 패턴을 토대로 문제를 해결하는 절차가 알고리즘입니다. 그리고 이 알고리즘을 코드로 표현하는 행동을 코딩이라 합니다(알고리즘을 컴퓨터의 명령으로 작성하는 것을 프로그래밍이라고 하며 코딩과 같은 개념입니다).

  • 참고 | 프로그래밍과 코딩?

어떨 때는 프로그래밍이라고 했다가 어떨 때는 코딩이라고 하고 좀 헷갈리죠? 사실 둘 다 같은 작업을 지칭합니다. 프로그래밍은 컴퓨터 명령어로 표현한다는 뜻이라 컴퓨터 쪽에 가깝고, 코딩은 파이썬 등의 프로그래밍 언어로 코드를 작성한다는 뜻이라 언어 쪽에 가까운 표현입니다.


<1.3 파이썬>

파이썬(Python)은 네덜란드의 귀도 반 로섬(Guido van Rossum)이 개발한 프로그래밍 언어입니다. 귀도는 1989년 크리스마스가 있던 주에 자신이 출근하던 연구실의 문이 닫혀 있어서 취미삼아 파이썬을 만들었다고 합니다. 이후 개발을 거듭하여 1991년에 파이썬을 외부에 공개하게 됩니다. 파이썬이라는 이름은 귀도가 즐겨 봤던 코미디 프로그램인 몬티 파이썬의 날아다니는 써커스 <Monty Python's Flying Circus>에서 따왔습니다.

<1.3(2) 파이썬의 특징>

  • 쉽고 간단한 문법, 배우기 쉬움
  • 객체 지향
  • 다양한 패키지
  • 오픈 소스, 무료

파이썬은 문법이 매우 쉽고 간단해서 초보자들에게 추천되는 언어입니다. 요즘은 대학을 비롯해서 초, 중, 고등학교에서도 프로그래밍 교육에 파이썬을 활용하고 있습니다.

IT 업계에서는 파이썬이 문법이 간단한데다 다양한 패키지가 제공되어 생산성이 높고, 유지 보수 비용이 적게 든다는 점 때문에 널리 쓰이는 언어로 자리잡았습니다. 또한, 과학 계산에 특화된 패키지도 준비되어 있어서 과학, 공학 연구 분야에서도 활발히 사용하고 있습니다.

여기서 패키지는 특정 기능을 미리 만들어 놓은 것을 뜻하는데 패키지를 활용하면 각종 기능을 일일이 만들지 않고, 블록 조립하듯이 간단하게 코드를 작성할 수 있습니다.

특히 파이썬과 파이썬의 패키지는 오픈 소스이며 무료로 제공됩니다. 따라서 비용을 들이지 않고도 실무 및 교육에 활용할 수 있습니다.

https://github.com/namjaeyoon/python.dojang


출처:
https://dojang.io/mod/page/view.php?id=2154 : 코딩도장 - 피이썬

profile
새싹 빅테이터 개발자

0개의 댓글