본문으로 바로가기

2022.9. 5월 강민철 튜터님, 이창호 튜터님 특강

category TIL 2022. 9. 6. 23:59

어제 1개월정도 사용한 티스토리를 정리하다가 TIL을 다시 봤다. 내가 몰랐던걸 적거나 새로알게된걸 적은글을 다시 보니까 지금 나에게 엄청 큰 도움이 된다는걸 느꼈다. 그래서 TIL의 TIP을 참고하여 오늘부터 진짜 열심히 적어보기로 다짐했는데 강민철 튜터님이 강의에서 TIL을 강조하시는걸 보고 더 의지가 불타올랐다. 내용 정리보다는 내가 느낀것 배운걸 내 언어로 표현하는게 더 중요한 것 같다. 내가 배운걸 다 복붙해서 적는게 아니라 공부 하다가 몰랐던것을 적어두고 궁금증을 해소해가면서 실력을 쌓아가는 TIL을 해나가겠다.

강민철 튜터님이 책을 보내주신다고 한다. IT 관련책을 도서관에서 계속 빌려읽고 있었는데 튜터님 책이오면 재밌게 읽을 예정이다!!

프로그래밍 언어를 학습하는건 영어를 잘 말하는 방법이랑 똑같다. 계속 읽어보고 쓰면 잘된다 많이 써봐라 예문을 작성하듯이컴퓨터가 의미를 전달 받으면 된다. 지금 내가 백준 하는것 처럼. 예제코드 작성! 초보라 아름답게 하지는 못하더라도 내머리에 있는걸 정리해서 표현하려고 계속 하자! 초심자가 프로그래밍 언어, 프레임워크 라이브러리를 파는것처럼 비효율적인게 없다 프로젝트를 만들 수 있기만 하면된다 고객? 이 있는 프로그램을 만들고 운영해보는게 가장 중요한 것 같다.

1=True 같은의미로 쓰인다 while 1

인덱싱 몇번째의 값이냐 num[1] 같은 의미이다. 인덱싱의 활용성 파이썬 함수강의에서도 사용했던거 찾아 왔다!

def check_gender(pin):
    num=pin.split('-')[1][:1]
    if int(num)%2==0:
        print('여성')
    else:
        print('남성')

check_gender('000000-1700000')

이창호 튜터님 특강 정리

이창호 튜터님 질문 끝나고 따로 편하게 하면된다 1 파이썬 언어의 이해 2 파이썬 기초 3 파이썬 활용 4 심화 (난이도 높음)

언어의 특징

컴파일 언어 c java 파이썬은 인터프리터 언어 컴파일 과정이 있지만 없다고 생각한다 컴파일 언어(해석된 언어)가 아니라 개발 디버그 주기 짧지만 프로그램은 일반적으로 느린 실행 .pyc는 컴파일 된 파이썬 이라고 생각 바이트 코드= 컴퓨터 신입이 알고있으면 면접관이 좋아함 이런내용 파이썬은 동적타입 변수를 할당할때 자료형 지정안해둬도 된다 왼쪽 변수 오른쪽 뭘넣을지 넣으면 되는게 파이썬 코드의 가독성이 좋다= 짤때 편하다 끝이아님=협업 다른사람 코드 이해하고 다루기 쉽다=다른 언어보다 빨리 짤 수 있다. 점프투 파이썬

코드컨벤션

약속이 있다. 혼자개발 하면 필요없겠지 근데 협업하는데 컨벤션 없으면 매우 불규칙 개발자 밈 이코드가 무슨 코드인지는 오직 신과 나만 안다 1주일만 지나도 이코드가 뭔지 생각이 안난다 프로젝트 커질수록 컨벤션 중요 대표적으로 지켜지는게 알고리즘은 나혼자 공부하고 나혼자 짜는거라 컨벤션 필요는 없음 있으면 좋긴 하지만 pascal, snake,camel 함수나 변수 파스칼 각 단어 첫알파벳 대문자 Python Is Very Good 카멜 python Is Very Good 스네이크 python_is_very_good 상수는 변수랑 비슷하면서 다름 한번 선언되면 변경 안된다 프로그램 끝날때 까지 안바껴야함 파이썬은 상수가 없음 나중에 다시 선언하면 바뀜 PIT 처럼 모두 대문자로 쓰면 이건 상수다! 약속임

