본문 바로가기

Frontend/엘리스 SW 엔지니어 트랙87

[ 엘리스 SW 엔지니어 트랙 ] 26일차(6주차: Node.js와 Express.js - npm, Middleware, MongoDB) 📍 26일 11.30. 화(실시간 강의) 오늘부터는 FE가 아닌 BE에 대해서 간략하게 배운다. 여러 프레임워크 중 Node.js에 대해서 배우는데 한번 알아보자. 실시간 강의 때는 주로 실습을 하느라 이론을 많이 배우지 못했다. 내일 온라인 강의에서 더 자세하게 알아봐야겠다. ❏ Node.js Chrome V8 javscript 엔진으로 빌드된 javascript 런타임입니다. Node.js의 메인스레드는 하나이다. JS가 단일쓰레드인것처럼 node.js도 한 번에 한줄씩 실행한다. Docker, Auto scaling 등을 이용해 node.js의 단일 스레드의 단점을 보완할 수 있다. offLoading: 메인스레드와 이벤트 루프는 서로 영향을 받지 않고 계속 실행된다.(저수준의 오래 걸리는 일은 n.. 2021. 11. 30.
[ 엘리스 SW 엔지니어 트랙 ] 25일차 📍 25일 차 11.27. 토(온라인 강의) 오늘은 typescript 심화 그리고 decorator에 대해서 배웠다. 지금까지의 프로젝트를 하면서 많이 접해보지 않아 내용이 어렵게 느껴졌다. 나중에 기억에 잘 남으려면 실전에서 많이 사용해야겠지?? ❏ Union Type, Intersection type 기존 타입, 인터페이스의 변경은 이미 그 타입을 사용하고 있는 코드에 똑같은 변경을 가해줘야 한다. 만약, 해당 타입을 쓰는 모든 코드에 변경을 가하지 않고 특정 코드만 자유롭게 타입을 확장하고 싶을 땐 어떻게 해야 할까? // Animal 인터페이스에 메소드를 추가하게 되면 해당 인터페이스를 implements하는 다른 class들에도 동일한 메소드를 추가해야 한다. interface Animal {.. 2021. 11. 28.
[ 엘리스 SW 엔지니어 트랙 ] 24일차 📍 24일 차 11.26. 금(온라인 강의) 오늘은 interface와 generic에 대한 개념을 강의로 배웠다. ❏ Interface란? 일반적으로 변수, 함수, 클래스에 타입 체크를 위해 사용된다. 직접 인스턴스를 생성할 수 없고, 모든 메소드가 추상 메소드이다. 추상 클래스의 추상 메소드와 달리 abstract 키워드는 사용할 수 없다. ES6 는 인터페이스를 지원하지 않지만, Typescript 는 인터페이스를 지원한다. 정의한 프로퍼티 값을 누락하거나, 정의하지 않는 값을 인수로 전달하면 컴파일시 에러가 발생한다. ❏ interface를 사용하는 이유 타입의 이름을 짓고 코드 안의 계약을 정의한다. 프로젝트 외부에서 사용하는 코드의 계약을 정의하는 강력한 방법이다. interface Perso.. 2021. 11. 26.
[ 엘리스 SW 엔지니어 트랙 ] 23일차 📍 23일 차 11.25. 목(실시간 강의) 오늘은 interface, generic 문법에 대해서 배웠다. ❏ Interface 타입 체크를 위해 사용되며 변수, 함수, 클래스에 사용 가능 직접 인스턴스를 생성할 수 없음. 모든 메서드는 추상 메서드다. (이때 abstract 키워드를 사용하지 않는다) 선언만 존재한다. (JS로 변환되면 인터페이서는 사라진다.) interface 간에 extends 를 사용하여 다중 상속 가능(class와 비슷) 추상 클래스와 다른 점: 추상 class는 전체적인 구조, interface는 프로그래머 간의 협업 개발을 할 때 사용 함수의 매개변수(파라미터로)로 사용 API 응답에서 데이터의 구조를 결정할 때 사용 // 키 값을 다음처럼 정해주면 키 값은 제한이 없다. .. 2021. 11. 25.
[ 엘리스 SW 엔지니어 트랙 ] 22일차 📍 22일 차 11.24. 수.(온라인 강의) 오늘은 어제 배웠던 내용을 강의를 통해 다시 한번 배우는 시간을 가졌다. 클린 코드, 타입 스크립트 정의, type, utility 등등에 대해서 다시 배워보자. ❏ 클린코드란 클린 코드란 말 그대로 깨끗하게 작성된 코드를 의미합니다. 깨끗하게 작성된 코드란 직접적이고 단순하여 읽기가 쉽고, 코드 작성자가 아닌 누가 보더라도 의도가 명확히 드러나는 코드입니다. 이러한 코드는 가독성이 좋고, 의존성을 최대한 줄여 유지보수가 쉬운 특징이 있습니다. 프로그래머는 작성 기한을 맞추기 위해서 나쁜 코드를 양산할 수밖에 없다고 생각합니다. 하지만 나쁜 코드를 양산하면 결국 기한을 맞추지 못합니다. 오히려 엉망진창인 코드 때문에 개발 속도가 느려지고 결국 기한을 놓칩니다.. 2021. 11. 24.