본문 바로가기

Enterprise Architecture

AOP 프레임워크 이해와 개발 AOP 프레임워크 이해와 개발 AOP(Aspect Oriented Programming), 관점지향 프로그래밍은 OOP(Object Oriented Programming) 에게 ‘관심사’라는 관점을 더해 객체 지향 프로그래밍의 변경 없이 다른 관점의 구현을 추가할 수 있다. 더 쉽게 말하면 클래스나 메서드가 동작할 때 코드의 변경 없이 원하는 동작을 추가하는 기법이다.흔히 AOP 의 예를 들때 ‘로깅(Logging)’ 을 든다. 기존 코드의 변경 없이 코드 본문이 실행 되기전 매개변수 값 등을 로깅하도록 하는 것이다. 물론 로깅 이외에 다양한 용도로 사용되는데, 비즈니스 로직의 검증이나 응용 프로그램 전역적으로 공통적인 관심사 분리에 사용된다.AOP 프로그래밍의 활용 예 로깅 유효성 검사 트랜잭션 처리 .. 더보기
[마이크로서비스] 아키텍처 구축하기 [마이크로서비스] 아키텍처 구축하기 마이크로서비스는 서비스를 작게 나누는 것부터 시작한다. 이렇게 서비스를 작게 나누게 되면 여러가지 장점이 있는데 [이 글]에서 마이크로서비스 아키텍처를 이해할 수 있다. 가볍고 탄력적인 서비스를 구축이 필요한 곳에서 이 아키텍처를 도입하고 있다.물론 장점만 있는 것은 아니다. 그 중에서 단연 러닝커브가 높은 기술적 구현 측면과 요구사항이 바로 그것이다. 아시다시피 서비스가 작게 나눠지면서 개발/네트워킹/보안/배포/모니터링에 이르기까지 해결해야 할 과제가 생긴다.이 아티클은 개발 영역에 초점을 맞추어 예제 코드가 작성 되었다. 개발 영역을 마이크로서비스화 할 때 적지 않은 부분의 변화가 필요한데, 그 기법과 라이브러리 등도 함께 살펴보면 도움이 될 것 같다.[https:.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 7/7 - 결론 및 저자 소개 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예- Visual Studio 20xx는 Visual Studio로 표기함 ) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개 Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 6/7 - 모델링 확장 (SDK) 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예- Visual Studio 20xx는 Visual Studio로 표기함 ) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개 Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 5/7 - Visualization & Features Pack 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예- Visual Studio 20xx는 Visual Studio로 표기함 ) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개 Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 4/7 - 모델링 다이어그램 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예- Visual Studio 20xx는 Visual Studio로 표기함 ) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개 Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 3/7 - 모델링의 표기 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예- Visual Studio 20xx는 Visual Studio로 표기함 ) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개 Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 2/7 - 왜 모델링인가? 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예- Visual Studio 20xx는 Visual Studio로 표기함 ) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개 Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts.. 더보기
개발자도 알아야 할 응용 프로그램 모델링 1/7 - 들어가기에 앞서... 본 아티클은 MSDN 에 eBook으로 공개된 문서를 블로그 아티클로 편집하였습니다. VSTS 팀블로그에 의해 작성된 문서의 원문 및 여러 가지 기술 문서는 아래의 링크에서 PDF로 다운로드 받을 수 있습니다. 그리고 본문의 특정 버전을 지칭하는 개발툴 버전 번호는 모두 Visual Studio로 변경되었음을 참고하십시오. (예-Visual Studio 20xx는 Visual Studio로 표기함) VSTS 팀블로그 MSDN 기술 문서 : http://msdn.microsoft.com/ko-kr/gg620748 필자 소개Microsoft Visual Studio ALM MVP 엄준일 http://blog.powerumc.kr Visual Studio Korea Team Blog http://vsts201.. 더보기
Windows Server AppFabric - Velocity 시작하기 혹시 위의 CMD 에서 키보드를 잘못 누른경우 아래의 인터넷 옵션의 인증서 창에서 신뢰되지 않은 게시자를 지우기 바랍니다. 캐시 서버 시작 콘솔 프로젝트에 참조 추가 CTP2 에서 System.Data.Caching 이 Microsoft.Data.Caching 으로 네임스페이스가 변경되었습니다. NamedCache 를 만듭니다. New-Cache -CacheName NamedCache1 -Secondaries 1 -TTL 15 App.Config 의 설정입니다. App.config 아래는 간단한 샘플 소스 코드입니다. Program.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using Mi.. 더보기
Windows Server AppFabric - 호스트 추가하기 C:\Program Files\Microsoft Distributed Cache\V1.0 폴더를 모두 새로운 클러스터 서비스의 폴더로 이동합니다. 필자는 C:\VELOCITY\DPOWERUMC_CLUSTOR01 요기에다가 이동했습니다. 단, 등호와 값 사이에는 공백이 한 칸 있어야 한다. -_-; (잘보세요… 그렇지 않으면 오류가 납니다 ^^;) 클러스터링 할 데이터베이스도 만들 수 있습니다. 그리고 DistributeCache.exe.config 에서 아래의 항목을 수정하시면 됩니다. cacheHostName 속성 Log location 속성의 경로 DB Connection 정보 필자는 로컬 머신에 클러스터를 추가했습니다. 아래와 같이 서비스 항목에 추가된 호스트가 등록이 되었고, 서비스를 시작해 주시.. 더보기
Windows Server AppFabric - Velocity 란? 때는 바야흐로 2009년 7월이네요. Velocity 를 공부하면서 메모해 놓은 것을 이제서야 발견하여 포스팅을 하고 있습니다. ^^; 현재는 Windows Server AppFabric 이라는 이름으로 공개가 되고 있으며, 코드명은 바로 "Velocity" 라는 이름입니다. 현재 AppFabric Beta 1 까지 출시되었고 이제는 거의 모습을 찾아가고 있는 것 같습니다. 차후에 Velocity 의 현재 제품이름인 AppFabric 을 자세히 살펴보기로 하며, Velocity CTP 3 기준으로 설치와 사용 방법을 간단히 알아보고자 합니다. Why Windows Server AppFabric (Codename "Velocity") ? Velocity 는 분산 캐싱 프레임워크입니다. 우선 분산 캐싱이 왜.. 더보기
거버먼트 2.0 - 개방, 공유, 활용 * 아래는 2009-12-01 거버먼트 2.0 이라는 주제로 한국정보화진흥원에서 주최한 세미나 입니다. 아래의 링크를 통해 발표 자료를 다운로드 할 수 있습니다. (현재 다운로드 오류가 발생하고 있네요^^;) http://www.webkoreaforum.or.kr/government2.0/agenda.htm 마치 Web 2.0 의 물결 흐름에 따라 국가 및 관계기관 들은 거버먼트 2.0 을 키워드로 새로운 변화를 준비하고 있습니다. 예전에는 정보화, 전산화를 위한 데이터 중심의 시스템이었다면, 최근에는 데이터의 활용, 즉 개방, 공유, 활용이라는 세 가지의 큰 키워드를 가지고 국정 운영이 변화되어 가고 있습니다. 거버먼트 2.0 은 결국 Web 2.0, Social Network, Service Tech.. 더보기
DxEF.Proxy.Dynamic.SoaServices 프레임워크 개발 앞서 얘기한 DxEF Dynamic Proxy 를 통해 WCF 서비스 확장 프레임워크가 탄생되었습니다. SoaServices 라는 이름에서도 알 수 있듯이 SOA(Services Oriented Architecture-서비스 지향 아키텍처) 를 구현하도록 도와주는 SOA 프레임워크입니다. 먼저 SOA, 그리고 SOA 를 구현하는 ESB(Enterprise Services Bus) 의 이해를 돕기 위해 아래의 링크를 참고하세요. Enterprise Service Bus를 이용한 서비스의 연결 http://www.oracle.com/technology/global/kr/tech/soa/mastering-soa-series/part2.html 바로 SOA 를 구현하는 ESB 의 핵심 키워드는 아래와 같이 3개.. 더보기
DxEF.Proxy.Dynamic 프레임워크 개발 최근 .NET 에서도 오픈 소스 프레임워크가 상당히 대세이고, 많은 오픈 소스 프레임워크가 공개되고 있습니다. 개발자들은 선택의 폭이 굉장히 넓어졌고, 참고할 수 있는 레퍼런스의 양도 이제는 헤어릴 수 없을 정도입니다. 심지어 .NET Framework 소스 코드까지 디버그 심볼로 그 내부를 볼 수 도 있으며, 최근 .NET Framework 4.0 에 포함되는 일부 라이브러리는 아예 오픈 소스로 공개하고 있습니다. 이러한 프레임워크 홍수 속에서 어떤 프레임워크를 선택하느냐 또한 큰 고민이 아닐 수 없습니다. 예전 Pattern & Practice 스터디를 할 때 토론했던 내용 중에 '왜 돈주고 프레임워크를 쓰느냐! 오픈 소스를 써라' 라는 질문에 굉장히 좋은 비유의 답변을 들은 적이 있었습니다. "내가.. 더보기
Microsoft Sync Framework 에 대한 고찰 Microsoft Sync Framework Microsoft Sync Framework 는 서비스나 어플리케이션을 동기화하기 위한 프레임워크입니다. 대부분 사용자 중심의 어플리케이션에서는 이러한 동기화를 통하여 오프라인 시나리오를 통해 가장 최적화된 서비스를 제공할 수 있습니다. 특히 이러한 동기화 기술은 X-Internet 을 기반으로 한 서비스 또는 인트라넷 등에서 다양한 클라이언트를 지원합니다. 가장 대표적인 기업용 동기화 가능한 어플리케이션은 바로 Outlook 이죠. 이 Outlook 은 데스크탑 어플리케이션은 물론 다양한 모바일 장치를 지원합니다. 저도 최근에 스마트폰으로 Outlook 을 사용하고 있답니다. 각 장치의 어플리케이션은 동기화 엔진을 통해 서버가 제공하는 데이터를 어떤 클라이언.. 더보기