전체 글 654

git clone vs pull 차이

clone과 pull은 Git에서 주로 사용되는 두 가지 명령어이며, 각각 다른 목적과 동작을 가지고 있습니다: Clone: git clone 명령어는 원격 저장소를 복제하여 로컬 컴퓨터로 가져오는 명령어입니다. 이 명령어를 사용하면 원격 저장소의 모든 파일과 커밋 히스토리가 로컬 디렉토리에 복사됩니다. 주로 Git 프로젝트를 처음 시작할 때 사용합니다. 새로운 프로젝트를 시작하거나 기존 프로젝트를 다른 컴퓨터로 가져올 때 주로 사용합니다. 예: git clone https://github.com/사용자명/저장소.git Pull: git pull 명령어는 원격 저장소에서 최신 변경 사항을 가져와서 현재 작업 중인 브랜치에 병합하는 명령어입니다. pull은 fetch와 merge의 단축 명령어로 생각할 수..

Project 2 - 마지막날 전체 팀 회고

프로젝트 - 아쉬운 점 1) 기획 의도 미달 닥터마틴 자체의 문제점 개선으로 설정한 ‘세련됨’과 같은 새로운 가치 부여 2) 프론트 입장에서, 닥터마틴 자체의 변수명 설정 복잡도로 인해 파악이 쉽지 않았음 결과물에 대한 회고 1) 우선순위 설정 미스 상세페이지 시간 분배 (Agile) 3) Back-end: Github 활용 -> PR 업로드, 리뷰 (Agile) 4) 팀 협업 툴 미흡 : Trello, Github 5) 의사소통의 부재, 회복

Project 2 마지막날 실제 구현 기능

기획과 다르게 어땠는지 다들 1차 프로젝트, fondation 때부터 계속 해왔기에, 간단하다고 생각하는데 basic is the best입니다. 저희 닥터 마틴 페이지가 기능이 많이 구현되어있더라고요, 본인인증, 통한 기입 제외 -회원가입 본인인증 통한 phone number/ birthdate 자동기입 생략 2) 아이디 생략 -> 이메일로 대체 (편의성) 3) 보다 간단한 비밀번호 설정 조건 (편의성) 4) 이메일 기입 한 칸으로 통합 (편의성) 5) 필수값인 ‘성별’ -> ‘선택안함’ 값 추가 (다양성) 6) 추천인 ID 생략 7) 마케팅 수신 동의 디폴트로 필수 아닌, ’선택값’으로 설정 -로그인 비밀번호 찾기 (‘아이디 찾기’ 생략) 비회원 주문조회 생략 -소셜 로그인 구현 - 정렬 / 페이지네..

Project2: Demo-Day 준비 절차

01. Demo-Day 프로젝트 발표 준비 Goals >wecode 데모데이는 개발자의 관점에서 생각해 본 “제품의 가치”와 “고객의 만족”을 “기술적”으로 어떻게 풀어내었는지 설명하는 자리입니다. 제품 개발을 담당한 “개발자의 관점”을 녹여내어 자사 제품의 기능 구현에 대한 이모저모를 설명합니다. 이때 주의할 점은, 투자, 유치, 채용 등으로 이어지는 실제 스타트업들의 데모데이 형식의 발표를 탈피합니다. Product Manager는 프로젝트가 시작되는 그 순간부터 데모데이 에서의 최종 발표 까지 자사 제품의 기술적가치 및 의의, 목적, 차별성 등을 팀원 들과 함께 고민합니다. 그리고 팀 내부에서 도출한 고민 내용들을 어떻게 웹 서비스내에 기술적으로 녹여낼지 고민합니다. Project Manager는 ..

Project2: 상세페이지 품절 표시

백엔드에서 보내주는 응답값에서 사이즈와 수량이 함께 들어가 있는 배열을 새로운 배열로 꺼내온 뒤에 map을 통해서 값을 가져옴 프론트: // 새로운 배열로 만들어 수량과 사이즈만 빼옴 const newArray = productInfo.options.map(option => { return { quantity: option.quantity, size: option.size }; }); // 아래처럼 새로운 배열을 map으로 돌려서 순서대로 매칭시킨 사이즈별 수량을 확인할 수 있습니다. // 해당 수량의 값이 0 이면 품절로 출력되도록 아래와 같이 작성되어 있습니다! {newArray.map(size => { let color; if (size.size === selectedSize) { color = '..

