데이터 지향 프로그래밍
내가 Nest.js를 쓰며, 옆자리 동료가 C#을 쓰는 것을 보며 막연하게 느꼈던 불편함이 무엇인지 명확하게 배움
코드를 데이터로 다루기
class Book { │ author: Author } class Author { │ name: string │ country: Country } // 아래처럼 구현할 경우 코드는 데이터가 아니다 // 이런 레벨의 코드가 데이터가 되기 위해서는 매크로를 이용해야함 function findAuthorNameOfBooks(book: Book): string { │ book.author.name } // 아래처럼 구현할 경우 코드는 데이터이다. // name 대신 country를 가져오는 게 아주 쉬움 _.get(book, 'author', 'name')