반응형 전체 글74 [JAVA] 디자인 패턴 - Singleton, Adapter 생성 패턴 객체를 성성하는 것과 관련된 패턴 객체의 생성과 변경이 전체 시스템에 미치는 영향을 최소화 하고, 코드의 유연성을 높여준다. Factory Method Singleton Prototype Builder Abstract Factory Chaining 구조패턴 프로그램 내의 자료구조나 인터페이스 구조 등 프로그램 구조를 설계하는데 활용 될 수 있는 패턴 클래스, 객체들의 구성을 통해서 더 큰 구조를 만들 수 있게 해준다. 큰 규모의 시스템에서는 많은 클래스들이 서로 의존성을 가지게 되는데. 이런 복잡한 구조를 개발 하기 쉽게 만들어주고, 유지보수하기 쉽게 만들어 준다. Adapter Composite Bridge Decorator Facade Flyweight Proxy 행위 패턴 반복적으로 사용.. JAVA 2022. 8. 2. [JAVA] 객체지향 설계 5원칙 SOLID 응집도와 결합도 결합도(coupling)는 낮추고, 응집도(cohesion)는 높여야한다. 결합도 모듈(클래스)간의 상호 의존 정도를 나타내는 지표 결합도가 낮으면 모듈간의 상호 의존성이 줄어들어서 객체의 재사용 및 유지보수가 유리하다. 응집도 하나의 모듈 내부에 존재하는 구성 요소들의 기능적 관련성 응집도가 높은 모듈은 하나의 책임에 집중하고 독립성이 높아져, 재사용 및 유지보수가 용이하다. SOLID 원칙 SOLID는 객체지향 4대 특성에 기반함으로써 유사한 모양을 가진다. 단일 책임 원칙(SRP : Single Responsibility Principle) 하나의 기능에 충실하여야한다. 개방 폐쇄 원칙(OCP : Open Closed Principle) 자신의 확장에는 열려있어야하며, 주변의 변화에.. JAVA 2022. 8. 2. [JAVA] Spring Boot 프로젝트 생성 & DevTools 적용 IntelliJ Community 버전에서는 Maven/Gradle 프로젝트를 생성해서 dependency 세팅하고 SpringBootApplication 파일 생성, 등등 작업으로 프로젝트 생성이 가능하지만, 상당히 귀찮은 작업입니다. 스프링 재단에서는 웹상으로 Spring Initializr 기능을 제공하고 있습니다. 페이지에서 클릭 몇 번으로 초기 세팅된 스프링 부트 프로젝트를 생성할 수 있고, 생성된 프로젝트 폴더를 불러오면 Spring Boot 프로젝트 생성이 가능합니다. Spring Initializr에서 프로젝트 생성 스프링 부트 초기 프로젝트 생성 페이지로 이동 https://start.spring.io/ Project Setting Project : Maven / Gradle 중 어떤 빌.. JAVA 2022. 8. 2. [JAVA] 인텔리제이 To - do List_컨트롤러 구현 - API 기능 스펙 명세 method end point 기능 request response POST / todo 아이템 추가 { "title": "자료구조 공부하기" } { "id": 17, "title": "자료구조 공부하기", "order": 0, "completed": false, "url": "http://localhost:8080/17" } GET / 전체 todo 리스트 조회 - [ { "id": 1, "title": "자바 기초 공부하기", "order": 0, "completed": false, "url": "http://localhost:8080/1" }, { "id": 2, "title": "알고리즘 공부하기", "order": 0, "completed": false, "url": ".. JAVA 2022. 8. 1. [JAVA] 인텔리제이 To - do List_레파지터리 & 서비스 구현 레파지터리 구현 TodoRepository.java 생성 import org.example.model.TodoEntity; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @Repository public interface TodoRepository extends JpaRepository { } TodoServerApplication.java 생성 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplicatio.. JAVA 2022. 8. 1. [JAVA] 인텔리제이 To - do List_프로젝트셋팅 및 모델구현 프로젝트 기본 설정 new project - gradle - java 설정 - 프로젝트 이름 설정 build.gradle파일의 dependencies부분의 내용을 지워준다. plugins부분에 플러그인 추가 id 'org.springframework.boot' version '2.4.2' //스프링부트 관련 id 'io.spring.dependency-management' version '1.0.11.RELEASE' //디펜던시 관련 dependencies부분에 사용할 라이브러리 추가 //스프링부트 관련 implementation 'org.springframework.boot:spring-boot-starter-data-rest' implementation 'org.springframework.boot:.. JAVA 2022. 8. 1. [Git] 원격 브랜치 다루기 로컬에서 브랜치 만들어 원격에 push 해보기 아래 명령어로 원격의 브랜치 명시 및 기본설정 git push -u origin from-local 브랜치 목록 살펴보기 GitHub에서 목록 보기 아래 명령어로 로컬과 원격의 브랜치들 확인 git branch --all 원격의 브랜치 로컬에 받아오기 GitHub에서 from-remote 브랜치 만들기 git branch -a에서 현재는 보이지 않음 아래 명령어로 원격의 변경사항 확인 git brahcn -a로 확인 git fetch 아래 명령어로 로컬에 같은 이름의 브랜치를 생성하여 연결하고 switch git switch -t origin/from-remote 원격의 브랜치 삭제 git push (원격 이름) --delete (원격의 브랜치명) Git&GitHub 2022. 8. 1. [Git] Push & Pull 원격으로 Commit 올리기(Push) 아래 명령어로 push 이미 git push -u origin main으로 대상 원격 브랜치가 지정되었기 때문에 가능 git push 원격의 커밋 당겨오기(Pull) 아래 명령어로 pull git pull pull 할 것이 있을 때 push를 하면? 원격에 먼저 적용된 새 버전이 있으므로 적용 불가 pull 해서 원격의 버전을 받아온 다음 push 가능 push 할 것이 있을 시 pull 하는 두 가지 방법 merge 방식 git pull --no-rebase rebase 방식 pull 상의 rebase는 다름 (협업시 사용 OK) git pull --rebase 로컬의 내역 강제 push해보기 아래 명령어로 원격에 강제 적용 git push --force Git&GitHub 2022. 8. 1. [Git] Github 사용하기 로컬에 원격 저장소 추가 후 푸시 GitHub 레포지토리 생성 후 복붙 명령어 git remote add origin (원격 저장소 주소) 로컬의 Git 저장소에 원격 저장소로의 연결 추가 원격 저장소 이름에 흔히 origin 사용. 다른 것으로 수정 가능 git branch -M main GitHub 권장 - 기본 브랜치명을 main으로 git push -u origin main 로컬 저장소의 커밋 내역들 원격으로 push(업로드) -u 또는 --set-upstream : 현재 브랜치와 명시된 원격 브랜치 기본 연결 GitHub의 해당 레포지토리 페이지 새로고침하여 살펴보기 파일들 내용 커밋 내역들 원격 목록 보기 git remote 자세히 보기: git remote -v 원격 지우기 (로컬 프로젝트와.. Git&GitHub 2022. 8. 1. [HTML] 조코딩 2주차 강의 도메인 발급 구매하기 Freenom 무료도메인을 12개월 사용가능하다. 오류가 있어서 원하는 사이트명을 확인하고 무료 도메인의 주소를 정확히 입력하면 할 수 있다. 예 : aaa -> aaa.tk .tk는 보통 .com, .kr 등과 같은 도메인이다. https://www.freenom.com/en/index.html?lang=en Freenom - A Name for Everyone Cost Price Free Special www.freenom.com 넷플리파이에 적용하기 프로젝트등록 프로젝트파일을 Deploys에 끌어다 놓으면 사이트가 업로드된다. 도메인 셋팅 도메인 구매한 사이트에서 네임서버를 넷틀리파이의 네임서버로 변경. 관리 권한을 넘기는 과정 사이트 도메인 등록 위와 같이 녹색이 뜬다면 정상.. Web 2022. 7. 31. [Git] GitHub 시작하기 github.com 살펴보기 Git으로 관리되는 프로젝트의 원격 저장소 가입 & 토큰 만들기 로그인 Personal access token 만들기 우측 상단의 프로필 - Settings Developer Settings Personal access tokens - Generate new token repo 및 원하는 기능에 체크, 기간 설정 뒤 Generate token 토큰 안전한 곳에 보관해 둘 것 토큰 컴퓨터에 저장하기 윈도우 가이드 Windows 자격 증명 관리자 Windows 자격 증명 선택 git:https://github.com 자격 정보 생성 사용자명과 토큰 붙여넣기 맥 가이드 (링크) Keychain Access 앱 실행 github의 인터넷 암호 항목 선택 사용자명(계정 칸)과 토큰(암.. Git&GitHub 2022. 7. 30. [Git] 브랜치 충돌 해결 브랜치 간 충돌 파일의 같은 위치에 다른 내용이 입력된 상황 merge 충돌 해결하기 main 브랜치에서 git merge sub-1로 병합을 시도하여 충돌 발생 오류 메시지와 git status 확인 에디터에서 해당 부분 확인 당장 충돌 해결이 어려울 경우 아래 명령어로 merge 중단 git merge --abort 해결 가능 시 충돌 부분을 수정한 뒤 git add ., git commit으로 병합 완료 :wq 하여 Vim 저장 및 종료 rebase 충돌 해결하기 sub-2 브랜치에서 git rebase main로 리베이스 시도하여 충돌 발생 오류 메시지와 git status 확인 에디터에서 해당 부분 확인 당장 충돌 해결이 어려울 경우 아래 명령어로 merge 중단 git rebase --abor.. Git&GitHub 2022. 7. 30. 이전 1 2 3 4 5 6 7 다음 💲 추천 글 반응형