본문 바로가기

전체 글196

Responsive Design - Kent Beck 올해 많은 세미나 중에 Software 공학의 대가라고 불리는 사람들의 방한은 큰 사건이 아닐 수 없다. 특히, 이러한 대가들이 모두 Agile, TDD, Refactoring을 공통적으로 이야기하고 있으며, 국내에서 그러한 주제에 대해서 관심의 시각이 늘어나고 있다는 것이 가장 주목할 만한 사건들인 것 같다. 다음은 Kent Beck 세미나의 주요 내용들이다. - Responsive Design은 테스트하기 쉬워야 한다. - 설정이나, 배포하기 어려운 구조 역시 설계 문제로 보아야 한다. - 개발의 목표(goal)은 기능의 안정된 흐름(steady flow of feature)을 추구해야 한다. 이는 responsive design을 통해 달성될 수 있다. - 기능을 추가하는 것(adding featu.. 2009. 9. 6.
설계 패턴을 선택하는 방법 설계 패턴에 대해서 처음 접하거나 익숙하지 않을 경우, 특정 설계 문제를 해결하는 패턴을 선택하는데 있어서 어려움이 따른다. 디자인 패턴 책에서는 특정 문제에 적합한 설계 패턴을 선택하는 접근 방법에 대해서 다음과 같이 설명되어 있다. 1. 설계 패턴이 어떻게 설계 문제를 해결하는지를 고려하라. 2. 의도(intent) 절을 잘 읽어보라. 3. 패턴들끼리 어떤 관계가 있는지를 이해하라. 4. 유사한 목적(purpose)를 가지는 패턴들을 숙지하라. 5. 재설계에 대한 원인을 파악하라. 6. 설계에서 변동성이 있어야 되는 것이 무엇인지를 고려하라. 의도 (purpose) 설계 패턴 변동될 수 있는 부분 생성 Abstract Factory 제품 객체들에 대한 군(family) Builder 복합 객체를 생성.. 2009. 9. 3.
자바에서 캐싱 솔루션 개요 데이터 캐싱은 자바 애플리케이션에서 매우 중요한 고려사항이다. 데이터 캐싱은 분산 애플리케이션에서 원격 호출의 수를 한정시키고 영구 데이터 저장에 대한 호출 수를 줄임으로써 웹 애플리케이션의 성능을 향상시킨다. 캐싱이 성능을 향상시키고 아키텍처가 실제로 동작하도록 하는데 기여하지만, 사실 설계를 복잡하게 하고 동시성 코드와 클러스터에 대한 동기화와 같은 복잡성을 유발시킬 수도 있다. 일단 데이터 캐싱이 아키텍처의 필요한 부분이라고 결정되었다면, 적합한 캐싱 솔루션을 채택하는 것이 어려울 수 있다. 항상 캐싱 솔루션을 구현하는데 선택사항이 있다. 이러한 접근방법은 분명 장점이 있을 수 있지만, 프로젝트의 비용과 시간에 불가결하게 영향을 미치게 된다. 또 다른 방법은 오픈 소스 캐싱 제품들 중에 하나를.. 2009. 9. 1.
설계 패턴 (Design Pattern) 사용법 설계 패턴을 사용하는 방법은 GoF 책의 첫부분에 단계별로 다음과 같이 적혀있다. 1. 개괄적으로 한번 패턴을 훑은다 : 패턴이 해당 문제에 적합한지를 따져보기 위해 적용(Applicability)와 결론(Consequences) 부분을 특별한 주의를 갖는다. 2. 다시 되돌아가서 구조(structure), 구성요소(participant), 구성요소간 관계(collaborations)에 대해 숙지한다 : 패턴에 있는 클래스들과 객체들에 대해 이해하고 서로 어떤 관계가 있는지를 확인한다. 3. 코드에서 패턴의 구체적인 예를 살펴보기 위해 예제 코드(Sample Code) 부분을 본다 : 코드에 대한 공부는 패턴이 어떻게 구현되지는지를 배우는데 도움이 된다. 4. 어플리케이션 범주에서 의미있는 패턴 구성요소.. 2009. 8. 31.
반응형