재사용성을 높이기 위한 객체 지향 디자인과 함수형 디자인의 통합

2025-09-09

1998년 ECOOP 논문에서는 객체 지향 프로그래밍과 함수형 프로그래밍의 장점을 결합하여 진화하는 프로그램에서 도구와 데이터 유형을 확장하는 과제에 대해 다룹니다. 기존 접근 방식에서는 두 가지를 모두 지원하는 것이 어려웠습니다. 함수형 프로그래밍은 도구 추가에 뛰어나지만, 객체 지향 프로그래밍은 새로운 도구 추가 또는 데이터 세트 확장에 뛰어나지만, 두 가지를 동시에 달성하는 것은 불가능합니다. 본 논문에서는 두 가지의 장점을 통합하는 복합적인 디자인 패턴을 제안하고, 기존 코드를 변경하지 않고 확장성을 달성하기 위한 클래스 기반 언어를 위한 새로운 언어 기능을 제안합니다.

더 보기
개발

공유는 무섭다: 클라우드 파일 공유와 프로그래밍 언어 의미론의 예상치 못한 연결

2025-09-03

사용자들은 종종 클라우드 파일 공유 애플리케이션에 어려움을 겪습니다. 이 연구는 이러한 어려움이 부실한 인터페이스 때문만이 아니라, 링크, 첨부, 다운로드, 편집과 같은 작업의 기본 의미론에 대한 근본적인 오해 때문이라고 주장합니다. 이는 별칭, 복사, 변이와 같은 프로그래밍 개념을 이해하는 데 어려움을 반영합니다. 사용자 연구는 알려진 프로그래밍 교육의 오해를 유사한 파일 공유 작업에 매핑하여 광범위한 오해를 밝혀냈습니다. 연구자들은 클라우드 파일 공유 작업의 공식 의미론도 개발하여 개선된 정신 모델, 교육 도구 및 자동 지원의 기반을 제공했습니다. 이 공식화는 추적 확인 및 워크플로 합성과 같은 애플리케이션을 지원할 수 있습니다.

더 보기