AWS API 동작 방식에서 type 질문
안녕하세요
파이썬은 자바와 달리 동적 프로그래밍이라 타입을 지정하지 않고 지정해줘도 강제성은 없다는 정도만 알고 있었는데요.
강의처럼 import해서 type을 지정해주는게 가독성이나 유지보수, 테스트같은 부분에서 유용하기 때문에 해주는건가요?
강의 예시로 volume create, delete, describe처럼 하나의 메서드마다 type을 지정해주는게... 뭔가 개인적으론 더 가독성이 떨어진다고 느껴집니다. (아직 파이썬을 깊게 다루지 않아서 그런거 같긴 하지만)
실무에서 파이썬으로 프로그래밍을 할 때, type을 명시해주는 특정 경우나 범위가 있을까요?
ex) 여러 타입을 리턴하는 함수만 type 지정
답변 1
0
안녕하세요.
답변 먼저 드리면, 정해진건 없습니다. 하지만! 모두 지정해주는게 좋은 것 같습니다.
크게 두 가지 케이스로 살펴보면,
mypy_boto3_ec2 같은 것들을 설치해서 활용하는 경우
사실 굳이 타입을 명시하지 않아도 개발 과정에서는 쉽게 확인이 가능 합니다.
그럼에도 명시적으로 작성해준 이유는 아래와 같은데요.
강의 기준으로만 보면, 이후에 타입을 활용할것이기 때문이구요.
실무 기준으로는,
누군가는 mypy_boto3를 활용하지 않을 수도 있어 설치할 수 밖에 없게 만드는 역할을 할 수 있구요.
굳이 직접 문서를 찾아보지 않아도, 타입을 쫓아가면 바로 어떤 값들이 있고 어떤 값들이 선택적인지 필수인지 등을 확인할 수 있는 장점이 있습니다.
커스텀(?) 데이터를 만드는 경우
타입이 없으면 코드를 만지기가 상당히 까다롭습니다.(다루는 데이터가 어떤 형태인지를 떠나서)
그렇기에 명확히 정의를 해놓으면 당연히 여러 사람이 작업하는데는 큰 도움이 되겠죠.
그리고 타입을 명시해주는 특정 경우나 범위 같은건 딱히 없습니다만, 정말 간단한게 아니면 어쨋든 명시해주는게 좋다고 생각하긴 합니다.(협업을 위해서이기도 하지만, 시간 조금만 지나면 스스로도 까먹기 때문에...)
엄청 간단하고 당연히 추론해줘야 하는 것 같은 코드들도 이렇게 추론을 잘 못하는 경우가 있거든요.
어찌됐건 강제성은 없기 때문에 프로그래밍 하는 사람 마음이긴 하지만, 링크의 코드를(잘했다 못했다의 문제는 아닙니다. 비하 의도 절대 없습니다.) 인수인계 받아서 업그레이드하거나 버그가 발생해서 유지보수 해야된다고 생각해보면 코드가 길지 않음에도 불구하고 저 개인적으론 상당히 만지기가 꺼려질 것 같긴합니다.(근데 500줄 1000줄 작성한게 타입이 없다고 생각하면 끔직하겠죠...?)
결론은! 규칙도 없고 지정하던 말던 상관없지만, 다른 사람들 그리고 나를 위해서 모두 지정해주는게 좋은 것 같습니다.
agent 평가 관련 문의 드립니다.
0
8
0
제2유형 질문입니다.
0
19
2
WSL에서 Airflow 실행 시 로컬 venv 라이브러리 사용 여부 및 관리 방법
0
11
2
C()
0
15
2
작업형 2에서 strafity 적용 유무
0
21
2
수강 기간 연장 가능 여부 문의드립니다.
0
17
1
ols
0
20
2
2유형 작성관련 질문(일반 심화)
0
21
2
2유형 작성관련 질문
0
18
2
2유형 object컬럼 개수 다르면
0
20
2
수강연장 가능할까요 ?
0
9
1
코딩팡질문이요ㅠㅠ
0
22
2
관찰값과 기대값의 개념이 헷갈립니다.
0
13
2
작업형2 ID 컬럼 삭제 질문
0
23
2
2유형 작성관련 질문
0
20
2
memoryerror 질문
0
18
2
작업형 유형2 이렇게 고정 템플릿으로 가져가도 될까요?
0
21
1
ID 삭제 필수 인가요?
0
19
3
띄어쓰기
0
12
1
7회 기출문제 작업형1번 df 변환 후 저장되는 방식 질문
0
16
2
매일 사용시 토큰사용량
1
20
2
3 유형 귀무가설, 대립가설
0
20
2
공부 순서
0
11
1
인코딩 관련 질문 있습니다
0
23
2





