git 브랜치와 객체지향

rekv·2024년 11월 27일

BEYOND SW CAMP

목록 보기
6/30
일수일자교과목내용편성시간
524/11/26기반기술SW공학8

GItHub ISSUE

깃허브에 들어가 이슈 탭으로 들어가면 label, milestiones, issue를 만들 수 있다.

이는 이슈를 만들 때 필요에 따라 오른쪽 탭에서 골라서 설정해주면 된다.

이슈를 만들면 #번호 가 자동으로 붙는데, 이를 commit할 때 사용하면 관련 이슈를 모아서 볼 수 있다.


PR을 할 때 다음과 같이 작성해, Projects에서 알아서 done으로 넘기는 것도 가능
↓close #7 결과

REAME.md 작성하기

파일을 구분짓는 것은?
파일의 내용

IT에서 많이 사용하는 문서 파일들 (메모장)

  • html, css, js : 웹 표준, 웹 페이지를 만드는 데 사용되는 문서
  • md : 문서 내용 정리
  • ini, conf : 서버의 설정 파일
  • yml : 백엔드 설정 파일, 스프링 부트, 도커, K83, 데브옵스
  • json, xml : 데이터를 전송하기 위한 양식, xml은 옛날(설정 파일로 쓰기도 함)

ml 마크업 랭귀지 : <태그> 내용 </태그>
md 마크다운 랭귀지 : #내용

XML VS JSON
: XML은 열고 닫고가 비효율적, 그래서 좀 더 효율적인 JSON 사용
XML

<students><name></name><name></name><name></name></student>

JSON

{"student":[{"name":"심"}, {"name":"김"}, {"name":"박"}]}

md 사용법

강조 : * 두개로 감싸기

  • 순서 없는 리스트 (-)
  1. 순서 있는 리스트 (1. 2. 3.)

글자 쓰다가 개행하고 싶으면 마지막에 띄어쓰기 2번 해주기
단락바꿈은 엔터 두 번

구역 나누기는 ---

글자 밑에 쓸 경우엔 이렇게 된다

글자 밑에 쓰면 #과 같은 효과이므로 띄워놓고 쓰기

링크

[링크](이름)

예시

이미지

![이미지설명](링크)

응용

[![이미지] (이미지 링크)] (이동하고싶은 링크)

위와 같이 설정할 경우, 이미지를 클릭하면 링크로 이동이 된다

백틱 은 `로 감싸주기

숨은 내용은 < datails > < /details > 로 만들 수 있다.

실습

  1. 이슈 등록
    • 무슨 프로젝트를 해보고 싶은지 주제를 md에 등록
  2. 이슈 in progress 이동
  3. 브랜치 따기
  4. 작업
  5. 커밋 및 푸시
  6. RP -> 머지 (알아서 close되게

실습 중 위와 같은 오류가 떴는데, 찾아보니 아까 practicec/readme라는 브랜치를 사용해서, practice/readme/rewrite와 같이 하위 브랜치 느낌으로는 생성이 불가능한듯하다
아예 새로운 이름(ex. readme/rewrite)으로 지어주니까 무사히 브랜치가 만들어졌다.
rm -rf .git/ref/브랜치명으로 브랜치를 삭제하고 생성하는 것도 가능한듯하지만, 강제로 삭제하는 것이기 때문에 추천하지는 않는다고 한다.

실습

branch confict

객체지향

객체 지향이란?

객체
- 현실 세계의 무언가를 컴퓨터 세계로 옮겨 만든 것
- 현실 세계의 무언가를 개발에 사용할 수 있도록 정형화
- 객체는 속성과 기능으로 이루어쳐있다.

추상화 = 정형화 = 공통사항

  • 연관 관계: 액터와 유스케이스 간에 상호 작용이 존재하는가?
  • 포함 관계: 유스케이스를 실행하기 위하여 반드시 실행되어야 하는 유스케이스가 존재하는가? (필수)
  • 확장 관계: 유스케이스를 실행함으로써 선택적으로 실행되는 유스케이스가 존재하는가?(필수까지는 x)
  • 일반화 관계: 액터 또는 유스케이스가 구체화 된 다른 액터 또는 유스케이스를 가지고 있는가?

실습

쇼핑몰의 기능
회원

  • 회원 가입(휴대폰 번호 인증, 이메일 인증), 로그인(일반 로그인, 소셜 로그인), 로그아웃, 회원 탈퇴

상품

  • 상품 검색, 상품 조회, 상품 등록, 상품 삭제, 상품 수정

주문

  • 주문 생성, 주문 조회, 주문 취소, 결제, 주문 변경

유스케이스 다이어그램

클래스 다이어그램

데이터 모델링

현실 세상에 유형또는 무형의 무언가를 컴퓨터 세상으로 옮긴 것

  • 객체 지향 프로그램 : 객체, 속성 + 기능
  • 데이터베이스 : 테이블, 속성 + 속성의 값

데이터베이스 : 관계형 데이터 베이스
관계형 데이터 베이스가 아닌 것 : NoSQL

ORM : Object Relation Mapping

데이터 모델링
개념적 구조(ERD) - 논리적 구조(정규화) - 물리적 구조

데이터베이스

작동 과정을 모아서 보면

+) 클래스 다이어그램을 그릴 때 주의점

게시글 작성() : create()
게시글 상세 조회() : read()
게시글 내용 수정() : update()
게시글 삭제 : delete()

위의 기능은 프로그램 코드(자바, 파이썬, SQL)로 SQL을 실행해서 수행하는 작업은 클래스 다이어그램에서 객체의 기능에 넣으면 안 된다
(프론트엔드에서 다 바꿀 수 있음)
-> CRUD할 때 잘 생각할 것

0개의 댓글