Javascript Clean code resuorces 전역 변수 최소화 코딩 가이드 준수 Lint 사용 'use strict' 선언 종속성 업데이트느 신중히 디자인 패턴 파악 패턴 일관성 유지, 혼합 지양 아키텍쳐가 없다면 조각 단위로 리팩터링 모듈화 단일책임의 원칙 단위 테스트 코드 문서화 커밋 워크 플로우 리팩터링 state 측면에서 렌더링 함수로 분리 Javascript Clean code resuorces https://github.com/abiodunjames/Awesome-Clean-Code-Resources
TDD의 소개 TDD(Test Driven Development : 테스트 주도 개발) 테스트가 개발을 이끌어나가는 형태의 개발론 테스트 코드 작성, 후 구현 사이클을 반복적으로 돈다. ->실패->성공->리팩터링- 실패 실패하는 테스트 케이스를 먼저 생성 성공 실패하는 테스트 케이스를 통과시키기 위한 통과 코드를 작성 리팩토링 중복 코드등의 코드 개선 테스트 케이스가 성공하는지 확인하기 위해 첫번째 절차인 실패로 돌아가서 테스트 케이스를 작성 TDD 장점 작은 단위로 테스트 케이스를 만들기 때문에 코드의 모듈화가 자연스럽다. 테스트 커버리지가 높아지면 리팩토링, 유지보수가 쉬워진다. 프로젝트 퀄리티가 좋아진다. 협업에 도움이된다. 버그를 줄일 수 있다. 요구사항 충족을 확인하기 쉽다. 원본 https:/..
자바스크립트-테스팅의-기초 유닛테스트 작은단위로 기능을 잘게 조개서 잘 동작하는지 확인 기능 단위 통합테스트 전체적으로 동작이 잘되는지 확인 컴포넌트 상호작용 테스트 도구 종류는 다양하고 여러 목적에 따라 특출난 것들이 있으니 확인 후 선정하면 될 듯 아래는 테스트도구 10개를 소개하는 글이다. http://www.itworld.co.kr/news/128974 원본 글에서는 설정이 간단하고 시작하기 편하다며 Jest를 사용했다. jset와 @types/jest를 npm install한다. -함수를 만들었으면 test함수도 만든다. -test 키워드 대신 it 키워드를 쓴다. -describe를 사용해서 여러 테스트 케이스를 묶는다. 테스트 코드 작성 시의 이점은 리팩토링 이후 코드가 잘 동작하는지 검증하..
프론트에서 안전하게 로그인 처리하기 보안에 위협이 되는 문제 1. XSS (Cross Site Scriptiong) 공격자가 태그나 url등에 Javascript를 삽입해 실행되도록 공격한다. 악성데이터를 실행하거나 사이트의 전역 변수를 이용해 API 요청을 하여 사이트의 로직인 척 행동하여 악의적인 행동을 한다. 2. CSRF (Cross Site Request Forgery) 서버에서 클라이언트 도메인을 통제하고 있지 않으면 공격자가 다른 사이트에서 API 요청을 할 수 있다. 이때 공격자가 사용자만이 가능한 행위(수정, 삭제, 등록 등)들을 할 수 있다. (이러한 행위로인해 최악의 상황 -> 비밀번호, 송금 등에 접근) 원본 글 요약 JWT(JSON Web Token)로 유저 인증 Refresh T..