#21.05.07 Section5 - Sprint1 (2)

찌니·2021년 5월 8일
0

AI부트캠프 review&TDL

목록 보기
30/38
post-thumbnail

WORM-UP

  1. 그나마 Exception 예외처리 사용하는 경우(예외처리 사용을 피하고 되도록 다른 코드로 대체해라.)

    • DB 긁을 때
    • 파일 긁을 때
    • 다른 웹 호출할 때
    • 정말 뭔가 코드에서 이상한 일 할 때

    외부 dependency가 없는 한은 거의 exception이 안난다고 생각하라.
    빠르게 코드 짜려고 try, exception 남발하면 나중에 exception이 나도 어디서 났는지 알기도 힘들고 코드 읽기도 더러워지고 로깅도 안하고 문제가 많아진다.

  2. 좋은 프로그래머가 되기 위해서는 코드 한줄 한줄에 이유가 있어야 하고 그것을 사용한 자기만의 이유가 있어야한다. 또한 미래에도 사용할 수 있는 코드(확장가능한 코드) 여야 한다. 코드 스타일이 일관되어야한다.

TDL

나만의 문제해결 전략 생각하기.
프로그래밍에서의 문제해결 방법은 어떤 것이 있는지 찾아보기.
완성된 소스코드에서 해석하면서 개념배우기.
소스코드 한 줄씩 수정해보면서 이해가지 않는 부분에 주석달기.
문제해결전략과 같은 과정에 따라 소스코드를 세분화시키고 합치는 연습하기.

NOTE2

  1. 문제해결 프로세스

    • 문제를 함수별, 우선순위에 따라 단위별로 쪼갠다.
    • 풀기 어려운 부분이 있다면, 전체 문제 중 해결할 수 있는 방법을 찾는다.
  2. 의사코드(슈도코드 pseudocode)

    • 소스코드 작성 전, 나만이 이해할 수 있는 코드를 작성하는 연습을 하자.
    • 프로그램의 크기정도, 어려움정도, 협업 정도에 따라 필요유무가 달라짐.
  3. 다양한 상황에 대한 시뮬레이션

    • 프로그램은 특정 상황을 해결하는 것이다.
  4. 컴프리헨션(comprehension)
    : 실제 프로그래밍에서 한 줄로 파이썬 기능을 구현할 수 있는 기능

    • 코드 간소화를 위해 사용되고 직관적이고 속도가 빠르다.
    • 조건이 복잡해지는 경우 직관성이 떨어지고, 메모리 사용량이 증가해 사용이 어렵다.
  5. 지역변수와 전역변수

    • 지역변수 : 함수 내부에서 사용하는 변수
    • 전역변수 : 함수 외부 내부 모두 사용 가능. 함수 안에서 새로운 값을 할당받거나 수정할 수 없음.
      - global 전역변수 : 일반적인 전역변수와 다르게 새로운 값을 할당받고 수정할 수 있다.
  6. 구문 및 예외적인 상황 처리

    • 예외처리 : 실제 대규모 서비스에서 공동작업을 진행하는 경우 중요함.
    • 다양한 예외처리 방법 연습해보기.
    • 실습 시 규약이 있는 것을 잘 보고 처리.
  7. exception

    • 파이썬에서는 루프의 내부 구분 바로 다음에 if 없이 else 구문을 추가할 수 있다.
    • if/else 구문에서 else는 if구문이 수행되지 않으면 else구문을 사용하시오 라는 뜻이다.
    • try/except 구문 또한 try 구문을 수행하다가 예외발생 시, except 구문을 수행하시오 라는 뜻이다.
    • None을 리턴하지 않는다.
  8. 반복문 이후 else를 사용 시
    이 방법은 좋지 않다. break를 사용해야만 else를 사용하게 된다.

    • 함수와 assert를 활용해 else의 무분별한 활용을 줄일 수 있다.
  9. assert()
    방어적 프로그래밍(defensive programming) 방법 중 하나이며, 코드를 점검하는데 사용된다.

  10. try/except/raise/finally

    • try : 처리하고자 하는부분을 넣는다.

    • except : try구문 안에서 발생할 것으로 예상되는 예외를 처리한다.

    • raise : 예외상황일 때 명시적으로 처리한다.

    • finally : 마지막으로 실행하는 코드

    • try/finally : 에러가 발생하더라도 마지막 코드를 수행해야 할때

    • try/except/else : else 구문을 사용하면 예외구분을 위해 try구문 안에 들어갈 코드를 최소화시켜 가독성이 좋아진다.

  11. 프로그래밍에서의 문제 해결 개념

    • 의사코드를 작성하면서 로직을 코드로 표현하기
    • 알고리즘 수식이나 익숙치 않은 개념에 대해 접근할 땐 의사코드 작성
    • 논리적으로 문제를 생각하는 방법
profile
https://gggggeun.tistory.com/

0개의 댓글