본문 바로가기

필수 개발지식36

[CS] 테스트(Testing) ✅ 테스트(Testing) 정의 : 소프트웨어의 품질과 동작을 평가, 검증하는 작업 버그 수정, 안정성, 품질 향상, 요구사항 검증을 위해 시행 크게 수동 테스트, 자동화 테스트가 있고 그 외에 여러가지 테스트로 나뉜다. 1. 수동 테스트 (Manual Testing) 개발자가 직접 소프트웨어를 실행하여 기능을 테스트한다 2. 자동화 테스트 (Automated Testing) 스크립트와 테스트 도구를 사용하여 테스트를 자동화한다. ex) Selenium, Jest, Mocha etc .. *Jest 단위, 모듈 테스트 뿐만 아니라 비동기 테스트, 스냅샷 테스트, 모킹과 스파이 등 높은 수준의 자동화된 테스트를 제공한다. ✅ 테스트의 종류 1. 단위 테스트 (Unit Testing) 2. 통합 테스트 (I.. 2023. 7. 27.
[Node.js] 모듈(Module)이란? ✅모듈(Module) 정의 : 재사용 가능한 코드의 단위, 기능별로 미리 만들어놓은 코드 쓰는 목적 : 코드 재사용, 코드 구성성, 모듈은 자체적인 스코프를 가지므로 전역 네임스페이스를 오염시키지 않는다 쓰는 방법 : require를 통해 모듈을 가져오고 exports, module.exports로 함수를 노출시킨다. 종류 : 외장모듈 (npm) : Express, Axios etc.. 내장모듈 (node.js설치할 때 이미 존재, npm 필요x) : fs.readFile, HTTP요청, path, 네트워크 통신 etc.. 사용자 정의 모듈 : 개발자가 직접 만들어서 사용하는 모듈 ex) 사용자가 정의한 모듈 mymodule.js (모듈 생성 및 정의) // 모듈에서 노출할 기능 정의 function g.. 2023. 7. 27.
[JS] 클로저(Closure)란? ✅ 클로저(Closure)란? 정의 : 함수와 함수가 선언된 어휘적 환경의 조합 함수와 그 함수가 만들어진 환경(Lexical environment)을 함께 묶어서 일종의 '패키지'로 만드는 것 함수가 자신이 만들어진 환경을 기억하고 있는 것 함수가 독립적으로 동작하면서도 외부 변수에 접근이 가능하게 만들어줌 목적 : 데이터 은닉과 캡슐화를 구현, 상태유지, 콜백함수, 반복문에서의 변수 유지 🔍예시1) 클로저예시 function outerFunction() { let outerVariable = 10; function innerFunction() { console.log(outerVariable); } return innerFunction; } //closure없이 실행시 10이 반환되지 않는 이유 //.. 2023. 7. 26.
[CS] 데이터베이스와 ORM이란? ✅ 데이터베이스 정의 : 체계화된 데이터의 모음 효율적인 데이터관리를 위해 구조화, 조직화된 정보들의 집합 구성 : 데이터 + 데이터베이스 관리 시스템(DBMS, 데이터베이스를 생성, 수정, 관리 하기 위한 소프트웨어) 크게 RDBMS, NoSQL로 분류한다. ✅ RDBMS, NoSQL RDBMS : 데이터를 '테이블'의 형태로 관리하며 각 테이블은 행(row)과 열(column)로 구성된다 MySQL, PostgreSQL, Oracle etc NoSQL : 데이터를 키-값, 문서, 그래프 형태 등으로 저장한다. 대용량 데이터 처리에 더 적합한 구조를 제공 MongoDB, Cassandra, Redis etc ✅ ORM (Object-Relational Mapping) 정의 : 객체와 관계형 데이터베이스.. 2023. 7. 24.