MVC?? MVC는 Model, View, Controller의 약자이다. 하나의 JSP, Swing 처럼 화면에 모든 처리 로직을 모아두는 방식이 아닌, Model, View, Controller의 역할을 각기 나누어 Class를 생성하고 개발하는 Model 방식을
디자인 패턴 이란 전체 클래스 중 의미 있는 클래스들을 묶은 각각의 집합을 생각하면 된다. 반복되는 의미 있는 집합을 정의하고, 이름을 지정 후 동일한 의미의 패턴으로써 다른 사람들과 공유할 수 있도록 만들어 놓는
Service Locator 패턴 Service Locator 패턴은 예전에 많이 사용 되었던 EJB의 EJB Home 객체나 DB의 DataSource를 lookup, 즉 찾을 때 소요되는 응답 속도 감소를 위해 사용 된다.
Profiling Tool 시스템의 성능이 느릴 때 가장 먼저 해야 하는 작업은 병목 지점을 파악하는 것이다. Java 기반 시스템에 대해 응답 속도나 각종 데이터 측정 프로그램은 많은데, Application의 속도에 문제가 있을 경우 분석하기 위한 툴로 Profi
Profiling Tool은 대부분 느린 메소드, 클래스 검색을 목적으로 한다. APM Tool은 목적이 상이한데, 주로 문제점 진단이나 시스템 모니터링 운영에 강하다. Java Application 분석 Profiling Tool은 크게 상용, 비 상용으로 나뉜다.
System Class Java를 처음 배울 때 아무 생각없이 쓰는 Class 중 System Class가 대표적이다. 모든 System Class Method static으로 되어있고, 그 안에서 생성된 in, out, err 객체 들도 static으로 선언되어 있
작성한 자신의 메소드의 성능을 측정하는 방법에는 여러가지가 존재한다. 이중 System Class에서 제공하는 static 시간 측정 메소드로 대표적인 currentTimeMilis() 와 nanoTime() 메소드가 있다. static long currentTim
String Class와 성능 String Class는 모든 개발자들이 알면서도 잘 지키지 않는 Class중 하나이다. 바로 성능과 밀접하게 영향을 끼칠 수 있다는 사실을 알면서도, 그것에 대해 깊게 생각하지 않는 것인데, String Class는 잘 사용하면 상관
대부분 프로젝트에서 Transfer Object를 많이 사용하고, 그 내부에서 Collection과 Map Interface를 상속받는 객체가 많이 사용된다. 목록 데이터를 담기에 가장 좋은것이 Array이고, 그 다음으로 Collection 관련 객체들이기 때문이다
위 테스트 코드는 Set Interface를 구현한 HashSet, TreeSet, LinkedHashSet의 Data 저장 과정의 성능 차이를 비교해보기 위한 코드이다. 위 테스트의 결과는 아래와 같다.
List Interface를 구현한 ArrayList, LinkedList, Vector Class 들의 성능 차이를 비교해보려한다. Data 저장 아래 JMH로 작성한 테스트 코드는 세 가지 Calss의 Data 추가 성능 테스트 코드이다.