개발자 꿈나무의 하루59 (네이버클라우드 부트캠프) 35일차 - 실습프로젝트(컴포짓패턴과 복제패턴) Composit Pattern 1.컴포짓 패턴의 개념 1) 정의 객체들의 트리를 구성하여 부분-전체 계층 구조를 나타내는 패턴이다. Component : 공통 인터페이스를 정의하여 단일 객체와 복합 객체가 동일한 방식으로 처리될 수 있도록 한다. Leaf : 트리의 말단 요소로 더이상 하위 요소를 가지지 않는 객체를 나타낸다. Composite : 하위 요소를 가지는 복합 객체로, 하위 요소들을 관리하고 해당 요소들에게 작업을 전달한다. 2) UML으로 이해하기 패턴 적용 전 : 여러객체에서 중복된 코드가 발생하며, 하나의 객체가 여러개의 역할을 한다. 패턴 적용 후 : 기능별/역할별로 분리 2.MyApp에 적용하기 1) Menu생성하기 메뉴 인터페이스만들기 추상메서드 execute()가 필.. 2024. 7. 18. (네이버클라우드 부트캠프) 34~37일차 - 토이프로젝트(도서관리 프로그램) 도서관리 프로그램 - 만화책방 운영하기Java기초프로그래밍 중 3번째 프로젝트CRUD기능과 MENU기능을 통해 도서관리 프로그램 만들기프로젝트 소개사용자가 만화책방을 운영하는 게임손님, 대여할 도서, 대여기간은 랜덤손님에게 대여여부에 따라 명성도,자금,피로도 증감손님 종류에 따른 도서 분실 확률이 다름CRUD기능과 MENU기능을 통해 도서관리 프로그램 만들기개발환경 및 적용기술Language & IDE적용기술 Nested Class : 중첩클래스를 활용하여 익명클래스, 람다식, 메서드 레퍼런스 적용 Composit Pattern적용 : GoF의 Composit 패턴을 적용하여 CRUD와 UI출력 분리 (SRP) 랜덤 클래스 만들기 : ArrayList 크기 만큼의 랜덤 숫자 생성, n% 확률로 0또는1 .. 2024. 7. 17. (네이버클라우드 부트캠프) 33일차 - Java프로그래밍 기초(중첩) 중첩클래스 (이어서) 1.정적 중첩 클래스(static nested class) 1) 개념 바깥 클래스의 인스턴스에 종속되지 않는 클래스. top level class와 동일하게 사용된다. 2) 접근제한자(modifier) 정적 중첩클래스도 클래스의 멤버이기 때문에 필드나 메서드처럼 접근 제한자를 붙일수 있다. 클래스 내부에서 사용되기도 하지만, 외부에서 사용되는 경우도 많아 default나 public을 많이 쓴다.₩ public class StaticNestedClass { private static class A1 {} static class A2 {} //(package-private) protected static class A3 {} .. 2024. 7. 11. (네이버클라우드 부트캠프) 32일차 - 실습프로젝트(Iterator패턴, 중첩클래스) Iterator 디자인패턴 1.Iterator 패턴의 개념 Iterator 디자인 패턴은 컬렉션(예: 리스트, 트리, 해시맵 등)의 내부 구조를 노출하지 않고 그 요소들에 순차적으로 접근할 수 있는 방법을 제공하는 패턴이다. 반복자(Iterator)를 사용하여 컬렉션의 요소를 하나씩 차례대로 탐색할 수 있다. 2.Iterator 설계패턴 1) Iterator의 필요성 자료 구조마다 메서드를 호출하는 방법이 상이하다. 자료 구조마다 동일 기능을 하는 메서드가 다르면 유지보수에 불리하다. 2) Iterator 패턴적용하기 Iterator 인터페이스를 활용하여 동일한 메서드를 만든.. 2024. 7. 10. 이전 1 2 3 4 5 6 7 ··· 15 다음