SOLID, 디자인 패턴 등 이러한 용어가 나오는 이유는 객체지향 프로그래밍을 위한 하나의 방법론으로 나오고 있다.

이러한 디자인패턴을 알아야할 이유가 있을까??


요즘은 함수형 프로그래밍이 대두 되고 있다.


함수형 프로그래밍이란 말그대로 함수자체를 하나의 값으로 보고 (생각하고) 프로그래밍하는 사고이다. 

머 정해져있는건 아니고 개발 방법론중 하나


객체지향 프로그래밍의 차이점을 본다면 객체지향 프로그래밍은 하나의 객체의 여러 메소드들이 있고 객체안의 data를 공유하거나 바꿔가면서 프로그램을 하는 반면

함수형 프로그래밍은 특정 조건에서는 특정한 답이 나오는 함수처럼 외부의 요인에 정해지지 않는 순수함수로 이루어저있다.


이게 잘 개발이 돼??? 라고 생각할수도 있지만 실제로 함수형 프로그래밍은 객체지향보다 더 오류를 발생하지않고 만족도 높은 방식이라고한다.

스칼라 같은 언어로 개발을 해보신 분들은 알겠지만 언어자체에서 함수형 프로그래밍을 할수 있도록 생산적인 코드들을 많이 지원한다.


실제 객체지향 할때보다 코드 수도 줄어들고 이해하기도 쉽다.

사실 객체지향 프로그래밍에 노예가 된 나에게 함수형프로그래밍의 깊이를 이해할수 있을지 의문이지만 열심히 공부해야겠다.