노력에는 지름길이 없으니까요

9일차 (24-07-04) TIL 학습기록 본문

내일배움캠프 일지

9일차 (24-07-04) TIL 학습기록

데건 2024. 7. 4. 22:20
728x90

 

 

오늘 목표

    • 아티클 정리하기
    • 파이썬 강의 2주차 1주차
    • 데이터 문해력 ~55p
    • 코드카타 2개 이상
    • ADSP 연습문제 풀기


강의 내용

데이터 문해력

 

문제, 원인, 해결방안을 명확하게 구분할 수 있어야 한다.

상태를 파악하기 전에 목적 및 문제를 정의하고 지표를 결정하는 과정이 빠지면 이후 단계에서도 문제가 생긴다.

문제의 원인을 규명하고 해결방안을 찾아내기 이전에 개인의 경험이나 식견으로 원인을 미리 규명해서는 안 된다.

 

문제를 설정할 때, 항상 자신에게 질문하기

나는 문제를 명확하게 정의해 풀고 있는가?

 

아티클 정리

 

  • 요약 : SQL 가독성을 높이는 다섯가지 사소한 습관
  • 코드를 나 말고 누군가가 볼 거라고 생각하고 작성하는 것이 중요하다
  • 주요 포인트 :
    1. 예약어는 대문자로
    2. → 명령어에 강조하고, 칼럼이나 테이블명은 소문자로 쓰면 구분이 쉬움
    3. 행갈이를 자주 하자
    4. → 각 라인의 처음에 예약어가 있을 테니 코드 구조를 확인하기에 간편함
    5. 행갈이를 더 자주 하자ex) 특정 칼럼, 혹은 조건 등을 잠시 쿼리에서 제외하고 싶을 때개인적으로 나는 쓰는 쪽이 편한 것 같다
    6. WHERE 1=1 의 경우 정리가 간편하다는 장점도 있으나 오히려 where문을 찾기 어려워진다는 의견도 있었다. 편한 사람은 사용하는 걸로 결론 내려도 될 듯.
    7. → 잘 정리할 수록 필요 없는 부분의 주석처리에 아주 간편해진다
    8. 주석을 쓰자→ Why, How 등의 내용을 자세히 적어두면 이후 작업할 때 도움이 된다
    9. → 코드를 쓴 의도를 짧게 적어놓는 습관이 중요
    10. Alias를 잘 쓰자
    11. → 즉 Python으로 치면 변수명을 잘 정해야한다는 뜻
     💡 변수명 짓기 팁
    1. 이름에 의미 넣기 → 이름이 길어지더라도 이해할 수 있는 게 더 편하다고 함 1.1. 너무 길어질 것 같다면 주석을 쓰기
    2. 함수 이름에 함수가 하는 일을 정확히 드러내기
    3. 보편적으로 사용되는 이름 짝 맞추어 사용하기 ex) Update > Edit, Modify

 

예약어

컴퓨터 프로그래밍 언어에서 이미 문법적인 용도로 사용되고 있기 때문에 식별자로 사용할 수 없는 단어


레거시 코드
➡️더 이상 쓰기 힘들고 정상적이지 않은 난해한 코드라는 뜻으로 사용
- 다른 사람으로부터 상속 된 소스 코드
- 이전 버전의 소프트웨어에서 상속 된 소스 코드
- 개발자가 변경하기를 두려워하는 코드
- 테스트 없는 코드

 

팀원분이 잘 정리해주셔서 얻어왔다 ㅎㅎ

WHERE 1=1을 사용하는 이유

  • WHERE절에서 1=1을 사용하는 이유는 필터를 자유자재로 선택하기 위해서 입니다. WHERE절에서 특정 필터를 사용하지 않을 때는 해당 구문에 주석을 달아서 해당 필터가 작동하지 않도록 할 수 있습니다.
  • 그러나 WHERE 옆에 내가 사용하고자 하는 필터를 바로 쓴다면 해당 필터를 사용하지 않았을 때의 값을 산출하고 싶은 경우 해당 구문을 삭제하거나 WHERE 절 옆에 주석을 달아야 하는데요. 구문을 삭제하는 경우 다시 작성해야한다는 번거로움이 있고 WHERE절 옆에 주석을 달 경우, 주석을 달아놓은 것이 눈 띄지 않을 수 있고, 혹은 구문 자체에 오류가 생길 가능성이 있다고 생각합니다.
  • 즉, 여러 개의 필터 중 내가 사용하고자 하는 필터만 빠르게 취사 선택할 수 있고, 어떤 필터를 사용했는지 하지 않았는지 한 눈에 알아 볼 수 있다는 점에서 해당 코드를 사용한다고 이해하였습니다!!

 

파이썬 강의

Null 대신 None 쓰는 거 상기하기

import pandas as pd

# NaN을 포함한 데이터프레임 생성
data = {'A': [1, 2, None],
        'B': [3, None, 5]}
df = pd.DataFrame(data)

 

 

728x90
반응형