profile
Frontend-developer
post-thumbnail

[CS] 3. 프로그래밍 패러다임

프로그래밍 패러다임 > 프로그래머에게 프로그래밍의 관점을 갖게 해주는 역할을 하는 개발 방법론 > Untitled 1. 선언형과 함수형 패러다임 선언형 프로그래밍 (declarative programming) > ‘무엇을’ 풀어내는가에 집중하는 패러다임이며, “프로그램은 함수로 이루어진 것이다.”라는 명제가 담겨 있는 패러다임 > 함수형 프로그래밍(functional programming)은 선언형 패러다임의 일종 함수형 프로그래밍(functional programming) > ‘순수 함수’들을 블록처럼 쌓아 로직을 구현하고 ‘고차 함수’를 통해 재사용성을 높인 프로그래밍 패러다임 > 자바스크립트는 단순하고 유연한 언어, 함수가 일급 객체이기 때문에

2023년 1월 27일
·
0개의 댓글
·
post-thumbnail

[CS] 기술면접 - 1

디자인패턴 Q&A 1. 프레임워크와 라이브러리는 차이는 무엇인가요? 프레임워크 원하는 기능 구현에 집중하여 개발할 수 있도록 일정한 형태와 필요한 기능을 갖추고 있는 골격, 뼈대. 애플리케이션 개발 시 필수적인 코드, 알고리즘, DB 연동과 같은 기능들을 위해 어느 정도 뼈대(구조)를 제공하며 이러한 뼈대 위에서 사용자는 코드를 작성하여 애플리케이션을 개발한다. 앱/서버 등의 구동, 메모리 관리, 이벤트 루프 등의 공통된 부분은 프레임워크가 관리하며, 사용자는 프레임워크가 정해준 방식대로 클래스, 메서드들을 구현하면 된다. 그 예로는 java 서버 개발에 사용되는 Spring, Python의 Django, 웹개발의 Angular와 Vue.js 가 있다. + Express.js 라이브러리 소프트웨어를 개발할 때 컴퓨터 프로그램이 사용하는 비휘발성 자원의 모임. 즉 특정 기능을 모와둔 코드, 함수들의 집합이며 코드 작성 시 활용 가능한 도구들이

2022년 12월 27일
·
0개의 댓글
·
post-thumbnail

[CS] 2. 디자인 패턴

6. 이터레이터 패턴 Iterator pattern > 이터레이터(iterator)를 사용하여 컬렉션의 요소에 접근하는 디자인 패턴 순회 가능한 여러 가지 자료형의 구조와 상관없이 이터레이터라는 하나의 인터페이스로 순회할 수 있음 다른 자료 구조인 set, map → 같은 for a of b 의 이터레이터 프로토콜을 통해 순회 가능 \*이터레이터 프로토콜 : 이터러블한 객체들을 순회할 때 쓰이는 규칙 \*이터러블한 객체 : 반복 가능한 객체로 배열을 일반화한 객체 7. 노출모듈 패턴 Revealing module pattern > 즉시 실행 함수를 통해 private, public 같은 접근 제어자를 만드는 패턴 자바스크립트는 전역 범위에서 스크립트가 실행 → 노출모듈 패턴을 통해 private, public 접근 제어자 구현 노출모듈 패턴 원리 기반의 자바스크립트 모듈 방식으로는 CJS(CommonJS) 모듈 방식이 있다. -

2022년 12월 27일
·
0개의 댓글
·
post-thumbnail

[CS] 1. 디자인 패턴

디자인 패턴 > 프로그램 설계 시 발생했던 문제점들을객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 ‘규약’ 형태로 만들어 놓은 것 1. 싱글톤 패턴 Singletone Pattern > 하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴 보통 데이터베이스 연결 모듈에 많이 사용 장점 : 인스턴스 생성 시 드는 비용 감소 → 메모리 절약 단점 : 의존성이 증가 싱글톤 패턴의 단점 TDD(Test Driven Development) 시 걸림돌! TDD → 서로 독립적이고 어떤 순서로도 실행 가능해야하는 단위 테스트 테스트마다 ‘독립적인’ 인스턴스 만들기 어렵다. 의존성 주입 모듈간의 강한 결합 → 의존성 주입(DI, Dependency Injection)으로 느슨하게 의존성 == 종속성 의존성을 주입해서 의존성이 떨어진다. == 디커플링이 된다. 의존성 주입의 장점 모듈 쉽게 교체 → 테

2022년 12월 19일
·
0개의 댓글
·