-
Notifications
You must be signed in to change notification settings - Fork 5
Docs: Add Strongly Typed, Flexibly Polymorphic Chapter01.md #452
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Docs: Add Strongly Typed, Flexibly Polymorphic Chapter01.md #452
The head ref may contain hidden characters: "437-\uD0C0\uC785\uC73C\uB85C-\uACAC\uACE0\uD558\uAC8C-\uB2E4\uD615\uC131\uC73C\uB85C-\uC720\uC5F0\uD558\uAC8C-1\uC7A5-\uCD1D-64\uD398\uC774\uC9C0-2025-01-10-2"
Conversation
|
우측에 있는 |
|
|
||
| ### 논의사항 | ||
|
|
||
| - AI의 도움으로 책에서 다루는 정적 타입 언어의 장점에서 속도를 제외한다면 대부분 동적 언어에서도 해결할 수 있지 않을까? 라는 생각이 듭니다. 대부분이 휴먼 에러에 가깝다는 생각이 드는데 이런 것들은 AI도움이면 대부분 해결이 가능하지 않을까요? 다른 분들의 생각이 궁금합니다! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
수많은 초기 상태 값에 대한 테스트도 이루어져야 할 것 같은데
AI도 완벽하지 않을 수 있지 않을까 합니다~!
물론 근시일 내에 좀 더 완벽한 AI가 나온다면 달라질 것 같긴 합니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
말씀주신 것은 AI가 타입체커로써 사용함으로써, 동적타이핑 언어의 단점을 커버한다면, 충분히 사용가치가 있지 않을까? 라는 말씀으로 이해했습니다
개인적으로는 단순히 타입체커가 있는 것 이상으로, 타입을 표기해주는게 필요하다고 생각합니다
코드 표현력에 차이가 많이 나기 때문 입니다
예를들어서, 파이썬2 에서 아래와 같은 함수가 있다고 할 때, AI가 타입체커의 역할을 한다고 해도, 가독성 부분에서는 여전히 문제가 있습니다
# 타입 표기를 하지 않을 때,
# input_data의 타입은 도대체 무엇일까?... �코드 읽는 입장에서 추측할 수 밖에 없음
def handle(input_data):
# Do something about input_data
...#�타입 표기를 안하고, 변수명으로 타입을 나타닐 때, (헝가리언 표기법)
# 실제로 파이썬2 에서 요렇게 쓰는 경우도 꽤 많습니다
def handle(input_data_str):
# Do something about input_data
...
def handle(input_data_json): # json이 dict인지? string인지 변수명만으로 알 수 없음
# Do something about input_data
...
def handle(input_data_dict):
# Do something about input_data
...
def handle(request_body): # request_body도 마찬가지
# Do something about input_data
...# 타입을 표기해준다면?
# 코드의 표현력이 올라가고, 추측하지 않아도 됨
# 파이썬에서는 타입 표기가 강제가 아니기 때문에 필요한 곳에 적절하게 사용해주면 됨
@dataclass
class RequestBody:
item1: int
item2: str
def handle(input_data: RequestBody) -> Response: # return 값을 표시 해줘도 되고,
# Do something about input_data
...
def handle(input_data: str): # 굳이 리턴값을 표기 할 필요 없으면 안해도 됨(ex) void 일 때, 파이썬은 정확히는 None을 리턴하기 하는데, 굳이 None을 쓸필욘 없음
# Do something about input_data
...
def handle(input_data: dict[str, str]):
# Do something about input_data
...요렇게 타입을 표기해줌으로써, 타입 추측을 고민하지 않아도 된다는점에서 타입을 쓰는 것의 분명한 장점이 있다고 생각합니다
코드베이스가 작고, 유지보수하는 인원이 적다면, 타입을 적지 않더라도 충분히 커버가 가능한데 코드베이스가 커지고 유지보수하는 인원이 많으면 많을 수록 동적 타입언어의 단점은 더 드러날 수밖에 없고, 말씀주신 AI로 타입체크하는 것만으로는 커버가 되진 않을것 같습니다
jongfeel
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
|
|
||
| ### 논의사항 | ||
|
|
||
| - AI의 도움으로 책에서 다루는 정적 타입 언어의 장점에서 속도를 제외한다면 대부분 동적 언어에서도 해결할 수 있지 않을까? 라는 생각이 듭니다. 대부분이 휴먼 에러에 가깝다는 생각이 드는데 이런 것들은 AI도움이면 대부분 해결이 가능하지 않을까요? 다른 분들의 생각이 궁금합니다! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
그리고 동적 언어들도 타입 검사를 도와주거나 변환해주는 다른 도구나 언어들이 존재하는 걸로 봐서는
IDE와 AI의 도움을 받으면 많은 부분 해결은 될 것이라고 봅니다.
하지만 그 외적으로 AI의 도움을 계속해서 받다보면 개발자가 점점 커지는 코드 베이스와 로직 처리에 신경을 못쓰거나 덜 쓰게 되니까
점점 직접 개발하는 능력이 떨어지게 되고 계속 AI의 도움을 받는 데는 한계가 있지 않을까 라는 생각도 해봅니다.
|
|
||
| ### 논의사항 | ||
|
|
||
| - AI의 도움으로 책에서 다루는 정적 타입 언어의 장점에서 속도를 제외한다면 대부분 동적 언어에서도 해결할 수 있지 않을까? 라는 생각이 듭니다. 대부분이 휴먼 에러에 가깝다는 생각이 드는데 이런 것들은 AI도움이면 대부분 해결이 가능하지 않을까요? 다른 분들의 생각이 궁금합니다! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
몇 가지 생각이 듭니다.
첫째, 제가 AI가 작성한 코드를 검토하고 승인해야 하므로, 가독성이 좋은 동적 타입 언어의 장점이 여전히 유용할 것 같습니다.
둘째, 동적 타입 언어는 실행 시점에 타입을 검사하기 때문에 유연하다는 장점이 있습니다.
그런데 AI가 완벽하게 신뢰할 수 있을 만큼 발전한다면, 이러한 차이점이 크게 문제되지 않을 수도 있다는 점에 동의합니다.
| ### 논의사항 | ||
|
|
||
| - AI의 도움으로 책에서 다루는 정적 타입 언어의 장점에서 속도를 제외한다면 대부분 동적 언어에서도 해결할 수 있지 않을까? 라는 생각이 듭니다. 대부분이 휴먼 에러에 가깝다는 생각이 드는데 이런 것들은 AI도움이면 대부분 해결이 가능하지 않을까요? 다른 분들의 생각이 궁금합니다! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AI를 통한 타입체커로 확실히 걸러낼 수 있다면 동적언어에서 타입오류 발생시 추론과정을 거쳐야 했던 부분을 미리 차단하여 큰 장점으로 다가올 것 같다는 생각이 듭니다.
여행을 다녀와서 급하게 읽어서 늦게 올렸습니다.. 다행이 분량이 짧아서 참여가 가능할 것 같습니다!
책에 대한 후기?도 본문에 작성했습니다. 재밌게 읽었습니다~!