본문 바로가기

분류 전체보기268

[면접,CS] 의존성주입(DI) DI? DI는 Dependency Injection의 줄임말로 의존관계 주입이라고 한다. Dependenct 의존관계란? “A가 B를 의존한다” 라는 표현은 B가 변하면 A에 영향을 미친다는 의미이다. 예를 들자면 피자가게에서 피자를 만드는 레시피가 있다. 요리사는 피자 레시피에 의존한다. 라고 할때 레시피가 변경되면 요리사는 만드는 방법을 바꿔야하기 때문에 요리사는 레시피에 의존한다 라고 할수 있다. 의존성 주입이란? 의존성 주입은 의존관계를 외부에서 결정하고 주입하는 것이 DI(의존성 주입)이다. 이러한 외부모듈을 의존성 주입자(dependency injector)라고 한다. 위 예시를 통해 설명하자면, 요리사가 직접 피자 레시피를 고르는 것이 아니라 가게의 사장님이 레시피를 정해서 요리사에게 주는 .. 2023. 1. 5.
[면접,CS] 디자인패턴 디자인패턴? 디자인패턴은 프로그램 설계에 있어서 마주하는 문제들을 객체 간의 상호관계 등을 이용해 해결할 수 있도록 하나의 규약 형태로 만들어 놓은 것이다. 싱글톤 패턴 싱글톤 패턴(singleton pattern)은 하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴이다. 메모리 절약을 위해 인스턴스를 새로만들지 않고 기존의 인스턴스를 가져와 활용하는 기법이다. 따라서, 리소스를 많이 차지하는 역할(데이터베이스 연결 모듈 등)을 하는 무거운 클래스에 적합하다. 데이터베이스 연결, socket.io 등 네트워크 통신에 많이 사용된다. 장점 하나의 인스턴스를 기반으로 해당 인스턴스를 다른 모듈들이 공유하여 사용하기 때문에 인스턴스를 생성할 때 드는 비용이 줄어든다. 단점 - 모듈간 의존성이 높아진다. - .. 2023. 1. 4.
[면접,CS]라이브러리, 프레임워크 라이브러리와 프레임워크의 차이점 라이브러리 - 공통으로 사용될 수 있는 특정한 기능들을 모듈화한 것을 의미한다. - 폴더명, 파일명 등에 대한 규칙이 없고 자유롭다. - 내가 직접 컨트롤할 수 있다는 특징! ex) React.js 프레임워크 - 공통으로 사용될 수 있는 특정한 기능들을 모듈화한 것을 의미한다. - 폴더명, 파일명 등에 대한 규칙이 있어 엄격하다. - 내가 직접 컨트롤할 수 없고 정해진 규칙을 따라야한다. ex) Next.js 실제로 Next.js는 React를 기반으로한 프레임워크이다. page를 구성할때 React는 react-router-dom을 활용해 app.js에서 직접 구성해줘야 한다. Next.js의 경우 꼭! pages의 폴더에 jsx를 생성해야하는 규칙을 따라야한다. 2023. 1. 4.
2022.12.28 생각정리 4월에 퇴사 후 지금까지 달려온 후 생각정리 작년에 퇴사를 결심하고 퇴사 후 어떤 방법으로 공부하고 성장할지 계획을 세웠었다. - [x] 4월 퇴사 - [x] 부스트캠프 코딩테스트 준비 - [x]부스트캠프 합격 - 불합격할경우 독학 or 부트캠프 - [ ] 기업 코딩테스트 준비 - [ ] cs기초 공부 -> 면접준비 다행히 퇴사 후 부스트캠프에 합격해서 지금까지 잘 공부해왔다. 12/16에 수료식 후 네트워킹 데이를 끝내고 일본여행과 크리스마스를 즐기고 왔다! 이번주는 간단하게 알고리즘 한문제씩만 풀면서 생각정리 겸 휴식 중이다. 퇴사 후 지금까지는 계획한대로 잘 지켜오면서 공부했지만 앞으로는 진짜 취업준비 과정이라서 설레기도하고 걱정되기도 한다. 이전 회사에는 졸업 전에 합격해서 제대로된 취업준비를 해.. 2022. 12. 28.