코드스테이츠| PMB 11/Review

[정리] JSON과 GIt/Github, 개발 process (마무리)

Sutella 2022. 4. 28. 14:39
728x90
📢 JSON
  • 클라이언트와 서버가 요청/응답을 주고받을 때, 필요한 정보의 데이터를 담는 형식
  • 중괄호로 정보를 묶고, 중괄호 안에 소괄호로 정보에 대한 값 나열
  • XML vs. JSON
    • XML: html과 호환성이 높으나 용량이 무거움
    • cf. XHR: XML Http Request의 줄임말. 웹에서 javascript 코드가 서버에게 데이터를 주고받는 기술 (JSON도 가능), 새로고침 없이 실시간으로 서버에게 데이터를 받아 화면에 표현할 때 사용

 


개발 Process
요구사항 정의 – 설계 – 로컬 개발, 디버깅 - 코드 업로드 - 코드 리뷰 - 테스트 배포 - 테스트 - 프로덕션 배포
3. 개발과 디버깅(로컬)
  • 디버깅: 버그 해결 과정
  • 개발 과정에서 필요한 리소스 관리, 협업

 

4. 원격 업로드 (Git)
  • 다수의 개발자들이 하나의 어플리케이션을 개발하게 되는 경우가 많음
  • 이때 코드 간의 충돌과 여러 코드 버전이 동시에 생성되는 문제 발생
  • 이를 줄이기 위해 로컬에서 개발 완료된 코드는 버전 관리를 위해 Git에 업로드
  • Git 용어
    • Repositories: Git에서 개발하는 코드를 저장하는 단위 (로컬/원격=Github)
    • Clone: 원격저장소에 있던 파일, 정보, 히스토리 등을 모두 다운로드한 로컬저장소(Local Repository)를 만들어 주는 역할 (복제)
    • Branch: 일부만 수정사항이 있는 경우에 메인 프로젝트에서 일부를 가지처럼 나누어 별개의 프로젝트로 나눈 것. 작업이 끝난 후 merge 필요
    • Pull Requests: 원본 Repository에 반영(Pull)해줄 것을 요청(Request)하는 작업 (코드 리뷰)

 

5. 코드 리뷰 (필수는 아님)
  • 한 개발자가 작성한 코드를 한 명 이상의 개발자가 함께 보며 코드에 대해 리뷰해주는 과정
  • 중요한 이유
    • 서로의 개발 스타일 이해
    • 일관된 아키텍쳐 유지
    • 기술 공유 및 습득
    • 잠재적인 오류 발생 가능성 축소

 

6. 테스트
  • 테스트 서버를 별도로 구축하는 이유
    • 로컬에서는 문제가 없다는 것이 ‘진짜’ 문제가 없다는 것을 의미하지 않음.
    • 개발은 완벽하지 않다는 것을 가정
    • 로컬과 실제 서비스에 영향을 주지 않고 안전하게 개발 가능
    • 실전 구동 시에 발생할 수 있는 문제를 미리 발견 가능

 

7. 프로덕션 배포
  • PM이 해야할 일
    • 배포 환경 점검
    • 배포가 성공적인지 점검
    • 배포 실패 시 바로 서비스 중지
    ⇒ PM은 제품 책임자이기 때문에, 배포에 직접 관여해야 함
728x90