본문 바로가기

내일 배움 캠프

(109)
WIL 20230625 0. 기간 : 20230619~20230625 1-1. 이번 주 동안 있었던 일 Lv2, Lv3 과제 제출 (로그인 기능 : mongoose, sequelize) 1-2. 이번 주 체크리스트 [ O ] 예쁜 말로 협업하였는가? [ O ] 12시간 동안 몰입하였는가? [ ... ] 코딩 시 복사 + 붙여넣기를 하지 않았는가? 좀 하였다. [ O ] 친절한 개발자였는가? [ ? ] 이번 주를 평가하였을 때 주니어 개발자가 될 수 있겠는가? 기억을 잘 못한다면 다른 사람보다 몇 번 더 보고 읽고 외우자. 2. 이번 주 소감 이번 주는 힘들었다. 새로운 것들도 많이 배웠고, 전혀 다른 개념의 것들이라 처음에 내가 별세계에 온 줄 알았다. 3. 이번 주에 배운 것 const alltodos = require("...
정예반 숙제 연습 - map (20/20) : 완료 1 2 3 4 약간 바보 같은 풀이였으나, 음식물 쓰레기를 줄이기 위한 최소 남는 피자 조각수로 응용가능할 것 같다. (방전 상태이므로 오늘은 안 한다.) 5 6 7 8 9 버그 발견 : || 를 쓰면 |가 두 번 들어가므로 총 문자가 4개가 되어 제대로 작동하지 않는다. 10 11 12 13 14 15 16 17 18 19 20
정예반 숙제 연습 - express 암기 (20/20) : 완료 express 기본 예제 20번 적고 서버 열고 브라우저로 확인 1-1. 1-2 질문 답 : 맞다! 1-3 1-4 1-5 1-6 1-7 1-8 1-9 마우스를 사용하는 것이 귀찮아 터미널 명령어로 파일을 생성해서 내용을 넣고 돌렸다. 1-10 1-11 1-12 1-13 1-14 1-15 1-16 1-17 1-18 1-19 1-20
정예반 일지 20230623 매개 변수는 함수 안에서만 효력을 발휘한다. 매개 변수의 이름은 내가 정한다. 매개변수 = 인자 = 파라미터 백엔드 목적 : 데이터 관리 CRUD Create 데이터 생성 Read 데이터 읽기 Update 데이터 수정 Delete 데이터 삭제 변수에도 데이터를 저장 가능 (값 할당) > 프로그램 껐다 키면 날라간다 하지만 데이터베이스 사용 이유 : 영속적인 저장 RDB : Relationship DataBase (ex : MySQL) 프로그램 간의 대화법 : 명령어 (text) DB Client : DB를 UI로 사용 가능 명령어를 사용하는 이유 : 명령어를 사용하지 않으면 퍼포먼스가 좋게 가져올 수 없다. ORM이 때로 비효율적인 쿼리를 짤 수 있다. 개발자는 쿼리를 알아야 한다. // npm inst..
dayounghw ver3 MySQL Sequelize 적용 내일 배움 캠프 Node.js 트랙 노드 숙련 주차 과제 ver.3 회원가입, 로그인 기능이 추가된 나만의 블로그 백엔드 서버 만들기 : sequelize 데이터베이스를 MySQL RDS 로 변경한다. Sequelize를 활용하여 CRUD한다. - 주요 변경 사항 게시글 전체 불러오기 const allPosts = await Posts.findAll({ order: [["createdAt", "desc"]] }, 게시글 삭제 await Posts.destroy({ where: { id } }) Github : https://github.com/verdantjuly/hwlv3
dayounghw ver2 로그인 기능 추가 내일 배움 캠프 Node.js 트랙 노드 숙련 주차 과제 ver.2 회원가입, 로그인 기능이 추가된 나만의 블로그 백엔드 서버 만들기 : mongoose dayounghw ver1에 JWT를 활용한 로그인 기능을 추가하였다. 로그인을 통해 생성한 토큰을 쿠키에 저장한다. 미들웨어를 통해 쿠키에 저장된 토큰을 verify하여 로그인 여부를 판단한다. 정규식을 활용하여 계정 생성 시 조건을 부여하였다. (닉네임 : 숫자 또는 알파벳, 3자 이상 / 비밀번호 : 닉네임과 중복X , 4자 이상) Github : https://github.com/verdantjuly/hwlv2 (README.md로 API 명세서를 옮겼다.) 이전 버전 튜터 님의 코드 리뷰 반영 사항 * 포스트 상세조회 시 Selected Pos..
정예반 일지 OT 백엔드/프론트엔드 프론트 : 디바이스에서 해석하는 프로그램 백엔드 : 서버에서 해석하는 프로그램 프론트와 백은 언어로 나뉘지 않는다. 어디에서 해석하느냐가 관건! ex 1) javascript 이 언어로 디바이스에서 해석할 수 있게 만들래 > 프론트 서버에서 해석하게 만들래 > 백엔드 ex 2) iOS Android > 프론트입니다! (디바이스에서 해석하기 때문에) java, kotlin > 프론트엔드 언어이자 백엔드 언어 백엔드에서 중요하게 생각해야 하는 개념 정보를 제한적으로 제공 > 보안! 내가 가진 정보를 최대한 빠르게 준다. 정보를 접근해서 쓰고 수정하고 삭제하는 것까지 우리의 역할 (백엔드) 왜 서버를 거쳐서 데이터를 받을까? : 보안! ( 클라변조 : 클라이언트가 데이터를 변조할까봐 ) 백엔드 개발자 > js..
정예반 일지 20230619 서버, 함수와 조건문과 반복문 서버 : 요청을 받아서 데이터를 가공해서 다시 응답하는 것 서버가 계속 켜져 있어야 하는 이유 : 누군가의 요청을 받아서 응답하기 위해 app.listen = 계속 듣고 있는다. = 꺼지지 않고 계속 돌아간다. ** res 응답을 적지 않으면 응답을 계속 기다리다 timeout된다. 서버의 의미는 무조건 컴퓨터만 지칭하지 않음 (서버 컴퓨터도 서버지만 서버 프로그램도 서버이다) 웹서버 : 서버 프로그램 - javascript 에서 alert가 작동하지 않는 이유 alert 에는 window가 생략 되어져 있기 때문이다. window는 브라우저에 내장된 기능이다. javascript 해석 : 브라우저 node.js 해석 : 서버 웹 서버를 만들 때 공통적으로 요청과 응답을 받고 기본적인 기능을 구현하기 위..