CRUD (토큰 없이) , layered pattern 연습 , postman으로 통신 코드 확인

Token header에 담아서 postman 통신 CRUD with token ; postman 통신 [postman] Api 주소 createPost, createpost 상관없는지 -> url은 소문자가 법칙 [postman header에 token 담기] Auth에 안 해도 되고 bearer 안해도 되고 Tests 안 해도 되고 environment - global 전역변수 안 해도 되고 Headers pm-developer-justdoit.tistory.com 아래는 토큰 없이, 토큰 관련 코드들 주석 처리하고, req.body에 userId 담아줌 회원가입 유저 생성 = 게시글 생성 (app.post) insert into --> 새로운 row 추가 [INSERT INTO] 로그인 유저 불러오..

layered pattern 코드 분리 연습을 위한 clone, 새로운 github 저장소 연결

CRUD, layered pattern 연습 layered pattern 코드 분리 연습을 위한 clone, 새로운 github 저장소 연결 경우 1)이미 만들어진 단일화된 app.js 코드에서 분리 project 2를 진행하는 중에 project 1을 복사 해서 코드 분리 해보는 경우 1. proje pm-developer-justdoit.tistory.com 경우 1)이미 만들어진 단일화된 app.js 코드에서 분리 project 2를 진행하는 중에 project 1을 복사 해서 코드 분리 해보는 경우 1. project1 폴더 복사 2. .git 연결 삭제 Rm -rf .git 한 로컬에 project1, project2 여러 개의 remote가 연결될 수 있고, 동시에도 remote 연결이 될 수..

깃허브 merge conflict 충돌 해결법

충돌이 나는 이유가 뭔지부터. remote에 내가 만든 BRANCH를 dev에 merge 하려고 하니, 같지 않아서 충돌이 나는 것. 그럼 일단, remote 깃허브랑 local dev 중에 뭐가 더 최신? Remote (그 동안 팀원들이 merge 했을 수도 있으니까) 깃은 "너 충돌 났어" 라고 말하는 거 뿐 해결을 못함. 그래서 로컬에 받아줘서, 그거를 충돌을 내서, 고쳐준 코드를 다시 올리는 것 깃허브가 알아서 자동 병합을 못하니, 뭐가 최신이고 뭐를 지워야할지 몰라서 뭐가 들어갈지 볼라거 충돌이 나는거니까, 그 remote에 있는 dev를 local에서 dev를 pull 받고, remote에서 하려고 했던 login branch를 remote에 merge 하려던 작업을, github에서는 못하니..

Project 2- 주문 결제 장바구니 소셜로그인 구현 **

결제 결제가 두가지 루트가 아닌가? 아니다. 결제 api 하나 - 장바구니 페이지에서 '구매하기' 버튼을 눌러서 결제를 하든 - 상세페이지에서 '바로 구매' 버튼을 눌러서 결제를 하든 프론트 호출 하는 api 하나만 있으면 됨. app.post (/payment, api가 바뀌는 것? cart로 결제하는 거 하나 엔드 포인트가 달라지는 결제에서 error handling은? if 재고가 다 떨어졋다 if 주문금액이 결제 포인트보다 적다 프론트가 페이지가 달라지는거지 ㅡㅡㅡㅡㅡㅡㅡ 장바구니 api (장비구니 담고, 넘어가는거, 결제로 넘어가는거, 장바구니 수량 변경, 주문은 나중에 ) ㅡ 장바듀니 추가 (장바구니 담을때 뭐가 필요해 produxt id, option, userid createdat >>db..

Project 1 : 회원가입 기능 layered pattern (소헌 멘토님) 총정리

layered pattern 하는 방식이 멘토님마다, 동기마다 달라서, project 1 복사 붙여놓기 복사본은 깃 반영 안 됨 ls- al 해서 .git 떠도 반영 안 된다. ls-al 해서 나오는 건 git 삭제 remote 연결 안 될 것 단방향에 따라서, 각 파일의 앞단에서 export로 내보낸거를 require를 가져온다. index.js 는 향후 확장성을 고려하여 생성될 수 있는 다양한 Router(예시: userRouter, productRouter 등)들을 한 곳에 모아 관리하는 역할 1. app.js 외에 나머지를 모두 넣을 scr 폴더부터 만든다 = source 폴더 1-1. 그 안에 파일로 만든다--> src 폴더 안에 router/ controller/ services /models..