JAVA 썸네일형 리스트형 String, StringBuffer, StringBuilder https://novemberde.github.io/2017/04/15/String_0.htmlhttp://ooz.co.kr/298 String 객체는 한 번 생성되면 할당된 메모리 공간이 변하지 않습니다. + 연산자 또는 concat 메서드를 통해 기존에 생성된 String 클래스 객체 문자열에 다른 문자열을 붙여도 기존 문자열에 새로운 문자열이 붙는 것이 아니라, 새로운 String 객체를 만든 후, 새 String 객체에 연결된 문자열을 저장하고, 그 객체를 참조하도록 합니다. StringBuilder는 변경가능한 문자열이지만 synchronization이 적용되지 않는다. 하지만 StringBuffer는 thread-safe라는 말에서처럼 변경가능하지만 multiple thread환경에서 안전한 .. LinkedList, ArrayList 차이 https://www.holaxprogramming.com/2014/02/12/java-list-interface/http://www.nextree.co.kr/p6506/ArrayList ArrayList는 내부적으로 데이터를 배열에서 관리하며 데이터의 추가, 삭제를 위해 아래와 같이 임시 배열을 생성해 데이터를 복사 하는 방법을 사용 하고 있다. 대량의 자료를 추가/삭제 하는 경우에는 그만큼 데이터의 복사가 많이 일어나게 되어 성능 저하를 일으킬 수 있다. 반면 각 데이터는 인덱스를 가지고 있기 때문에 한번에 참조가 가능해 데이터의 검색에는 유리한 구현체이다.LinkedList LinkedList는 데이터를 저장하는 각 노드가 이전 노드와 다음 노드의 상태만 알고 있다고 보면 된다.ArrayList와 .. Annotation http://www.nextree.co.kr/p5864/ JUnit http://www.nextree.co.kr/p11104/ 객체지향의 5가지 개념 객체: 데이터, 행위, 아이덴티티를 가지고 있는것 클래스: 객체를 생성하는 틀 캡슐화: 행위와 상태를 포장하고 외부에 노출할 것과 감출 것을 결정하는것. 외부에 노출되는 모든것을 인터페이스라고 할 수 있다. 상속: 핵심은 계층구조를 표현하는것. 재사용성도 얻을 수 있음 다형성: 캡슐화, 상속과 함께 동작함으로써 객체지향 프로그램의 흐름제어를 단순화 한다. 하나의 계층에 속한 객체들이 같은 명령에 대해 다른 행위를 수행. 핵심은 흐름제어를 객체로 처리하도록 단순화 하는것 자바의 자료구조 소프트웨어를 극단적으로 단순하게 묘사하면 데이터를 입력받아 논리/산술 처리를 하고 출력데이터를 만들어내는 명령의 집합이라고 할 수 있다. 소프트웨어의 구성을 두가지 요소로 요약하면 데이터와 데이터를 조작하는 명령이다. 명령을 효율적으로 구성하는 방식을 배우는것 => 알고리즘 복잡한 형태의 데이터를 효율적으로 구성하는 방식을 배우는것 => 자료구조 데이터타입은 개별 데이터의 크기와 성질만을 정의한다. 자료구조는 데이터의 집합을 어떤 형태로 구성할 것이냐를 정의함 돌을 어떻게 쌓아야 무너지지 않을까와 같은맥락 좋은 자료구조는 효율성, 추상화, 재사용성 3가지 잇점을 제공함 효율성: 자료를 읽고, 쓰고, 찾는데 걸리는 시간 & 같은 시간에 처리 할 수 있는 작업량 추상화: 데이터 집합의 특징적인 형태에 따라 .. Collection Collection(컬렉션) 자바에서 '목록성 데이터를 처리하는 자료구조'를 통칭한다. 자료구조(Data Structure)는 어떤 정보를 담는 것을 의미하여, 하나의 데이터가 아닌 여러 데이터를 담을 때 사용하는 것이다.배열이 가장 기본적인 자료구조이며, DTO 또한 자료를 담는 하나의 방식이라고 볼 수 있다. * 자바에서의 자료구조 유형- 순서가 있는 목록인 List형- 순서가 중요하지 않은 목록인 Set형- 먼저 들어온 것이 먼저 나가는 Queue형- KEY-VALUE의 형태로 저장되는 Map형 ※ List, Set, Queue는 Collection이라는 인터페이스를 구현하고 있다. Collection 인터페이스는 java.util 패키지에 선언되어 있으며, 여러 개의 객체를 하나의 객체에 담아 처.. MVC 디자인패턴 MODEL 모델은 데이터를 가지고 있는 객체 또는 JAVA POJO이다.데이터가 바뀌었을 때 컨트롤러의 데이터를 업데이트 하는 로직도 포함 VIEW 모델에 포함된 데이터의 시각화를 담당 CONTROLLER 모델과 뷰를 사용하는건 컨트롤러컨트롤러를 사용하는건 어플리케이션 컨트롤러는 모델과 뷰 객체를 활용해 멤버 함수를 만든다.컨트롤러의 역할은 어플리케이션에서 사용할 interface함수들을 제공하는것.어플리케이션에서 데이터 관련된 작업을 하고싶다면 모델, 뷰 객체는 건드리지 않고 컨트롤러 객체만 다루면 된다.컨트롤러 윗 레벨에서는 DB, 모델, 뷰 등에 대해 알 필요도 없고 컨트롤러 객체의 조작법만 알면 됨 그래서 왜 MVC패턴을 사용하나? 사용자가 보는 페이지와 데이터처리, 그리고 이 두가지를 중간에서 .. 이전 1 다음