배워서 남주는 개발자 :)

항해99

22.04.01 [항해99 26일차] 트리구조 / 객체지향 프로그래밍 OOP

핏짜보이 2022. 4. 3. 20:49
반응형

🛑 오늘의 한줄평

👉🏻 새로운 시작

 

 

🛑 오늘 한 일

  •  07:00 - 08:30 준비/ 업로드및 하루계획
  •  
  •  
    08:30 - 09:00 cs 공부
  •  
    09:00 - 09:30 주특기 심화 발제
  •  
    09:30 - 11:30 팀과제
  •  
    11:30 - 12:00 cs 스터디
  •  
    12:00 - 13:00 DNS 포스팅
  •  
    13:00 - 14:00 점심
  •  
    14:00 - 14:50 DNS 포스팅
  •  
    14:50 - 15:40 휴식
  •  
    15:40 - 17:30 테스트 코드 강의
  •  
    17:30 - 19:00 저녁
  •  
    19:00 - 20:00 cs 유튜브
  •  

 

 

🛑 오늘 할 일

  •  
    개인 프로젝트 작업
  •  
    주특기 숙련 - 상세페이지에 댓글달기 / 수정 / 삭제 코드분석

 

  •  
    객체지향 프로그래밍 OOP

https://poiemaweb.com/js-object-oriented-programming

  •  
    class - 클래스에 대한 이해!

https://poiemaweb.com/es6-class

  •  
    추상화 / 테스트코드
  •  
    ORM
  •  
    SQL / NoSQL
  •  
    동기/비동기
  •  
    프로세스/ 스레드
  •  
    db index
  •  
    dns
  •  
    브라우저 작동원리
  •  
    트랜젝션
  •  
    cors
  •  
    https/SSL
  •  
    미들웨어
  •  
    파스칼 케이스 / 카멜 케이스

 

 

🛑 오류수정

  •  

 

 

🛑 새로 알게된 내용

https://ssocoit.tistory.com/217

https://www.cs.usfca.edu/~galles/visualization/BTree.html → B tree 만들어보는 사이트

 

  •  
    HTTP/HTTPS 프로토콜이 아닌 gRPC 프로토콜로 통신하는 서버 프로그램은 API 서버라고 부를 수 있을까요? (배포된 환경, 구현된 기능은 동일)

 

  • 가능하다. HTTP/HTTPS가 브라우저에서도 지원하고 범용적이기 때문에 지원하는 API 서버가 일반적일 뿐, 서버와 서버 간으로 gRPC 프로토콜을 이용해 API를 호출하여 제 기능을 다 할 수 있다.

 

  •  
    Sequlize같은 ORM과 MySQL같은 데이터베이스의 차이가 무엇인가요?

 

  • ORM은 데이터베이스가 지원하는 데이터 구조를 통해 추상화 레벨을 높이는 역할
  • 데이터베이스는 특정 목적성을 가진채 데이터를 더 빠르고 정확하게 관리하도록 돕는 역할
    • 때문에 경우에 따라서 AWS S3와 같은 Object Storage도 데이터베이스의 용도로서 사용 가능하다. (Use case에 따라 적합하지 않을 수 있음)

 

  •  
    express.js의 라우터는 미들웨어입니다. 어떤 원리로 동작하기 때문에 미들웨어로 라우터를 구현할 수 있나요?

 

  • 미들웨어의 원리를 제대로 이해하고 있다면 당연. 기본적으로 라우터를 사용하지 않고, express의 내부 라우터를 사용하지 않는 경우 아래와 같이 구현하는것과 크게 다르지 않음.
app.use((req, res) => { 	if (req.method !== 'GET' || req.path !== '/users/me') { 		res.status(404).end(); 	}  	// logic... 	const result = getUserByToken(token);  	res.send(result).end(); }); 
  •  
    Node.js에서 리팩토링시 사용하며, npm을 통해 다운로드 했던 모듈을 불러오는 require 함수는 어떻게 동작하나요? IIFE와 연결지어 찾아보고 정리해보세요.

 

  • 모듈은 IIFE를 통해 encapsulation되어 호출됩니다. (예전에는 IIFE를 통해 캡슐화를 지원 했지만 지금은 내부 모듈 시스템에 의해 알아서 캡슐화가 됩니다.)

 

  •  
    불필요한 테스트코드는 무엇이며, 100개의 테스트 케이스보다 1개의 테스트 케이스가 더 효과적일 수 있는 이유는 무엇인가요?

 

  • 의도치 않게 Input or Output이 바뀌었을 때 검증할 수 없는 테스트코드는 불필요한 테스트코드
  • 이러한 테스트코드가 100개 있는것보다 Input, Output의 검증을 명확히 하는 테스트 코드 1개 있는게 테스트코드의 목적성에도 걸맞으며 훨씬 효과적인 테스트코드로 볼 수 있다.

 

 

 

728x90