js에서 조건문 작성을 피하라면서
안좋은 예시로 이걸 들고
좋은 예시로 이렇게 다형성을 이용하라고 이야기를 하는데...
암튼 js에서 if문을 줄이기 위해 다형성을 이용해야겠다는 생각을 해본적이 한 번도 없어서 진짜 신기한듯 (자바에 있는걸 js로 흉내내는 기분이지만..)
움.. 암튼 진짜루.... 진짜루 대단한거같아.................... 만날 나 2중if문 떡칠했는데, 나중에 이거 써먹어봐야겠다 ㅇㅅㅇ
근데 난 js에서 class 아예 안 쓰는데? 나중에 규모 커질걸 대비해서 저렇게 써보는것도 배워봐야겟지....
여러타입을 if문 써서 구분하는건 안티패턴이긴 하지
진짜루 보면서 우와아... 이랫어,........
해당 댓글은 삭제되었습니다.
class는 어느 번들러에서도 treeshaking이 안되고 무조건 포함되는 친구들..?
헉 진짜?????? tree shaking이 뭔가 했는데 코드를 빌드할 때도 실제로 쓰지 않는 코드들을 제외한다는 뜻 어쩌고라고 하네... 첨보는 단어인데 한번 찾아봐야겠다 ㄳㄳ!!!
이해가 안되는건 트리셰이킹이 돌면 class 안에 있는 메소드들 다 딸려들어간다는거잖아. 근데 class도 어처피 syntax sugar일뿐이고.. 결국에는 Object에서 해석되거나 할텐데 Object도 그럼 tree-shaking이 안된다는 뜻이야?
일단 rollup으로 테스트해보긴했는데, class가 통짜로 다 들어가네
'new' 연산자를 써야되는게 non-deterministic 해서 그런건가
그럼 함수형 + 저렇게 조건문 쓰는거.. 그것밖에 없는건가욥,, 내가 짜놓고 왜 내가 이렇게 짰나 까먹게되던데
tree-shaking의 조건에 들어가는것들이 각 export되는 모듈들의 함수들이라고?
예를들어서 A모듈에 a함수, b함수 두개가 있다고 하면 tree-shaking적용이 안되는 번들러에서는 a,b가 둘다 껴지고.. (뭘 import하였던지간에) tree-shaking되는 경우에는 쓰는것만?
그리고 state 관리하는 애들이 다 함수형을 고집한다라는 의미가 어떤 의미인지? Redux 에서 Recoil/Jotai같은걸 쓰는걸 더 선호한다는거야?
그게 아니라 클래스형 컴포넌트에서 함수 컴포넌트 + hook 체제를 말하는건가?
자바스크립트도 class랑 상속이 있었군
원래는 프로토타입이라는걸로 상속 비슷하게 구현했는데 블편하다구 해서 class가 추가 되었다구 하드라구....... 근데 아직 초짜라 그런지 다 함수로 구현했어 난...... 애초에 클래스 쓸 일이 먼가 없는거같아
객체지향적인 특징은 한번 짠 코드를 수정할 때는 전체를 갈아엎는정도의 큰 수정이 있지 않는 이상 코드를 변경하는걸 원하지 않는것같아. (OCP, SRP 같은 원칙 및 관련 클린코드) 위쪽 코드같은경우는 새로운 조건이 생길 때 마다 계속 if 문 조건을 추가해줘야하고.. 밑애쪽 같은 경우는 기존 로직 전혀 건들지 않은 채로 수정한 코드만 새로 작업해서 좋아. 관련해서 보려면 비지터패턴같은것도 찾아봐~
바나나점
마자 ... 만날 if문 추가하면서, 이게 그냥 잘 작동하면 ㄱㅊ은데 꼭 한 두어개 놓쳐서 막 이상하게 작동하드라구.... 짜면서 어떻게 if문을 줄일 수 없을까 했었는데 js도 저렇게 막 하는거 보고 신기하드라구........ 비지터 패턴 처음들어보는건데 한번 찾아볼게 ㄳㄳ!!