비전공자의 Python 파이썬 프로그래밍 배우기 (인프런 인강)
펀조조의 2020년 목표 중 하나인 파이썬 배우기!!!
개발의 개도 모르고 프로그래밍이라곤 1도 모르는 내가
드디어 뭔가 배워보려고 시작했다.
이 포스팅은 까먹을까봐 정리해두는 거임
교육 플랫폼 서비스 인프런에서 새로운 강의가 올라와서
파이썬 공부를 시작하고자 공부일지를 쓰려 한다.
수강명 : 프로그래밍 시작하기 : 파이썬 입문
이미 3,000명이 넘는 수강생이 있고 별점도 5개로 높은 편이기에 믿고 들으려 한다.
나는 분명 까먹을 테니
기록하며 정리하는 습관을 들이고자 여기에 쌓아두려 한다.
입문과정은 총 54강이고
강의 시간은 12시간 39분이라고 써있네
하루에 30분씩만 들어도 25일이면 끝나는 과정이니
하루에 1시간만 들으면 약 2주면 마치려나?
일단 차근차근 배워서 나중에 내가 하고싶은 것들 다 자동화 시켜버리고
크롤링도 배워놓을테다.
이건 취업을 위해서가 아니라 순전히 내 개인적인 사사로운 욕심으로 시작된 일
해보고 싶은게 많기에 더 동기부여가 적지 않게 되고 있다.
#1. 첫째날 (0214)
- 오리엔테이션만 듣고 자야겠다.
Chapter 1-1. 파이썬&프로그래밍 소개
<< 프로그래밍 기초 >>
■ 프로그래밍이란?
: C, C++, JAVA, Python, vd, pascal, ruby
영문(인간이 만든 언어) > 컴파일러 > 기계어 > CPU > 실행 > 결과물
브라우저를 통해서 네이버를 볼 수가 있고
휴대폰으로 카톡을 하는 등
우리가 활용할 수 있는 것이 많다
이러한 일련의 과정을 프로그래밍이라고 한다.
요약하면
사람이 읽고 이해할수 있는 언어를 가지고 어떤 프로그램을 만드는 과정을 프로그래밍이라고 한다.
■ 코딩 공부 방법
1. 디버깅 (내 의도에 맞게 프로그램이 실행 되는지 확인)
2. 알고리즘, 자료 구조 (코딩테스트 필수)
3. 다른 사람의 소스 코드 참조 (github - 오픈 소스)
다른 사람의 소스 코드를 보는 것은 큰 공부가 된다.
나보다 더 뛰어나고 깔끔하고 중복을 줄이는 소스가 많기에
다른 사람의 소스를 꼭 확인해 보고 취할 것은 취하고 정리하는게 좋음
4. 주석 (코드의 이해 증가)
5. 자기가 만들고 싶은 프로그램을 정확하게 정의하는 것
■ 좋은 프로그램이란?
좋은 프로그램에서 나타나는 특징
1. 코드의 가독성
: 한 번 만들어 놓고 끝이 아니라 모든 어플리케이션은 수정과 개선이 이루어진다.
한번 작성했던 코딩 프로그램을 나중에 다시 한 번 몇 번 수십 번 또는 다른 사람이 수정할 수 있다는 것
그 때 코드가 가독성이 낮으면 유지보수가 어렵다.
처음 만들 때 읽기 좋은 코드를 고려해서 나 뿐만이 아니라 다른 사람이 보기에도 쉽도록 작성하는게 매우 중요함
2. 코드의 길이 (가독성과 연관)
: 불필요한 변수는 나중에 완성이 된 뒤에 제거할 것
3. 변수의 이름 (중요!★)
: 변수에 네이밍 이 이름을 가지고 실력을 판단할 수 있다. 이런 의도로 이런 변수를 선언했구나, 직관적으로 이해할 수 있는 네이밍을 쓰는게 좋다.
4. 중복 코드 줄이기
: 코딩을 해서 한 글자라도 입력을 하면
그것 자체가 실행시에 메모리를 잡아먹는 것
불필요한 코드를 줄여야 코드의 가독성도 줄어든다.
공간복잡도와 시간복잡도 이런것들을 최대한 감소시켜서 빠르게 실행되고
사양이 낮은 하드웨어에서도 실행이 잘 된다는것.
비용도 감소시킬 수 있다.
최적화된 코딩 기법에 따라서 프로그램을 작성하는게 좋다.
<< 파이썬을 배우는 이유 >>
■ 파이썬 장점
파이썬을 내가 왜 배워야 하는가?
구글에 "파이썬 유징 사이트" 검색해보면 파이썬으로 만들어진 사이트들을 확인할 수 있다.
인스타그램, 구글, 유투브 등 이런 굵직한 기술 트렌드를 이끌어가고
새로운 기술을 창출해 내는 회사들이 이미 파이썬을 많이 사용하는것을 확인할 수 있다.
전세계적으로 JAVA, C, C++, 파이썬 을 많이 사용한다.
파이썬을 이용해서 할 수 있는 일만 말하자면
* 일단 쉽다. 매우 간결하고 쉽다!
: 처음 코딩을 배울 때 C나 JAVA 같은 경우는 선행학습이 필요하지만
파이썬은 쉽다! 인간의 언어 체계와도 흡사하고 유사하다.
* 오픈소스의 강력함!! (이게 핵심)
: 짧은 시간에 고도화된 복잡한 어플리케이션을 빠르게 만들 수 있다.
* 빠른 개발 속도 (생산성)
* 협업 수월
■ 파이썬 사용 분야
- GUI 프로그램 : pyQT
- 웹 프로그래밍 : flask, django ...
- 데이터 분석, 머신 러닝 (요즘 가장 핫하죠)
>> 파이썬이 가장 리딩을 하게 되는 이유는 ? 오픈소스의 강력함 때문!!
학문을 통해서 나오는 코딩을 해서 나오는 알고리즘을 구현
- IoT : 라즈베리파이
>> IoT분야에 파이썬이 압도적으로 많이 사용되고 있다.
오픈소스에서 주는 강력한 소프트웨어를 등에 지고 떠오르는 언어
엄청 강력한 무기가 될 수 있다.
뭐지 왜 시작도 안했는데 졸리지
시작부터 약간 지루한게 불안하지만
시작이 반이라고 벌써 반 했다!!!