[프론트엔드 테스트] 정적 분석
·
IT_STUDY/개인공부
프런트엔드 테스트의 범위 정적 분석 - 타입스크립트를 활용하는 정적분석은 버그를 조기에 발견할 수 있도록 한다. - 타입 추론은 런타임 작동을 예측해주기 때문에 아주 유용하다.타입 추론 : 명시적으로 타입을 지정하지 않아도 타입스크립트 컴파일러가 초기에 할당된 값을 바탕으로 변수의 타입을 추론한다. 예시 ) if 문 분기에 타입 추론이 적용되면 값을 안전하게 다룰 수 있다.function getMessage(name :string | undefined){ const a = name; if(!name){ return `Hello anonymous!`; } //if문 분기와 return으로 undefined가 아니라는 것이 판정된다. const b = name; //b : str..
[AWS] Git Repositories를 통해 Jenkins 서버 배포
·
IT_STUDY/개인공부
AWS 서버에서 열어서 한다는 가정하에..sudo apt update  - package 목록 업데이트 후 시작 sudo apt install apt-transport-https ca-certificates curl software-properties-common - Ubuntu 기반의 리눅스 배포판 추가 패키지를 설치하는 명령어 - 패키지들이 시스템에 설치되며, HTTPS 리포지토리 사용, 인증서 관리, 파일 다운로드, 소프트웨어 소스 추가 등의 작업을 수행할 수 있다. `apt=transpost-https` : HTTPS를 통해 패키지를 다운로드 할 수 있게 해주는 패키지이다. 기본적으로 APT는 HTTP를 사용하지만, HTTPS 리포지토리도 사용할 수 있도록 이 패키지를 설치한다.`ca-certif..
[프론트엔드 테스트] 테스트를 작성해야 하는 이유/테스트 범위/테스트 목적
·
IT_STUDY/개인공부
테스트를 작성해야 하는 이유버그 해결 : 버그가 있는 서비스는 이미지를 추락한다. 한 번 추락한 이미지를 회복 시키는 것은 많은 시간과 비용이 필요하다. 이 때, 테스트 코드가 예상하지 못한 버그를 조기에 발견해 서비스 이미지를 지켜주는 역할을한다.유지보수 : 작성한 테스트 코드가 있다면 기존 기능에 문제가 생겼는지 반복적으로 확인할 수 있어서 적극적으로 리팩터링을 진행할 수 있다.리팩터링 : 결과의 변경없이 코드의 구조를 재조정한다.품질 향상 :어떤 구현 코드의 테스트 작성이 어렵다면 해당 코드가 너무 많은 역할을 한다는 신호이다. 일부 책임을 더 작은 부분으로 나눌 수 있는지 재검토해 더 좋은 코드를 작성할 수 있다.웹 접근성 : 신체적, 정신적 특성에 따른 차이 없이 동등하게 정보에 접근할 수 있게..
[ SQLD ] DDL, DCL, DML
·
IT_STUDY/SQLD
DDL(데이터 정의 언어 : Data Definition Language)⭐ ⭐ ⭐ - 테이블이나 관계의 구조를 생성하는데 사용하며 CREATE, ALTER, DROP, TRUNCATE 문 등이 있다. CREATE - 새로운 데이터베이스 관계 (테이블) VIEW, 인덱스, 저장 프로시저 만들기 DROP - 이미 존재하는 데이터베이스 관계 (테이블), VIEW, 인덱스, 저장 프로시저를 삭제한다. ALTER - 이미 존재하는 데이터베이스 개체에 대한 변경, RENAME의 역할을 한다. TRUNCATE - drop & create - 테이블 내부 구조는 남아 있으나 데이터가 모두 삭제 되된다. ROLLBACK - 변경할 데이터를 변경하기 이전 상태로 되돌리는 역할을 한다. ROLLBACK [WORK] [TO..
[ SQLD ] 조건문(DECODE,CASE),집계함수,GROUP,JOIN,서브쿼리
·
IT_STUDY/SQLD
조건문⭐ DECODE - SQL의 DECODE 함수는 프로그래밍 언어에서 if문과 비슷하다. DECODE(A,B,'1',null) A가 B일 경우 '1', 아닐 경우 null(생략가능) DECODE(A,B,'1','2') A가 B일 경우 '1', 아닐 경우 '2' DECODE(A,B,'1',C,'2','3') A가 B일 경우 '1', A가 C일 경우 '2', 둘 다 아닐 경우 '3' DECODE(A,B,DECODE(C,D,'1',null)) A가 B일 경우, C가 D를 만족하면 '1', C가 D를 만족하지 않으면 null(생략가능) DECODE(A,B,DECODE(C,D,'1','2')) A가 B일 경우, C가 D를 만족하면 '1', C가 D를 만족하지 않으면 '2' CASE ~ WHEN ~ THEN C..
[ SQLD ] NULL, 정렬, 숫자함수, 문자함수, 날짜함수
·
IT_STUDY/SQLD
NULL의 정의⭐ ⭐ ⭐ - 모르는 값, 정의되지 않은 값 ( 공백이나 0과는 다르다.) - 산술 연산에서 null이 들어가게 되면 모든 값은 null이다. ex) null + 2, null * 10, null + null 모두 결과는 null이다. - 조건걸에 null이 들어가게되몀ㄴ false를 반환하게 된다. ex) null = null , null = 2 모두 false - 집계함수(sum, count, min, max..)에서 null은 데이터 대상에서 제외된다. - 정렬시에는 오라클에서는 가장 큰 것이되고, SQL Server에서는 가장 작은 값이 된다. Nvl(col,0) col이 null이면 0 반환, 아니면 col 반환 Nvl2(col,1,0) col이 null이면 0 반환, 아니면 1 ..
[게시판 서비스 프로젝트] 개발 목적
·
IT_STUDY/개인공부
게시판 서비스 프로젝트의 목표 누구나 이해하기 쉬운 소재로 명확한 기능 요구사항을 만들다. 요구사항을 구현하는데 도움이 되는 각종 문서 작업을 경험한다. 자바 + 스프링 부트로 프로젝트 요구사항을 실제로 구현하는 기술적인 방법을 익힌다. 최신 버전의 기술을 사용해 보면서 기술 동향을 파악하고, 새로운 문제와 해결 방법을 확인한다. 기획과 문서 작성부터 개발, 형상관리, 테스트, 배까지 개발 프로세스 전반을 경험한다. 문서작업 문서를 통해 개발할 프로젝트의 목적, 내용, 진행상황을 공유 무엇을, 어떻게 : 업무의 가이드. 동료의 생산성을 높여준다. 왜 : 함께 움직이는 원동력, 동료가 더 나은 방법을 제안하거나, 내 생각의 오류를 잡아준다. 기억은 짧고 왜곡되지만, 문서는 수정 가능하고 발전하며 오래 간다..
[ SQLD ] ESCAPE / ROWNUM / TOP()
·
IT_STUDY/SQLD
ESCAPE (LIKE 연산) - LIKE 연산으로 '%'나 '_' 가 포함된 문자를 검색하고자 할 때 사용된다. - '%', '_' 앞에 ESCAPE로 특수문자를 지정하면 검색할 수 있다. - 특수문자는 아무거나 상관없이 사용 가능하다. - 일반적으로 LIKE 구문을 사용하는 것 처럼 사용한다. select pname from emp where pname like '%_%'; -- 김_하나, 박%둘, 삼, 사 select pname from emp where pname like '%%%'; -- 김_하나, 박%둘, 삼, 사 '%' 나 '_'가 포함된 문자열만 검색하고자 했는데 인식을 하지 못하는 상황이 발생한다. 이럴 때 사용하는 것이 ESCAPE 구문이다. select pname from emp wh..