3월 오늘 배운 것들

AnSuebin·2023년 3월 5일
0

3/ 5

  • 비동기 로직

    • 실행되는 작업들이 순차적으로 처리되지 않고,
    • 결과를 반환하기 전에 다른 작업을 수행할 수 있도록 하는 것
    • 콜백함수, promise, async/await을 통해 구현할 수 있음
  • 콜백함수

    • 다른 함수가 실행을 완료한 후 호출되는 함수를 의미
    • 콜백지옥이란 가독성이 떨어지고 이에 따른 유지보수의 어려움이 있을 수 있음
  • promise

    • 비동기 작업의 성공(resolve)과 실패(reject)를 나타내는 객체
    • then 매서드를 통해 성공 결과를 처리, catch 매서드를 통해 실패 결과를 처리
  • 마이크로 태스크 큐

    • 비 동기 작업의 콜백 함수가 처리 될 때 사용
    • 이벤트 루프는 호출 스택이 비어있을 때 마이크로 태스크 큐와 태스크 큐 두가지를 사용하여 자바스크립트 코드를 실행, 제어합니다. 이때 마이크로 태스크 큐에 등록된 콜백들을 다른 비동기 작업 콜백 함수보다 먼저 처리합니다.
    • 마이크로 태스크 큐에 넣는 함수는 promise, object.observe, process 등이 있고, 태스크 큐에 넣는 함수는 setTimeout, setInterval 등이 있습니다.
  • promise api

    • 비동기 작업을 처리하는데 사용하는 기능
    • 총 7가지
    • promise.resolve, promise.reject, promise.race, promise.all, promise.prototype.then, promise.prototype.catch, promise.prototype.finally
  • rest api

    • 데이터를 요청하고 전송하기 위한 아키텍처 스타일
      • 아키텍처 스타일 : 아키텍처(구조)의 종류(유형, 스타일, 타입)
      • api : 소프트웨어와 소프트웨어 사이에 데이터 전송을 가능하게 하는 프로그램
    • uri(자원)를 공유하게 식별하고, http 매서드를 통해 자원에 대한 행위를 표현하는 것
      • uri : 문서, 그림, 영상 등의 자원 식별용 이름
    • CRUD
      • Create(post) / Read(get)/ Update(put)/ Delete(delete)
    • rest의 조건(6가지)
      • 일관된 인터페이스
      • 클라이언트 서버
      • 비연결성
      • 캐시 가능
      • 계층화된 시스템
      • 주문형 코드
  • SPA, MPA

    • SPA는 하나의 페이지에서 어플리케이션을 구성하는 방식
      초기 로딩 속도는 느리지만, 이후에는 빠른 페이지 로딩과 부드러운 UI 전환 효과 제공
    • MPA는 탭을 이동할 때 마다 웹으로 부터 새로운 html을 받아와 페이지 전체를 렌더링 하는 전통적인 구성방식
      초기 로딩 속도가 빠르지만, 새로운 페이지로 이동할 때마다 전체 페이지를 다시 로드해야하기 때문에 느린 사용자 경험
  • MVC

    • 소프트웨어를 모델, 뷰, 컨트롤러 세가지로 구분하여 개발하는 방식
    • 이 패턴은 데이터와 비지니스 로직을 담당하는 모델
    • 사용자 인터페이스를 담당하는 뷰
    • 모델과 뷰를 중재하는 컨트롤러로 구성
      사용자의 요청을 처리하여 모델에 갱신, 뷰 업데이트
    • 그러나 현재 뷰가 아주 많아지고, 양방향 처리가 필요하며, 슈퍼 울트라 컨트롤러가 생기게 되는 문제점
    • 대안으로 viewsms mvvm
    • redux flux패턴 : action dispatch store action
  • 시맨틱 웹

    • 웹에 존재하는 수많은 웹 페이지들에 메타 데이터를 부여하여
      웹페이지를 의미와 관련성을 가지는 거대한 데이터베이스로 구축하고자 하는 발상에서 시작
    • 정보 검색 최적화와 정보 검색의 정확도 향상
    • 개발자가 의도한 요소의 의미가 명확하게 드러나고
      코드의 가독성을 높이고 유지보수 또한 용이하게 하는 장점
profile
고객에게 명료한 의미를 전달하고, 명료한 코드를 통해 생산성 향상에 기여하고자 노력합니다.

0개의 댓글