class SomeClassName: 클래스는 파스칼 def some_function_name(): some_variable_name="hello" PIE=3.14 습관을 들이자 알고리즘 풀때도 컨벤션 안해도 프로그램은 돌아간다 하지만 안하면 날아다닌다.

 

이창호 조교님 세팅 파이참보다 VS코드 선호 속도 빠르고 호환성 좋다 파이참은 파이썬 전용 파이참 만든 Jetbrain 은 다른 언어도 좀 사용한다 하면 vs 코드가 좋다 파이참 무 겁다 = 많은 기능이 있다. 편집기 자기랑 맞는거 사용하먄 된다 멀티커서가 진짜 편하다

파이썬 기초 vs 코드 확장, 세팅 asciidoc 파이썬 필요x autodocstring 함수사용할때 함수에 어떤걸 넣어야하는지 타입에 대한 힌트 준다 다른사람이 쓸때 함수치면 뭐입력해주세요 가이드를 만들 수 있다. coderunner django django intellisense docker git history highlight intellicode live server 프론트 개발할떄 사용

못코딩? 모코딩? 머리맞대고 코딩하는것

서버할때 SFTP SQlite Viewer 나중에 쓸때 보여줄게 익스텐션

변수 선언하기

리스트도 변수로 한번에 지정가능 자주 쓰리는 패턴 sample_dic={ "key":"value",} print(sample_dic.items() [('key : value] 리스트에 넣어줌

for에서 많이 쓰인다 for k,v in sample_dic.items(): print(f"key:{k}),

변수 가장 첫번째 문자는 숫자 사용 불가 1num= 불가 n2um 가능 i o l 은 단일 문자 변수로 설정 절대 하지마 type 함수로 정해지면 나중에 사용이 안된다 약속하자 _ 붙이기로 list_ class_ type_ 자료형 종류와 특징 자료형 줄여서도 많이씀 integer str int dict bool int 정수 float (실수 자료형) 진짜 조심해서 사용해야하는 것 num = 1.1 +0.1=1.2000000000000002 컴퓨터 이진수 순환소수가 생성 차라리 인테저?(int)를 써라

따옴표 쌍따옴표 상관없으나 통일 하는게 좋다'=" 독스트린 """ 사용함 =문장을 저장할 때 문장=""" 동해물 과""" 쌍따옴표를 출력하고 싶다면? 문장=' "무궁화" ' 고양이 문제 \사용하면 문자 그자체로 인식하게 된다 dollor = 1.5 cent=150 이렇게 써라

sample_list=[1,2,3]리스트 담을 수 있고 딕션, 뭐든지 담음 근데 리스트안에 떄려박는경우 잘 없다 리스트 for i in 자주 쓰이는데 보통 이렇게 자료형 사용 tuple 리스트랑 같다 () 로만 바꾸면 된다 요소들을 변경 삭제 불가능

set 중복 데이터 못담는다 ex) 로또번호 출력 8개에 중복된 값 들어가면 안되니까 알고리즘에서도 가끔 활용

dict @@@@@@@@@@@@@@@@@@

제일 많이 사용 확실하게 이해하라!!!! key value쌍 '1':'kim','2':'min', :왼족 키 오른쪽 벨류

flag = True (분기문= if=조건문)랑 가장쓰임

튜플은 진짜 거의 안쓰고 리스트로 대부분 쓰게 되더라

제이슨 계속 사용할것 백엔드 프론트 데이터 담아서 백엔드로 던져줄때 제이슨은 딕션이랑 똑같이 key value 갖고있음 장고 플라스크 사용할때 프론트랑 연동할때

한글_변수='됩니다' print(한글_변수) 부동산에서 한글로 변수 하더라 출력=print 출력('hello')

변수 유효범위에 대한 이해 변수 유효 범위란? 파이썬을 포함한 대부분 언어에는 변수 유효범위 개념이 있습니다. 지역변수(variable) def func1(): 함수내에서 지역변수 선언 number=10 여기서 변수 선언

def func2(): print(number)= 안나옴 다른 함수에서 한거기 떄문에

num=10 전역변수

def func2() print(number)= 가능 직접 실행 해보기 assignment 선언 referndce 참조

전역변수를 사용하지마라 좋지않다 코드가 수천줄이 된다면 디버깅이 불가능함 글로벌도 쓸생각 하지마라 전역 상수는 사용가능 PIE =3.14 각각의 함수로 생각하고 만들자

BEST 가독성 좋고 기능이 좋은 코드

 

강민철 튜터님 특강 정리

효율적 코딩공부법 강민철 튜터님 효율성 떨어지는 수험생 공부 같이 하더라 특강 공부방법 정도

코딩은 재능 필요없다 공부를 잘해야 하는게 아니라 그냥 만들기 이다. 지능이 필요한 영역 있긴한데 매우 적음

프로그래밍 언어를 학습하는건? 영어를 잘 말하는 방법이랑 똑같다 수동태 도치 to부정사 이런거 아님 무조건 말을 하다보면 는다. 프로그래밍 랭귀지 라고 계속 읽어보고 쓰면 잘된다 많이 써봐라 예문을 작성하듯이 컴퓨터가 의미를 전달 받으면 된다. 지금 내가 백준 하는것 처럼 예제코드 작성 코드작성 훈련 if 문 배우면 반복문 배우면 직접 입력 해보고 내 코드로 해보는것 계속 표현하는 연습을 하는거임 이런식으로 변형 해봤는데 왜 안되나요?? 물어봐라

비전공자 면접관들은 전공자 비전공자 신경 1도 안쓴다. 사용자가 있는 프로젝트 경험 실무에서 사용되는 개념들(인증/db/배포) 녹여낸 프로젝트 +문제 해결력을 높이기 위한 cs지식(자료구조 알고리즘 네트워크 데이터 베이스) 회사에 git 내면 이건 복붙이네 이건 애매하네 물어봐야겠네 이렇게 다 알 수 있고 면접때 물어봄

자료구조는 코테 준비하면서 자연스럽게 알거다 독창적 코딩이 알고리즘 네트워크 웹개발자라면 모를래야 모를 수 없다.

코딩의 학습순서 프로그래밍 언어(깊이 팔 필요x) ->프레임웤/라이브러리(깊이 팔 필요x)->프로젝트->프로젝트 발전+코테 익숙해지기 -> 프레임 워크는 우리를 위해 만들어진 기계! (플라스크, 장고)사용법을 익히자 는 마음가짐으로 초심자가 프로그래밍 언어, 프레임워크 라이브러리를 파는것처럼 비효율적인게 없다 프로젝트를 만들 수 있기만 하면된다 프로젝트는 완벽하게 면접관 앞에서 설명할 수 있을 정도 왜 이 라이브러리, 코드를 사용했는지 설명 ex) 구구단 왜 for 을 사용했는지 왜 while 아닌지 무조건 TIL 진짜 중요 미래의 면접 답안지임 일기처럼 쓴다 면접 전날 읽고가면 말할게 너무 많을거다 왜썼고 뭐가 어려웠고 면접에서 아무것도 없이 말 할 수 있어야 한다.

부트캠프 경쟁력 프로젝트 발전 배포,피드백 유지보수, 테스트 하기

토케 코테 합격자가 아닌 불합격자를 고르는 시험이다. 개념잡기-> 그림그리기-> 코드로 옮기기 출제유형 정형화, 문제 풀이에 쓰는 문법 정해져 있따. 8개~15개 정도임 각 유형당 20문제 30문제씩만 해도 다 할 수 있음

구글링도 실력 site : github stackoverflow 하면 매우 잘나옴

프로그래밍언어 프레임워크 이거만 죽을때 까지 쓸거야 아님 빨리 배울 수 있어서 다른 기술 스택 요구해도 입사가능 leetcode 하셨지만 백준 추천함

내가 바라는 건 뭐든 말들 수 있어서 재미가 붙고 재미가 붙으면 더 알고 싶어진다 평생하는 덕질에 가깝다.

깃허브 목요일에 어떨게 활용하는지 알려줄게

혼공컴운 9년 til 저자이심

프론트 백 둘중 하나를 파는게 중요

잔디심기??

프로젝트는 여기서 하는것만 해도 차고 넘칠거다

다른 프로젝트 하지말고 백준문제 무조건 많이 푸는걸 추천함

옳은 계산기가 어딨어 오류내보고 무조건 자기만의 코드를 써봐라

드래그앤드랍