Martin Fowler(소프트웨어 엔지니어)
Martin Fowler (software engineer)마틴 파울러 | |
---|---|
![]() 2015년 브라질 상파울루 대학 강연 | |
태어난 | 월솔, 영국 | ( 1963년 12월 18일 )
교육 | 유니버시티 칼리지 런던 (BSC, 1986년)[1] |
직종. | 소프트웨어 개발자, 저자, 연설자 |
고용주 | ThinkWorks |
웹 사이트 | martinfowler |
마틴 파울러(Martin Fowler, 1963년 12월 18일)는 미국에 거주하는 영국의 소프트웨어 개발자,[2] 저자이자 소프트웨어 개발에 관한 국제적인 연설자로 객체 지향 분석 및 설계, UML, 패턴 및 극단적인 프로그래밍을 포함한 민첩한 소프트웨어 개발 방법론을 전문으로 하고 있습니다.
그의 1999년 저서 Refactoring은 코드 [3]리팩터링의 관행을 대중화시켰다.2004년에는 건축 [4]패턴인 프레젠테이션 모델(PM)을 도입했습니다.
전기
파울러는 영국 월솔에서 태어나 자랐고 그곳에서 중등 교육을 받기 위해 퀸 메리스 그래머 스쿨에 다녔다.그는 1986년 유니버시티 칼리지 런던을 졸업했다.1994년 그는 미국으로 건너가 멜로즈 [1]교외의 매사추세츠 주 보스턴 근처에 살고 있다.
Fowler는 1980년대 초에 소프트웨어로 일하기 시작했습니다.1986년에 대학을 졸업하고 [5]1991년까지 Coopers & Lybrand의 소프트웨어 개발에 종사했습니다.2000년에는 시스템 통합 [1]및 컨설팅 회사인 ThinkWorks에 입사하여 치프 [6]사이언티스트를 맡고 있습니다.
Fowler는 소프트웨어 개발에 관한 9권의 책을 집필했습니다(출판 참조).그는 Agile Alliance의 회원이며 2001년 16명의 [7]서명자와 함께 Agile 소프트웨어 개발을 위한 매니페스토 작성을 도왔습니다.그는 블로그와 Wiki를 혼합한 bliki를 운영하고 있다.그는 의존성 주입이라는 용어를 [8][9]통제의 반전 형태로서 대중화했다.
출판물
- 1996. 분석 패턴: 재사용 가능한 객체 모델.애디슨 웨슬리. ISBN0-201-89542-0.
- 1997. UML 증류: 표준 객체 모델링 언어 개요 가이드.애디슨 웨슬리.ISBN 978-0-201-32563-8.
- 1999. 리팩터링: Kent Beck, John Brant, William Opdyke 및 Don Roberts와 함께 기존 코드 디자인을 개선합니다(1999년 6월).애디슨 웨슬리.ISBN 0-201-48567-2.
- 2000년 익스트림 프로그래밍 계획켄트 벡과 함께요애디슨 웨슬리.ISBN 0-201-71091-9.
- 2002. 엔터프라이즈 애플리케이션 아키텍처의 패턴.데이비드 라이스, 매튜 포엠멜, 에드워드 히엣, 로버트 미, 랜디 스태포드.애디슨 웨슬리.ISBN 0-321-12742-0
- 2010. 도메인 고유의 언어.레베카 파슨스랑요애디슨 웨슬리.ISBN 978-0-321-71294-3.
- 2012. NoSQL Deflusted: 신흥 폴리글롯 지속성에 대한 간단한 가이드.Pramod Sadalage와 함께.애디슨 웨슬리.ISBN 978-0-321-82662-6.
- 2013. 리팩터링: 루비 에디션켄트 벡, 셰인 하비, 제이 필즈랑요애디슨 웨슬리.ISBN 978-0-321-98413-5.
- 2018. 리팩터링: 기존 코드 설계 개선, 제2판켄트 벡과 마틴 파울러입니다애디슨 웨슬리.ISBN 978-0-134-759-9.
도메인 고유의 언어
도메인 고유의 언어인 그의 저서에서, 파울러는 도메인 고유의 언어인 DSL에 대해 논한다. DSL은 합성 가능한 프로그래밍 언어이며, 개별 도메인에 초점을 맞추고 [10]: 27 표현에 제한을 두는 것으로 정의된다고 한다.DSL은 프로그래머가 완전한 프로그래밍 언어를 이해하고, 도메인 전문가와의 통신 수단을 제공하며, 작업 자체의 [10]: 33 정의와 작업 실행 방식을 분리함으로써 생산성을 높일 수 있다는 주장이 있다.이러한 이점은 새로운 언어를 학습하고 이 언어를 위한 도구를 구축하는 데 드는 비용과 다른 언어 및 [10]: 39 DSL에서 사용되는 추상화를 작업에 적합하지 않게 격리하는 비용에 대해 설정됩니다.
Fowler는 내부(또는 내장) 및 외부 DSL의 개념을 도입합니다. 내부 DSL은 다른 언어의 서브셋이며 이 외부 언어를 위한 도구에 의해 실행될 수 있는 DSL입니다.Ruby와 Lisp는 내부 DSL이 일반적인 언어의 예입니다.그는 또한 시맨틱 모델의:DSLs 14개의 다양한 예 graphviz, 그래프 표현될 수 있게 지정하여를 위한 언어 등은 DSL.[10]의 실행을 정의하는 생각이네!;JMock 자바 조소 띤 체계;전투 근무 지원 언어는 웹 사이트의 양식적 요소를 지정하려면이고, HQL 자바의 개체 관계형 지도 제작자.;XAML언어를 우리를 소개했다.교육에 sp그래피컬 유저 인터페이스, FIT, 테스트 시나리오를 표현하기 위한 언어, 소프트웨어 구축을[10]: 147 위한 도구 제작 등 다양한 기능을 제공합니다.
이 책은 파서, 렉서, 추상 구문 트리, 코드 생성과 같은 도구를 사용하여 외부 DSL을 구현하는 것에 대해 논의한다. 이것은 "구문 기반 번역"[10]: 219 이라고 불리는 "딜리미터 중심 번역"과는 대조적이다.여기서 언어는 딜리미터로 분할하여 개별 [10]: 201 엔트리에 따라 로직을 전환함으로써 해석할 수 있습니다.
내부 DSL을 구현하는 방법은 중첩된 함수 호출,[10]: 357 함수 [10]: 351 호출 시퀀스 또는 다른 방법 간의 메서드[10]: 373 체인에 주의를 기울이며 논의됩니다.
레퍼런스
- ^ a b c Martin Fowler(Martin Fowler)2012년 11월 15일 취득.
- ^ "About Martin Fowler". martinfowler.com. Retrieved 1 May 2021.
- ^ Stephane Faroult; 파스칼 L'Hermite (2008).SQL 응용 프로그램의 리팩터링.오라일리 미디어, 페이지 8. ISBN 978-0-596-55177-3.
- ^ Stephen Chin, Dean Iverson, Oswald Campesato, Paul Trani(2011).Pro Android Flash.수신자 300페이지 ISBN 978-1-4302-332-2
- ^ 제임스 A.하이스미스(2002년).신속한 변화를 위한 소프트웨어 개발 생태계애디슨-웨슬리 프로페셔널 페이지 133ISBN 978-0-201-76043-9.
- ^ 마틴 파울러 씽크웍스입니다2015-03-30 취득.
- ^ 신속한 변화를 위한 소프트웨어 개발을 위한 매니페스토.2012년 12월 10일 취득.
- ^ 카밀 피탁; 마렉 키시엘 도로히니키(2013)."분산 컴퓨터 인텔리전스 시스템의 컴포넌트 기반 구현을 촉진하는 에이전트 기반 프레임워크"Ngoc-Thanh Nguyen, Joanna Kowodziej, Tadeusz Burczynski 등Computational Collective Intelligence X에 대한 트랜잭션.스프링거 38페이지ISBN 978-3-642-38496-7.
- ^ Martin Fowler (2004) "컨트롤 컨테이너 및 의존성 주입 패턴의 반전"2012년 11월 15일 취득.
- ^ a b c d e f g h i j Fowler, Martin (2011). Domain-specific languages. Upper Saddle River, N.J.: Addison-Wesley. ISBN 978-0-13-210754-9. OCLC 686709295.
외부 링크
- 공식 웹사이트
- Venners, Bill (9 December 2002). "A Conversation with Martin Fowler". Artima. In six parts.