목록 보기
9가지 프로그래밍 언어로 배우는 개념: 3편 - 메타프로그래밍
아키텍처

9가지 프로그래밍 언어로 배우는 개념: 3편 - 메타프로그래밍

데브시스터즈
데브시스터즈
2023년 1월 3일

두줄요약

메타프로그래밍을 다형성의 보조 수단으로 보고, 런타임 리플렉션과 컴파일타임 코드 생성을 비교했습니다. C++, Java, Scala, Rust, 외부 코드 생성 도구의 특징과 장단점도 함께 정리했습니다.

핵심 내용

  • 메타프로그래밍을 다형성의 보조 수단으로 보고, 반복 보일러플레이트를 줄일 때 유용한 경우를 정리
  • 런타임 타입 정보와 리플렉션, 어노테이션을 활용한 동적 처리 방식 소개
  • C++ 템플릿, 매크로, Scala/Rust 매크로, 외부 메타프로그램을 통한 코드 생성 방식 비교
  • 각 방식의 성능, 컴파일 시점, 표현력, 복잡도 차이와 활용 범위 요약

다음 읽기

같은 회사의 연관 글

9가지 프로그래밍 언어로 배우는 개념: 2편 - 다형성

여러 프로그래밍 언어의 다형성 기능을 비교하며 오버로딩, 인터페이스, 제네릭, 변성을 정리했습니다. 상속 기반 인터페이스의 한계와 타입클래스, Rust trait 같은 대안을 함께 살펴봤습니다.

데브시스터즈
데브시스터즈
아키텍처

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...