목록전체 글 (71)
엘라의 개발 스케치 Note

# 옵저버 패턴 더보기 ? 옵저버 패턴 - 주체가 어떤 객체의 상태 변화를 관찰하다가 상태 변화가 있을 때마다 메서드 등을 통해 옵저버 목록에 있는 옵저버들에게 변화를 알려주는 디자인 패턴 주체 객체의 상태 변화를 보고 있는 관찰자 옵저버 이 객체의 상태 변화에 따라 전달되는 메서드 등을 기반으로 '추가 변화 사항'이 생기는 객체들 객체 / 주체 분리 옵저버 패턴 객체 - 주체 합체 옵저버 패턴 옵저버 패턴 활용 서비스 예시 - 트위터 옵저버 패턴은 주로 이벤트 기반 시스템에서 사용 MVC 패턴에도 사용됨 모델(주체) -> 변경사항 update() -> 뷰(옵저버) -> 컨트롤러 등 작동 ! 자바에서의 옵저버 패턴 더보기 topic(주체이자 객체) 기반 옵저버 패턴 구현 import java.util.A..

# 전략 패턴 더보기 ? 전략 패턴 = 정책 패턴 - 객체의 행위를 바꾸고 싶은 경우 '직접' 수정하지 않고 전략이라고 부르는 '캡슐화한 알고리즘'을 컨텍스트 안에서 바꿔주면서 상호 교체가 가능하게 만드는 패턴 ! 자바의 전략 패턴 더보기 쇼핑 카트에 아이템을 담아 LUNACard / KAKAOCard로 두 개의 전략으로 결제 cf) 컨텍스트: 상황, 맥락, 문맥. 개발자가 어떠한 작업을 완료하는 데 필요한 모든 관련 정보 import java.text.DecimalFormat; import java.util.ArrayList; import java.util.List; interface PaymentStrategy { public void pay(int amount); } class KAKAOCardSt..

# 팩토리 패턴 더보기 ? 팩토리 패턴 - 객체를 사용하는 코드에서 객체 생성 부분을 떼어내 추상화한 패턴이자 상속 관계에 있는 두 클래스에서 상위 클래스가 중요한 뼈대를 결정하고, 하위 클래스에서 객체 생성에 관한 구체적인 내용을 결정하는 패턴 ! 장점과 예시 장점 상하위 클래스 분리 -> 느슨한 결합 상위 클래스 인스턴스 생성 방식 무지 -> 더 많은 유연성 객체 생성 로직 분리 -> 유지 보수성 증가 예시 (하위) 각각 레시피 -> (상위) 바리스타 공장 => 생산 ! 자바스크립트의 팩토리 패턴 더보기 new Object()로 구현 전달 받은 값에 따라 다른 타입의 객체를 생성하며 인스턴스의 타입 등을 정함 const num = new Object(42) const str = new Object('..

# 싱글톤 패턴 더보기 ? 싱글톤 패턴 - 하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴 -> 해당 인스턴스를 다른 모듈들이 공유하며 사용 - 보통 데이터베이스 연결 모듈에 많이 사용 ! 장단점 장점 인스턴스를 생성할 때 드는 비용이 줄어듬 단점 의존성이 높아짐 ! 자바스크립트의 싱글톤 패턴 더보기 자바스크립트에서는 리터럴 {} 또는 new Object로 객체를 생성하게 되면 다른 어떤 객체와도 같지 않기 때문에 이 자체만으로 싱글톤 패턴 구현 가능 obj와 obj2는 다른 인스턴스를 가짐 const obj = { a: 27 } const obj2 = { a: 27 } console.log(obj === obj2) // false 실제 싱글톤 패턴 코드 Singleton.instance라는 하나의 ..

디자인 패턴? 프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 '규약' 형태로 만들어 놓은 것 자바스크립트 테스팅 페이지: 플레이코드 https://playcode.io/new 자바 테스팅 페이지: 코딩그라운드 http://https://www.tutorialspoint.com/java/online-java-compiler.php

