본문 바로가기
코딩/TIL,WIL

항해99 day 1

by 내 멋대로 삶 2021. 11. 3.

항해99 day 1 

사전과제로 웹과정인 html,css,js,python을 이용해

jquery,ajax,json,flask,pymongo 스텍을 사용해서 AWC-EC2서버에 배포까지의 과정을 거치고 

미니프로젝트를 진행한다.

 

미니프로젝트는 로그인/로그아웃/회원가입/마이페이지/메인페이지/상세페이지를

연결해 자유롭게 연동되도록 하는 프로젝트를 진행한다.

 

미니프로젝트의 주제는 -도전하는 습관만들기- 

작심삼일은 이제 그만!
재밌는 챌린지를 골라 도전을 재밌게 도와주는 Dr.challenge가 왔습니다.
챌린지를 완수하면 얻을 수 있는 뱃지를 모아 동기부여까지 도와드립니다.

와이어프레임

처음 와이어프레임을 짜보면서 큰틀에서의 구상은 어느정도 틀이 금방 잡혀서 우리팀은 금방 만들수 있을거라고 생각했다. 하지만 시간이 지날수록 눈앞이 캄캄해졌다.

 

문제점: 우리팀은 로직에 대해서는 생각을 안하고 페이지를 만드는것과 짧은 시간인 5일동안 많은 욕심을 내어서 시간부족이 예상이 된다. 

 

시사점: 큰 틀도 중요하지만 로직을 촘촘히 짜서 어떻게 진행하고 나아갈지 하나하나 짚어서 짜놔야 팀원들간에 업무분담이 잘잡힌다. 시간이 제한된만큼 구현할 수 있는 시스템을 선별해서 미션을 완수해야한다.

 

 api를 설정하기위해 팀원들과 상의할 때  post 또는 get을 사용하는 방법에 대해 자세하게 몰랐다. 

 

POST : POST는 리소스를 생성/변경하기 위해 설계되었기 때문에 GET과 달리 전송해야될 데이터를 HTTP 메세지의 Body에 담아서 전송합니다. HTTP 메세지의 Body는 길이의 제한없이 데이터를 전송할 수 있습니다. 그래서 POST 요청은 GET과 달리 대용량 데이터를 전송할 수 있습니다. 이처럼 POST는 데이터가 Body로 전송되고 내용이 눈에 보이지 않아 GET보다 보안적인 면에서 안전하다고 생각할 수 있지만, POST 요청도 크롬 개발자 도구, Fiddler와 같은 툴로 요청 내용을 확인할 수 있기 때문에 민감한 데이터의 경우에는 반드시 암호화해 전송해야 합니다.

 

GET : GET은 서버로부터 정보를 조회하기 위해 설계된 메소드입니다. GET은 요청을 전송할 때 필요한 데이터를 Body에 담지 않고, 쿼리스트링을 통해 전송합니다. 

 

첫날은 github로 인해 큰 고생을 했다.

팀원들간의 github연동 부터 시작해서 branch를 각자 받아 연동하기까지 시간이 꽤나 걸렸다.

 

나는 처음에 gitbash를 통해 터미널로 연동을 하려했는데 실패했다.

가장 어려운부분인 느낌이었다. 

처음 clone을 이용해 연동하려고 하다가 안되고, fork를 해야한다는 구글링을 보고 따라하다가 fork는 완전 따로 프로젝트가 달라진다는 것을 깨닫고 다시 팀장이 정해준 branch로 commit하려했지만, 정확한 방법을 몰라서 계속 main으로 시도했다. 결국 터미널먹통으로 인해 다른 방법을 강구했다. 망할 github 단순하게좀 만들어줘 제발...

 

우리는 지금 pycham 프로그램 내부에서 git으로 연동을 구현해 commit,push,pull을 당분간 자유롭게 이용할 수 있게되었다. 하지만 터미널은 개발자의 필수 덕목이므로 앞으로도 계속 시도해봐야할 것 같다.

 

commit
Git 은 commit(커밋) 을 통해 '현재 프로젝트의 상태'을 저장하고 조회합니다.

여러분들이 '파일 저장' 버튼을 누르면 현재 상태의 파일이 저장되는 것처럼 현재 프로젝트의 상태를 저장할 수 있어요. 정확히는 snapshot(스냅샷) 즉, 찰칵 사진을 찍는 것 📸처럼 현재 프로젝트의 전체 상태를 포착하는 거에요.

초심자를 위한 꿀 패턴! pull - commit - push
    • Git과 초면인 여러분들을 위한 팁! 혼자 Git 프로젝트 작업을 할 때는 pull -> 로컬 repo commit -> push 순서로 하면 좋아요.
    • 원격 repo 와 로컬 repo 에서 같은 파일을 수정하면 Git 이 같은 파일을 수정했는데 내가 어떤 파일을 최종으로 할까? 라고 확인 메시지를 줍니다. (정확한 내용은 곧 배울꺼에요!) 이런 것을 바로 **충돌(conflict)**이라고 표현해요.
    • 충돌을 피하기 위해서는 아래 순서를 따라주는 게 편해요. 같은 파일을 동시에 수정해버리면 충돌이 나니까 두 repo 의 상태를 똑같이 맞춰준 후에 변경작업을 해주는 거에요.
    1. 원격 repo 와 로컬 repo 의 상태를 똑같이 맞춰주기, 즉 로컬 repo 에 원격 repo 작업내역 가져오기 (pull)
    2. 로컬 repo 의 작업 내용을 저장하고 (commit)
    3. 원격 repo 에 로컬 repo 내용을 반영 (push)
    • 원격 repo 에 변경사항이 생겼다! 하면 먼저 pull 하고 로컬 repo 에서 작업하면 많은 경우 충돌을 피할 수 있어요.
    언제나 100% 통하는 패턴은 아니에요! 경우에 따라 다른 패턴을 사용하기도 하니 대부분의 경우에 통하는 초심자를 위한 팁! 정도로 기억해두세요. 😉

 

 

 

 

'코딩 > TIL,WIL' 카테고리의 다른 글

항해 99 DAY8  (0) 2021.11.14
항해99 WIL(Weekly I Learned) day 7  (0) 2021.11.08
항해 99 day 4,5  (0) 2021.11.07
항해99 day3  (0) 2021.11.06
항해99 Day2  (0) 2021.11.05