동적 타입 언어에서 타입을 정하는건 어디까지나 선택사항임
얼마든지 정적타입처럼 쓸 수 있음
파이썬 봐라
pyright, pydantic같은 정적, 동적 검증 툴들 있지
자바스크립트도
flow같은거 붙이거나 typescript로 전환할 수 있음
실제로도 생각 좀 제대로 박힌 시니어나 리드급 엔지니어 있으면
동적 타입 그대로 쓰는 거 용납 안 함. 무조건 저런 툴 박고 타입 검사 시키지
그렇게 하는 편이 타입 안전성이나 IDE 지원같은 면에서 유리함
아니면 진짜 좆고수 네댓명이 시스템 하나 만들어낼 수 있는 수준이면
동적 타입 그대로 쓰면서 최대한 이점 가져가고 ㅇㅇ
동적 타입의 장점은 대체로 정적 타입 언어에서 리플렉션이라고 부르는 기능을
특별한 언어적 장치 없이도 쓸 수가 있다는 정도임
그걸로 말미암아 라이브 인스펙션, 디버깅 같은 걸 하기 쉬워지니까 쓰는거
대부분의 경우 그 정도 레벨까지 동적 타입의 이점을 활용하지 못하지
심지어 동적타입 언어는 대체로 느리고 무겁다
그런데도 쓰는 이유는 그걸 상쇄하는 장점들이 있기 때문임
예를 들면 개발환경 구성이 편하다거나 마음에 드는 문법이 있다거나.
쓰기좋은 라이브러리가 많다는 것도 이유가 될 수 있음.
물론 시작 자체를 무지성 파이썬 무지성 노드 하는 경우도 많음
애플리케이션 복잡성이 크지 않으면 거의 그냥 토이 플젝 하듯이 해도 돼서 ㅇㅇ
근데 단지 그 이유 때문에 언어에 대해 제대로 이해하지 못한 채 플젝 시작하면
나중에 애플리케이션이 복잡해졌을때 변경사항 반영이 느려지고
온갖 버그를 떠안고 있는 플젝이 될 확률이 높다
그럴거면 걍 초보는 정적타입 시키는게 낳지 않을가??