길벗 "면접을 위한 CS 전공지식 노트 - 주홍철" 요약 공부를 위해 작성한 글들입니다. 저작권 문제시 댓글 부탁드립니다. (관련글 비공개/삭제 등 조치 하도록 하겠습니다.) 디자인 패턴? 라이브러리나 프레임워크의 기본 프로그래밍 패러다임? 크게 보았을 때 어떠한 방식으로 로직을 구성해야하는지에 대한 시각 * 라이브러리? - 공통으로 사용될 수 있는 특정한 기능들을 모듈화한 것 - 폴더명, 파일명 등에 대한 규칙이 없고 프레임워크에 비해 자유로움 - 예) '도구'인 '가위'를 사용해 '내'가 직접 컨트롤하여 만들기 * 프레임워크? - 공통으로 사용될 수 있는 특정한 기능들을 모듈화한 것 - 폴더명, 파일명 등에 대한 규칙이 있고 라이브러리에 비해 엄격함 - 예) '도구'인 '비행기'를 타고 이동하지만 '..
01-1 컴퓨터 구조를 알아야 하는 이유 ❗Point * 컴퓨터 구조를 이해하면 `문제 해결` 능력이 향상됩니다. * 컴퓨터 구조를 이해하면 문법만으로는 알기 어려운 `성능/용량/비용`을 고려하며 개발할 수 있습니다. 컴퓨터 구조를 이해하면 우리는 컴퓨터를 미지의 대상에서 분석의 대상으로 인식하게 됩니다.

# 프로그램 더보기 ? 프로그램 - 컴퓨터에게 특정 작업을 수행하도록 지시하는 일련의 명령어로 이루어진 소프트웨어 - 이 명령어들은 특정 언어로 작성되며, 컴파일러나 인터프리터를 통해 기계어로 변환되어 실행됨 ! 프로그램의 특징 다양한 목적을 가질 수 있으며, 데이터를 처리하거나 특정 작업을 자동화하는 데 사용됨 알고리즘과 데이터 구조로 이루어져 있으며, 컴퓨터가 원하는 작업을 수행하기 위한 명령의 집합으로 해석될 수 있음 # 프로세스 더보기 ? 프로세스 - 실행 중인 프로그램으로, 메모리에 적재되어 CPU에 의해 실행되고 있는 작업의 인스턴스를 나타냄 - 각 프로세스는 고유한 상태와 자원을 갖으며, 운영체제에 의해 관리됨 - 코드, 데이터, 레지스터, 스택 등의 요소로 이루어져 있음 - 여러 프로세스가..

# 운영체제 더보기 ? 운영체제(Operating System, OS) - 컴퓨터 시스템의 핵심 소프트웨어(구성 요소) - 하드웨어 자원을 효율적으로 관리하고 컴퓨터 사용자 및 응용 프로그램에게 인터페이스를 제공하는 시스템 소프트웨어 - 사용자와 응용 프로그램에게 편의성과 안정성 제공 - 다양한 운영체제가 존재하며, 각 운영체제는 특정 용도 및 환경에 맞게 설계되어 있음 ! 운영 체제의 주요 역할 자원 관리(Resource Management) 하드웨어 자원(중앙 처리 장치, 메모리, 디스크 공간, 네트워크 인터페이스 등)을 관리 자원 할당, 사용, 반환, 추적을 포함 프로세스 관리(Process Management) 프로세스는 실행중인 프로그램의 인스턴스를 나타냄 운영체제는 프로세스의 생성, 스케줄링,..

To-do 기술면접 대비 공부 + 면접 롤플레잉 최종 프로젝트 회의 -> 일정 및 진행상황 공유, 코드리뷰 최종 프로젝트 작성 -> 이메일 알림 기능 구현 마무리 최종 프로젝트 - 튜터님 기술 멘토링 CS 스터디 발표 준비 TIL 더보기 쿠키 (Cookie): 쿠키는 웹 브라우저에 저장되는 작은 데이터 조각으로, 웹 사이트와 사용자 간의 상태를 유지하거나 사용자 정보를 기록하는 데 사용. 쿠키는 사용자의 로그인 상태, 선호 설정, 장바구니 등을 저장하고 다음 방문 때에도 해당 정보를 활용. 쿠키는 클라이언트 측에 저장되며 만료 날짜를 설정하여 일정 기간 동안 유지됨. 세션 (Session): 세션은 웹 서버에 유지되는 사용자의 상태 정보. 사용자가 웹 사이트에 접속하면 서버는 해..