일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- nodeJS
- 실행 컨텍스트
- 노드
- wecode
- westagram
- 트랜잭션
- rebase
- JWT
- Django
- javascript
- typescript
- docker
- bcrypt
- 스코프
- pm2
- on_delete
- 자바스크립트
- manytomanyfield
- CORS
- OSI7계층
- node
- async/await
- status code
- django westagram
- crud2
- TypeError: this.boardRepository.createBoard is not a function
- 프로미스
- 호이스팅
- 장고초기세팅
- Jest
- Today
- Total
목록학습 (86)
될때까지
🌸 intro 오늘은 회원가입을 구현했다. 이메일 양식 검증 비밀번호 양식 검증 이메일 중복 => 409 에러 비밀번호 암호화 => bcrypt사용 관심사 분리 원칙 + mvc패턴 적용 router -> controller -> service -> model 순으로 간다. router : url을 기능과 연결해주는 부분 controller : 사용자의 요청을 받아 서비스로 전달하고 응답을 받아 프론트로 전달한다. 프론트와 백을 연결하는 어댑터역할 service : 컨트롤러에서 넘어온 데이터를 검증하는 비즈니스 로직을 작성하고 모델로 넘겨준다. model : DB와 연결해서 CRUD하기 위한 로직을 구현하고 컨트롤러에게 전달한다. 맡은 기능만 구현해야한다. 모델에서 요청을 처리하거나 컨트롤러에서 비즈니스 ..
💗 Intro 오늘부터 다시 개발 공부를 시작했다. 추석 잘쉬었으니까... 내년 추석때는 명절 상여금에 명절 뽀너스로 올해보다 풍족했음 좋겠다😄 아침 일찍 일어나서 하루를 시작했지만 진짜 뻥안치고 이력서 쓰는데 하루를 다 할애했다. 진짜 이력서 작성 너무 어렵다 ^^ 오전 10시에 시작했는데 오후 6시가 지나서야 이력서 작성을 완료했다. 그래도 오늘은 이력서 작성하고, 인성 면접이라고 해야하나 왜 개발자가 되고 싶어, 어떤 개발자가 되고 싶어와 같은 면접에 대비하기 위해 회고록도 작성하고 나니까 취준이 실감난다. 근데 뭐.. 뭐라고 해야하나 원초적인 질문?들은 지어내야한다던데 그게 너무 어렵다. 날 소개하고 싶지 자소설을 작성하고 싶지 않은데 말야.정말 저는 재미있어요. 흥미 있어요.. 꾸준히 잘 할 수..
🐳 Docker 도커란, 컨테이너를 사용해 작업한 애플리케이션을 환경에 구애받지않고 빠르게 배포 및 관리할 수 있도록 도와주는 오픈소스 가상화 플랫폼이다. 그럼 이 도커를 쓰는 이유는 뭘까? 프로그램을 설치하려면 서버, 패키지, 운영체제 등에 맞는 버전을 설치해야하는데 이게 참 복잡하고 귀찮다. 하지만 도커를 이용해서 프로그램을 설치하면 비교적 쉽게 뚝딱 간단하게 진행할 수 있다. 🐸가상화 가상화란 하나의 물리적 서버에서 여러 운영체제와 애플리케이션을 실행할 수 있도록 하는 소프트웨어 기술을 말한다. 가상화기술이 나오기 전에는 1대의 서버를 하나의 용도로만 사용하고 남은 공간은 그대로 방치했었다. 그러다보니 프로그램 운영은 안정적이지만 남는 공간이 제대로 활용안되고 놀고있기 때문에 비효율적이였다. 1. ..
데이터타입 if({}=={}){ console.log(1) }; 자바스크립트 엔진은 memory heap과 call stack으로 구성되어있다. 자바스크립트의 데이터 타입에는 2가지가 있다. 기본형 : boolean, null, undefined, number, bigint, string, symbol 참조형 : object, array, function, 정규표현식 등 기본형은 불변값, 참조형은 가변값이다. 여기서 불변과 가변의 기준은 "메모리 영역"과 관련이 있는데 해당 키워드에 대해선 추후 정리하도록 하자. 위의 코드에서 object는 가변형이라고 했다. -> 따라서 비교중인 두 object는 각각 다른 값을 가르키기 때문에 if안의 조건이 false가 되어 콘솔에 1이 찍히지 않는다. truthy..
git? 코드의 진행내용 및 수정내역을 기록하고 관리할 수 있도록 도와주는 버전 관리 프로그램이다. 브랜치 생성, 이전 상태로 돌아가기, 삭제, 병합 등이 가능하지만 로컬 저장소를 사용하기 때문에 다른 개발자와 작업 공유가 불가능하다. git hub? git 저장소를 관리하는 클라우드 기반 호스팅 서비스다. 클라우드 기반이기 때문에 다른 사람과 코드 공유가 가능하고 한 프로젝트에 여러명이 참여해서 공동 작업도 가능하다. git flow? 브랜치를 분리함으로써 소스 코드 형상/이력 관리를 효율적으로 진행하며 협업 시 발생할 수 있는 문제점을 최소화할 수 있는 전략으로 5가지 종류의 브랜치가 존재한다. 항상 유지되는 메인 브랜치, 일정 기간 유지되는 보조 브랜치들이 있다. master : 제품으로 출시될 수..
팔로우 팔로워 기능을 실습하고 있는데 에러가 발생했다. select * from follows as f left join users as u on f.to_user = ( select * from users where users.name = '전은형'); 왼쪽에 있는 컬럼의 개수와 오른쪽의 컬럼 개수가 일치하지 않아서 생긴 오류였다. 왼쪽에서는 f.to_user 1개 컬럼에 맞게 오른쪽 subquery에서도 select 1개의 행을 반환해주면 에러가 해결된다.
SQL (Structured Query Language) 구조적 질의 언어의 줄임말로, 관계형 데이터 베이스(RDB)에서 데이터를 보다 쉽게 검색,추가,삭제,수정같은 조작을 할 수 있도록 고안된 언어다. SQL문법은 크게 3가지의 종류로 나뉜다. DML(Data Manipulation Language, 데이터 조작 언어) DDL(Data Definition Language, 데이터 정의 언어) DCL(Data Control Launguage, 데이터 제어 언어) SQL 뜻 해석 예시 DML Data Manipulation Language 데이터 조작 및 데이터 관리를 위한 언어다. INSERT, UPDATE, DELETE, SELECT.. DDL Data Definition Language 데이터베이스의..
Request 메세지 구조 HTTP 요청은 클라이언트에서 서버에 일을 시작하게 하기 위해 보내는 메세지다. 이 메세지의 구조는 크게 세 부분으로 나뉜다. 1. Start Line : HTTP request message의 시작라인 GET /login HTTP/1.1 # 해석: GET 메소드로 login 이라는 요청 타겟에 HTTP 1.1 버전으로 요청을 보내겠다! HTTP Method : 해당 요청이 의도한 액션을 정의한다 (GET, POST, PUT, DELETE 등) Request Target : 해당 request가 전송되는 목표 url HTTP Version : 사용되는 HTTP 버전을 뜻한다(주로 1.1버전이 널리쓰임) 2. Headers : 해당 요청에 대한 추가정보(메타 데이터)를 담고는 부..
Split() string객체를 지정한 구분자를 이용하여 여러개의 문자열로 나눈다. const str = 'hello-node-world' const result = str.split('-') console.log(result) // [ 'hello', 'node', 'world' ]