본문 바로가기

분류 전체보기17

Bridge Pattern (브릿지 패턴) Bridge Pattern (브릿지 패턴) 브릿지 패턴은 기능의 클래스 계층과 구현의 클래스 계층을 bridge 처럼 연결하는 역할을 한다. 구현부에서는 추상 계층을 분리하여 독립적인 변경이 가능하도록 한다. Example 1 TV 모델에 상관없이 동작하는 만능 리모컨을 개발한다고 하자. 리모컨 자체는 똑같이 추상화 부분을 바탕으로 하지만 TV 모델마다 다른 구현이 들어가야 한다. 이 때 리모컨의 기능이 추가되면 RemoteControl을 상속 받는 모든 클래스가 변경이 되어야 한다. 여기서 우리는 TV도 바뀔 수 있고, 리모컨도 바뀔 수 있을 때에 대한 상황을 고려해야 한다. 브릿지 패턴을 사용하면 아래와 같이 기능 부분과 구현 부분을 서로 다른 클래스 계층 구조로 분리할 수 있다. 왼쪽은 리모컨을 나.. 2023. 3. 24.
Builder Pattern (빌더 패턴) Builder Pattern (빌더 패턴) Builder Pattern은 객체 생성 시 복잡한 과정을 간소화 하기 위한 디자인 패턴 중 하나이다. 이 패턴은 객체의 생성과정을 단계별로 분리하고, 이 단계들을 수행하는 Builder 클래스를 만들어 객체를 생성한다. 따라서 Builder 패턴에서 객체를 생성하는 역할을 담당하는 Builder 클래스는 크게 두 가지 유형의 인터페이스를 가져야 하는데, 하나는 객체의 각 부분을 생성하기 위한 인터페이스이고, 다른 하나는 부분별로 생성된 것들을 조합해서 전체 객체를 구성한 뒤 이를 return 해주기 위한 인터페이스 이다. Structure Builder : Product을 생성하는 Abstract Interface 이다. ConcreteBuilder : 구체 .. 2023. 3. 23.
VS Code 단축키 빌드 build : Ctrl + Shift + B 디버깅 start debugging : F5 stop debugging : Shift + F5 toggle break point : F9 step over : F10 step into : F11 step out : Shift + F11 편집 Command Palette : Ctrl + Shift + P Quick Open : Ctrl + P (파일명으로 검색) 글자 확대/축소 : Ctrl +/- toggle side bar : Ctrl + B keyboard shortcut : Ctrl + K + S 파일 시작/끝 이동 : Ctrl + Home/End 라인 위/아래 이동 : Alt + ↑/↓ 라인복사 : Shift + Alt + ↑/↓ 명령어 or 단어 .. 2023. 3. 14.
패턴 200개 1. It seems that he lives in Seoul. I should have lived in Seoul. (should have + p.p ~해야만 했었다.) I wish I lived in Seoul. 2. I'm dying to drink coffee. (be dying to ~하고 싶어 죽겠다) You'd better drink coffee. (had better + 동사원형 ~하는게 좋다) There's no way he drinks coffee (There's no way ~일리가 없다) This is the first time I've drunk coffee. (This is the first time + 완료절 ~하는게 처음이예요) 3. I'm not in the mood to .. 2023. 2. 20.
약어/용어 ABT mode (Abort) ARM모드 중 하나. Access하려는 주소가 access 할 수 없는 주소이거나 Instruction fetch를 못해온 경우. 예) MMU나 MPU 사용하는 예에서 access protection 걸려있는 주소 접근 시 발생가능 ADS (ARM Developer's Suit) ARM사의 cross compiler AHB (Advanced High Performance Bus) AMBA Bus interface 중 하나로 속도가 중요한 burst mode의 data전송에 이용. Multiplex bus기반으로, 주소라인/제어라인/데이터라인 모두 공유. 처음에 주소를 쏴주고 데이터들을 쏴주는 burst전송 기법 사용. ASB(Advanced System Bus)는 주소/제어.. 2023. 2. 16.