본문 바로가기

개발자 꿈나무의 하루59

(네이버클라우드 부트캠프) 31일차 - 실습프로젝트(DIP, Stack, Queue) SOLID PatternSOLID Pattern 이란 ?객체지향 프로그래밍 및 설계에서 중요한 다섯가지 원칙원칙: 하나의 클래스는 하나의 책임의미: 각 클래스는 하나의 기능만 가져야 한다.예: 사용자 정보를 처리하는 클래스는 사용자 데이터베이스 접근과 같은 역할만 한다.2. Open/Closed Principle (OCP, 개방/폐쇄 원칙)원칙: 엔티티(클래스, 모듈, 함수 등)는 확장에는 열려 있어야 하고, 수정에는 닫혀 있어야 한다.의미: 새로운 기능을 추가할 때 기존 코드를 변경하지 않고도 확장할 수 있어야 한다.예: 새로운 기능을 추가할 때 기존 코드를 수정하지 않고 새로운 클래스를 추가하여 기능을 확장한다.3. Liskov Substitution Principle (LSP, 리스코프 치환 원칙).. 2024. 7. 9.
(네이버클라우드 부트캠프) 30일차 - 실습프로젝트(리팩토링) UMLUML이란?UML caseUML은 크게 6가지로 구분 할 수 있다. 실습프로젝트 리팩토링하기인터페이스의 활용기존 프로젝트의 List 항목들에서 중복된 코드를 줄이자.다음가 같은 UML을 가지도록 수정 한다.먼저 ArrayList와 LinkedList의 공통 코드를 추상 메소드(pulic abstract)로 선언한다. //List 인터페이스 public interface List { void add(Object obj); Object remove(int index); Object[] toArray(); int indexOf(Object obj); int size(); Object get(int index); }다음 ArrayList와 LinkedList의 동일한 .. 2024. 7. 8.
(코딩테스트) 백준-1189번 컴백홈(BFS) 1) 문제  문제한수는 캠프를 마치고 집에 돌아가려 한다. 한수는 현재 왼쪽 아래점에 있고 집은 오른쪽 위에 있다. 그리고 한수는 집에 돌아가는 방법이 다양하다. 단, 한수는 똑똑하여 한번 지나친 곳을 다시 방문하지는 않는다.      cdef  ...f  ..ef  ..gh  cdeh  cdej  ...f       bT..  .T.e  .Td.  .Tfe  bTfg  bTfi  .Tde       a...  abcd  abc.  abcd  a...  a.gh  abc. 거리 :  6     6     6     8     8    10    6위 예제는 한수가 집에 돌아갈 수 있는 모든 경우를 나타낸 것이다. T로 표시된 부분은 가지 못하는 부분이다. 문제는 R x C 맵에 못가는 부분이 주어지고 거.. 2024. 7. 8.
(네이버클라우드 부트캠프) 30일차 - 토이프로젝트(ToDoList만들기) 👨‍🏫 To DO List - 스파르타 공부법 네이버 클라우드 부트캠프 수업 중 팀 프로젝트로 진행한 토이 프로젝트게임 방식으로 적용한 To Do List프로젝트 소개매일 수업을 충실히 듣고 복습 상황을 체크하여 당일 해야 할 일들을 관리 해주는 프로그램⏲️ 개발 기간2024.07.01(월) ~ 2024.07.07(금)아이디어 노트 작성💻 개발환경LanguageIDE📝 목차 아키텍처주요기능결과📈 아키텍처 📌 주요 기능 메인 UI오늘할일 : 원활한 수업 진행 및 복습을 위해 반드시 수행해야 하는 4가지 항목진행상황 : 당일 날짜와 당일 달성률 및 전체 누적 달성률CURD : 1 ~ 6까지 메뉴 선택 후 결과값 입출력누적달성률 20%미만 시 프로그램 종료과업완료하기각 번호를 선택 하면, 당일 할일.. 2024. 7. 5.