함수를 만드는 규칙은 '작게!'다! 함ㅈ수를 만드는 둘째 규칙은 '더 작게!'다.if 문/else 문/while 문 등에 들어가는 블록은 한 줄이어야 한다는 의미다. 중첩 구조가 생길만큼 함수가 커져서는 안 된다는 뜻이다.함수에서 들여쓰기 수준은 1단이나 2단을 넘어서
이전까지 공부한 TypeScript 정리 겸 플러스 과정 수업 내용 정리하기!Microsoft에서 개발한 JavaScript에 타입을 붙인 언어로, JavaScript 기반의 강형(strongly typed programming language) 언어이다. 강형 언어
"의도가 분명하게 이름을 지으라"변수나 함수 그리고 클래스 이름은 다음과 같은 질문에 모두 답해야 한다.→ 변수(혹은 함수나 클래스)의 존재 이유는?→ 수행 기능은?→ 사용 방법은?→ 따로 주석이 필요하다면 의도를 분명히 드러내지 못했다는 말이다.코드 맥락이 코드 자체
Clean Code 사소한 곳에서 발휘하는 정직은 사소하지 않다. 책임 있는 전문가라면 프로젝트를 시작할 때 생각하고 계획할 시간을 확보해야 한다. 세세함에 주의를 기울이는 태도는 전문가에게 더더욱 필수적인 자질이 되었다.
PlanetScale은 MySQL과 호환되는 Serverless Database 플랫폼이다. 나는 이전 개인 프로젝트를 진행할 때 Hobby 플랜(무료 버전)을 사용했다. 다른 프로젝트에 집중하느라 한동안 PlanetScale의 데이터베이스를 건드리지 않았더니 slee
Database Seeding은 초기 데이터 셋으로 데이터베이스를 채우는 것을 의미한다. Prisma에서 Database Seed하는 방법을 알아보려 한다./prisma 폴더 안에 seed.js 파일을 생성한다.prisma.schema에서 User, Post 모델을 정
🚀지난번 Prisma를 설치하고 데이터베이스에 연결하는 것을 알아보았다. 오늘은 데이터베이스에 어떻게 접근하고 조작하는지 알아보려 한다. Prisma Client Prisma Client란 데이터베이스 스키마에 맞게 자동으로 생성되는 데이터베이스 클라이언트이다. 쉽게
Prisma Prisma는 직관적인 데이터 모델, 자동 마이그레이션, 타입 안전성 및 자동 완성 기능을 제공하는 차세대 ORM이다. 📌 ORM: Object-Relational Mapping. 객체로 연결해준다는 의미. 어플리케이션과 데이터베이스 연결 시 SQL 언어
C++이나 Java같은 클래스 기반 객체지향 프로그래밍 언어는 클래스를 통해 상속한다. 하지만 자바스크립트는 클래스가 없고, 프로토타입 기반으로 객체 복제를 통해 객체를 생성한다.ES6에서 자바스크립트의 클래스가 도입되었는데, 클래스 기반 객체지향 프로그래밍 언어와 매
클로저는 함수와 해당 함수가 선언된 렉시컬 환경의 조합이다. 외부 함수의 실행이 종료된 후에도 중첩 함수는 외부 함수의 변수를 기억하여 참조할 수 있다. 이러한 중첩 함수를 클로저라고 한다. 📌 렉시컬 스코프함수가 정의된 위치에 의해 상위 스코프가 결정되는 스코프함수
자바스크립트는 반복문인 for 문, while 문, do... while 문을 제공한다. 그 외에도 반복문을 대체할 수 있는 다양한 기능을 제공한다. for 문은 조건식이 거짓으로 평가될 때까지 코드 블록을 반복 실행한다. for 문의 괄호 안에는 세미콜론으로 구분되는
자바스크립트에서 조건문은 주어진 조건식의 평가 결과에 따라 코드 블록의 실행을 결정한다. if문은 괄호 안에 들어가는 조건이 true이면 코드 블록이 실행된다. 조건이 참인 경우 실행할 코드가 여러개라면, 중괄호{}로 감싸준다.📢 조건이 참인 경우 실행할 코드가 한
객체란 키(key)와 값(value)으로 구성된 프로퍼티의 집합이다. 자바스크립트에서는 함수, 배열 등 대부분의 것들이 객체이다.
변수를 선언하려면 var, let, const 키워드가 필요하다. 변수를 선언한다는 공통점이 있지만, 서로 다른 특징을 가지고 있다. 개발자라면 필수적으로 알아야 할 var, let, const의 차이점을 자세히 다루어보려 한다. 세가지 키워드를 알아보기 전, 변수 선
🚀 자바스크립트 복습하기 React, TypeScript 등 자바스크립트 기반의 무언가를 배울 때마다 기본기의 중요성을 느끼곤 한다. 자바스크립트를 처음 학습했을 때 어려움을 겪기도 했고, 제대로 설명할 수 있을까 생각해 보았을 때 자신이 없으므로 자바스크립트의 주
바닐라 JS로 SPA를 구현하는 중, a태그 클릭 시 화면 이동이 아닌 같은 페이지에 element들이 중복 렌더링되는 오류가 발생하였다. router.js를 살펴보면, root가 초기화 된 후 view의 component가 렌더링되어야 하는데 초기화가 이루어지지 않는
Console 자바스크립트 개발을 할 때 자주 사용하는 것이 console.log()가 아닐까 싶다. console.log()로 ()안의 값을 콘솔창에 출력하는데, 출력된 값을 확인하여 디버깅(오류를 찾고 수정 )하는 데 주로 사용된다. console에는 우리가 자주
자바스크립트는 프로토타입 기반의 객체지향 프로그래밍 언어이다.C++나 자바 같은 클래스 기반 객체지향 프로그래밍 언어는 클래스가 있고, 클래스를 통해 상속을 사용한다. 하지만 자바스크립트는 클래스가 없고 객체를 프로토타입 기반으로 복제를 통해 생성한다. (자바스크립트의
function 키워드 대신 화살표 => 를 사용하여 기존의 함수 정의 방식보다 간략하게 함수를 정의할 수 있다. 기존 함수 표현식에서 function 키워드를 삭제하고 매개변수의 () 와 코드블록{} 사이에 화살표 ⇒ 를 넣어준다. 함수 내부에 반환값(return)만
2022.05.10 Today I Learned📚 🙋♀️먼저 나의 회고록 아주아주 오랜만에 블로그에 글을 올린다. TIL 작성을 중단했던 가장 큰 이유는 나를 돌아보기 위해서이다. 심적으로 휘둘리는 내 자신을 발견하였다. 나의 힘듦을 이겨내는 방법 중 하나는 모