"어 함수형..? 함수형에 관심있는 분 깃헙 팔로우하고있는데..." 해서 봤더니 같은 분이시네요. 흥미를 갖고계신 영역 자체가 흥미로워서 팔로잉하고 있습니다. 종종 소식 전해들으려구요. 좋은 이야기 감사합니다. 저도 언젠가는 함수형 프로그래밍에 진득하게 접근해보고싶네요.
개인적으로 자바스크립트에서 함수형을 쓰는 이유는 for문을 명령형이 아닌 이터러블/이터레이터 프로토콜을 이용해서 선언형으로 for..of를 사용 할 수 있다는 장점과 제너레이터를 사용해서 지연평가를 하고, Promise에 모나드 개념을 접목해서 pending 단계, 즉 비동기 함수의 평가전 단계에서 생길 수 있는 예상치 못한 오류들을 줄이고 안정적으로 비동기 함수를 짤수있다는 장점들로 자바스크립트 함수형을 합니다~~
글 올리기 앞서 지적 얼마든지 환영합니다. JS에서 함수형으로 쓰는 패러다임이 있는 이유는 비동기 처리가 가능하기 때문입니다. JavaScript는 싱글스레드로 돌아가지만, 비동기처리로 이벤트 루프에 넘겨줄 수 있고, 브라우저 입장에서는 그 코드에 대해 필요한 만큼의 쓰레드를 땡겨 쓸 수 있거든요. 그리고 웹 동작구조 자체가 파티션이 나뉘어져있는 경우가 많으니, 각 파티션별로 쓰레드를 나눌 수도 있는거고, 이 경우에 말씀하신 것 처럼 쓰레드를 나눌 때의 함수형 프로그래밍 장점이 나온다고 생각합니다. 실제로 메소드나 변수값을 왠만한 일이 아니고서는 const로 두기도 하고요.
자바스크립트에서 함수형으로 쓰는 이유는 코드가 짧아지기 단순화되기 떄문임, 코드가 단순화됨 클래스형을쓰는것 보다 코드를 더 적게 씀, 대신 잘못쓰고 너무 단순화 시키면 디버깅하기 힘들고 코드 가독성이 많이 떨어짐 immutable에 대한 설명은 많이 틀리고 잘못 알고 있네요.
@@axelrod_is_tired 그쵸? 그럼 되게 고마워하면서 써야하는게 바른자세같은데, 가끔 학원이나 학교에서 그게 자신만의 것이고, 이런 툴이라던가 알고리즘 가지고 되게 본인은 머리가좋다고 잘난척하는 사람이있어서.. 해당 자료관련 저도 영어로 구글링해서 해석하면 알수있을텐데... 하면서 되게 아리까리했었거든요 ㅎㅎ..
유익하네요. ㅋ 자바스크립트에서 함수형으로 쓰는 이유는 코드가 짧아지고, 복잡한 로직이 단순하 되기도하고, 객체관리좀더 유연하게 사용하기 위해서 사용하지 않나 싶습니다. 단 고성능에서는 for 문을 사용해야 합니다. 퍼포먼스 로스는 분명 있기에..ㅋ
프론트엔드 뷰 관련 파일에서 보기엔 아주 코드가 줄고 간단한 대신 그 인풋이 다른 여러 함수의 인풋으로 뿌려지고 그걸 아웃풋으로 가져와서 다시 뷰단의 아웃풋으로 뿌려주는 방식이라 플로우를 빨리 이해하긴 쉽지 않습니다 ㅋㅋ
@@cu48 네 맞는 말이기도 하지만 함수형으로 코딩을 했는데 플로우가 이해가 안되면 함수형을 잘못 사용하고 있다고 볼 수도 있습니다. 그래서 함수형을 사용하는 목적을 올바르게 이해하고 사용 해야 합니다.
"어 함수형..? 함수형에 관심있는 분 깃헙 팔로우하고있는데..." 해서 봤더니 같은 분이시네요.
흥미를 갖고계신 영역 자체가 흥미로워서 팔로잉하고 있습니다.
종종 소식 전해들으려구요. 좋은 이야기 감사합니다. 저도 언젠가는 함수형 프로그래밍에 진득하게 접근해보고싶네요.
개인적으로 자바스크립트에서 함수형을 쓰는 이유는 for문을 명령형이 아닌 이터러블/이터레이터 프로토콜을 이용해서 선언형으로 for..of를 사용 할 수 있다는 장점과 제너레이터를 사용해서 지연평가를 하고, Promise에 모나드 개념을 접목해서 pending 단계, 즉 비동기 함수의 평가전 단계에서 생길 수 있는 예상치 못한 오류들을 줄이고 안정적으로 비동기 함수를 짤수있다는 장점들로 자바스크립트 함수형을 합니다~~
감사합니다. 함수형 언어가 Line 에 쓰인다는게 놀랍고 반갑습니다. 저는 전문 개발자는 아니고 수학 문제 풀고 가르칠 때 순수함수형 언어 haskell 로 작은 code를 자주 짜서 활용합니다. 작은 코드는 아주 쉽습니다
pipe filter 식으로 쓸 수 있는 함수나 메소드를 쓰는 게 거부감이 있었어요.
그런데 얘기 들으면서 장단점에 대한 정리를 할 수 있었어요
고맙습니다. 도움이 많이 됐어요
글 올리기 앞서 지적 얼마든지 환영합니다.
JS에서 함수형으로 쓰는 패러다임이 있는 이유는 비동기 처리가 가능하기 때문입니다.
JavaScript는 싱글스레드로 돌아가지만, 비동기처리로 이벤트 루프에 넘겨줄 수 있고, 브라우저 입장에서는 그 코드에 대해 필요한 만큼의 쓰레드를 땡겨 쓸 수 있거든요.
그리고 웹 동작구조 자체가 파티션이 나뉘어져있는 경우가 많으니, 각 파티션별로 쓰레드를 나눌 수도 있는거고, 이 경우에 말씀하신 것 처럼 쓰레드를 나눌 때의 함수형 프로그래밍 장점이 나온다고 생각합니다.
실제로 메소드나 변수값을 왠만한 일이 아니고서는 const로 두기도 하고요.
민우님 덕분에 즐거운 시간이었습니다.
행복해보이시네요
재밌어요!! 두 분 다 말씀도 정말 조리있게 잘하셔서 머리에 쏙쏙 들어왔습니다.
프론트엔드 프레임워크에서 함수형 패러다임을 자주쓰는 이유는 반응형 패러다임과 함수형 패러다임이 크게 유사하기 때문입니다.
정확하게는 선언형 프로그래밍에 함수형과 반응형으로 구분지어줄 수 있고,
프레젠테이션 레이어에서 반응형 패러다임이 데이터엑세스 레이어에서 함수형 패러다임이 유용하게 쓰입니다.
결국 프레젠테이션 레이어(반응형)-> 비지니스 로직 레이어 (반응형+객체+함수형) -> 데이터엑세스 레이어(함수형) 이 형태가 이상적이라고 봅니다.
이에 대한 자세한 설명은 안합니다. 책추천 안해드립니다. 사업제의 안받습니다.
MONAD가 어려운데 실질적인 함수형 프로그래밍의 실무의 진입관문.. 모르고 쓰다가 알게되면 더 고민에 빠지는 늪..
Really good 👍
꼭 배워보고 싶네요/./
재밌네요
함수형 언어는 바다같고 절차형언어는 육지같습니다.
자바스크립트에서 함수형으로 쓰는 이유는 코드가 짧아지기 단순화되기 떄문임, 코드가 단순화됨 클래스형을쓰는것 보다 코드를 더 적게 씀, 대신 잘못쓰고 너무 단순화 시키면 디버깅하기 힘들고 코드 가독성이 많이 떨어짐 immutable에 대한 설명은 많이 틀리고 잘못 알고 있네요.
이런것도 다 미국에서 먼저 개발자나 사용자들을 고려해서 다 마련해줬기에.., 한국에서 네이버든, 개발자든 가능한거지요..?
미국이 다 선도하죠... 그래서 개발자의 덕목으로 영어는 필수인듯
@@axelrod_is_tired 그쵸? 그럼 되게 고마워하면서 써야하는게 바른자세같은데, 가끔 학원이나 학교에서 그게 자신만의 것이고, 이런 툴이라던가 알고리즘 가지고 되게 본인은 머리가좋다고 잘난척하는 사람이있어서.. 해당 자료관련 저도 영어로 구글링해서 해석하면 알수있을텐데... 하면서 되게 아리까리했었거든요 ㅎㅎ..