힘들었던 알고리즘 주차를 끝나고 주특기 주차가 시작되었다.
알고리즘 풀이에 javascript 문법을 사용했다보니 강의에서 나오는 문법들을 설명 해주실때 아무래도 좀 더 쉽게 접근할 수 있었던거 같다.
과제를 진행할때 제공해주는 강의를 참고하여 진행하였지만, 제공되는 강의가 과제에 도움이 되는 내용들이 많이 없어서 과제를 진행하는 과정은 거의 구글링과, 팀원분들과의 협력으로 해결되었다.
게시판을 만들고, 게시글 목록조회, 상페 조회, 수정, 삭제 기능을 구현하는 과제 이다.
전체 게시글 페이지와, 게시글 제목을 눌렀을때 나오는 상세페이지, 게시글 작성을 눌렀을때 나오는 게시글 작성페이지, 상세페이지에서 가능한 수정,삭제 기능 등을 포함하여 완성했다.
API는 정보 제공자와 정보 사용자 간의 계약으로 지칭되며 소비자에게 필요한 콘텐츠(req)와 생산자에게 필요한 콘텐츠(res)를 구성합니다. 예를 들어 날씨 서비스용 API에서는 사용자는 우편번호를 제공하고, 생산자는 두 부분(첫 번째는 최고 기온, 두 번째는 최저 기온)으로 구성된 응답으로 답하도록 지정할 수 있습니다.
즉, 컴퓨터나 시스템과 상호 작용하여 정보를 검색하거나 기능을 수행하고자 할 때 API는 사용자가 원하는 것을 시스템에 전달할 수 있게 지원하여 시스템이 이 요청을 이해하고 이행하도록 할 수 있습니다.
API를 사용자 또는 클라이언트, 그리고 사용자와 클라이언트가 얻으려 하는 리소스 사이의 조정자로 생각하면 됩니다. API는 조직이 보안 및 제어를 유지관리(누가 무엇에 액세스할 수 있는지 결정)하면서 리소스와 정보를 공유할 수 있는 방법이기도 합니다.
API의 또 다른 이점은 리소스 검색 방법 또는 리소스의 출처에 대한 지식 없이도 사용이 가능하다는 점입니다.RESTful API를 통해 요청이 수행될 때 RESTful API는 리소스 상태에 대한 표현을 요청자에게 전송합니다. 이 정보 또는 표현은 HTTP: JSON(Javascript Object Notation), HTML, XLT 또는 일반 텍스트를 통해 몇 가지 형식으로 전송됩니다. JSON은 그 이름에도 불구하고 사용 언어와 상관이 없을 뿐 아니라 인간과 머신이 모두 읽을 수 있기 때문에 가장 널리 사용됩니다.
노드로 확장 모듈을 작성하면 npm을 통해 중앙 저장소로 배포할 수 있습니다. package.json 파일은 배포한 모듈 정보를 담고자 만들어졌지만, 노드로 작성하는 애플리케이션도 package.json 파일을 사용하여 관리할 수 있습니다. 꼭 확장 모듈 형태로 배포하기 위한 것이 아니더라도 애플리케이션을 개발할 때 package.json 파일을 이용하면 사용하는 확장 모듈에 대한 의존성 관리가 가능하기 때문에 편리합니다.
pacakge.json 파일은 기본적으로 CommonJS의 명세를 충실히 따르고 있으며 JSON 형식의 파일입니다.
직접 작성할 수도 있고 npm init 명령을 통해서 자동으로 생성할 수도 있습니다. 그리고 해당 애플리케이션을 위해 사용한 확장 모듈에 대한 정보는 npm install -save를 통해 자동으로 모듈에 대한 정보를 추가할 수 있습니다.packaje.json의 규칙과 참고사항들이다
- package.json 파일은 반드시 name과 version 항목을 포함해야합니다.
- name: 소문자 한 단어로 이루어져야합니다. 그리고 하이픈( - )과 언더스코어( _ )가 포함될 수 있습니다.
- versoin: x.x.x 형식을 따라야 하며, 작성 규칙을 시맨틱 버저닝이라고 합니다.
- 패키지 정보는 dependencies 또는 devDependencies에 작성됩니다.
- dependencies와 devDependencies의 차이는 다음과 같습니다.
"dependencies": 프로덕션 환경에서 응용 프로그램에 필요한 패키지.
"devDependencies": 로컬 개발 및 테스트에만 필요한 패키지.
이번 주차는 여러모로 막막했던 한주였다. 항상 느끼는 거지만 나의 부족한점들, 지식들 많은 것들이 너무나도 부족해보인다 매일 늦게까지 열심히 하지만 따라가지 못하는 지식들, 이해도 하루하루 늘어가는건 한숨뿐이지만, 알고있다 이러한 시간들, 고통, 고민들을 포기하지 않고 견뎌 낸다면, 내일의 나는 좀 더 달라져 있을거라는 걸, 지금 당장 많은것들이 부족해보이고, 힘들겠지만 절대 포기하고 싶지 않고 싶다. 지금은 팀원분들의 많은 도움으로 한주한주 보내고 있지만, 언젠간 나도 팀원분들에게 많은 도움을 주는 그날까지 화이팅!!
Rest API -
-https://www.redhat.com/ko/topics/api/what-is-a-rest-api
-https://meetup.toast.com/posts/92
Package.json -
-https://edu.goorm.io/learn/lecture/557/%ED%95%9C-%EB%88%88%EC%97%90--%EB%81%9D%EB%82%B4%EB%8A%94-node-js/lesson/174371/package-json
-https://velog.io/@skyepodium/package.json