728x90

분류 전체보기 61

25일차 - 상속의 위험성 : 결합도 증가&캡슐화 감소

2023.09.04 MON 322p ~ 335p 24일차 내용 ⬇️ 2023.08.29 - [개발 서적 기록/오브젝트_조영호] - 24일차 - DIP와 중복 코드 제거하기 24일차 - DIP와 중복 코드 제거하기 2023.08.29 TUE 300p ~ 322p 23일차 내용 ⬇️ 2023.08.25 - [개발 서적 기록/오브젝트_조영호] - 23일차 - 의존성 주입 23일차 - 의존성 주입 2023.08.25 FRI 289p ~ 304p 22일차 내용 ⬇️ 2023.08.24 - [개발 서적 기록/오 magenta-ming.tistory.com 상속은 결합도를 높이고 캡슐화를 떨어트린다 상속은 자식 클래스를 점진적으로 추가해서 기능을 확장할 수 있다. 반면 높은 결합도를 만들어서 부모 클래스를 점진적으로..

24일차 - DIP와 중복 코드 제거하기

2023.08.29 TUE 300p ~ 322p 23일차 내용 ⬇️ 2023.08.25 - [개발 서적 기록/오브젝트_조영호] - 23일차 - 의존성 주입 23일차 - 의존성 주입 2023.08.25 FRI 289p ~ 304p 22일차 내용 ⬇️ 2023.08.24 - [개발 서적 기록/오브젝트_조영호] - 22일차 - OCP 적용하기 22일차 - OCP 적용하기 2023.08.24 THU 276p ~ 290p 21일차 내용 ⬇️ 2023.08.23 - [개발 서적 기록/오 magenta-ming.tistory.com DIP 의존성 역전 원칙 상위 수준의 모듈은 하위 수준의 모듈에 의존해서는 안된다. 모두 추상화에 의존해야한다. 추상화는 구체적인 사항에 의존해서는 안된다. 구체적인 사항은 추사화에 의존..

23일차 - 의존성 주입

2023.08.25 FRI 289p ~ 304p 22일차 내용 ⬇️ 2023.08.24 - [개발 서적 기록/오브젝트_조영호] - 22일차 - OCP 적용하기 22일차 - OCP 적용하기 2023.08.24 THU 276p ~ 290p 21일차 내용 ⬇️ 2023.08.23 - [개발 서적 기록/오브젝트_조영호] - 21일차 - 바람직한 의존성 21일차 - 바람직한 의존성 2023.08.23 WED 261p ~ 276p 20일차 내용⬇️ 2023.08.22 - [개발 서적 magenta-ming.tistory.com 시스템을 객체로 분리하기 : 표현적 분해와 행위적 분해 표현적 분해는 도메인제 존재하는 사물 또는 개념을 표현하는 객체들을 이용해 시스템을 분해하는 것이다. 도메인 모델에 담겨 있는 개념과 ..

22일차 - OCP 적용하기

2023.08.24 THU 276p ~ 290p 21일차 내용 ⬇️ 2023.08.23 - [개발 서적 기록/오브젝트_조영호] - 21일차 - 바람직한 의존성 21일차 - 바람직한 의존성 2023.08.23 WED 261p ~ 276p 20일차 내용⬇️ 2023.08.22 - [개발 서적 기록/오브젝트_조영호] - 20일차 - 런타임과 컴파일 시점의 의존성을 위해 컨텍스트는 독립되어야한다 20일차 - 런타임과 컴파일 시점의 magenta-ming.tistory.com 표준 클래스는 의존은 해롭지 않다 표준 클래스는 내부 코드가 수정될 확률이 매우 낮기 때문에 직접 인스턴스를 직접 생성하더라도 문제되지 않는다. 하지만 표준 클래스를 활용해서 인스턴스를 직접 생성할 때에도, 가능한 추상적인 타입을 사용하는 ..

21일차 - 바람직한 의존성

2023.08.23 WED 261p ~ 276p 20일차 내용⬇️ 2023.08.22 - [개발 서적 기록/오브젝트_조영호] - 20일차 - 런타임과 컴파일 시점의 의존성을 위해 컨텍스트는 독립되어야한다 20일차 - 런타임과 컴파일 시점의 의존성을 위해 컨텍스트는 독립되어야한다 2023.08.22 TUE 247p ~ 263p 19일차 내용 ⬇️ 2023.08.21 - [개발 서적 기록] - 19일차 - 모듈로 정보 은닉하기 19일차 - 모듈로 정보 은닉하기 2023.08.21 MON 234p ~ 249p 18일차 내용 ⬇️ 2023.08.21 - [개발 서적 기록/ magenta-ming.tistory.com 의존성 해결 컴파일 타임 의존성을 실행 컨텍스트에 맞는 적절한 의존성으로 교체해야한다. 아래 방..

가상 메모리

기존에는 프로세스가 실행되는 코드 전체를 메모리에 로드해야했다. 그래서 메모리 용량보다 더 큰 프로그램을 실행시킬 수 없었다. ex ) 100MB의 메모리 환경에서, 200MB 크기의 프로세스를 수행할 수 있도록 가상 메모리를 사용한다. 프로그램에서 실질적으로는 사용되는 부분은 일부이고, 혹은 프로세스의 특정 순간에서 메모리를 사용하기에, 기존의 방식은 비효율적이었다. 따라서 가상 메모리가 필요하다. 물리 주소와 논리 주소 CPU는 실행하고자 하는 프로그램이 메모리의 어디에 있는지 알 수 없다. 메모리에 저장된 값은 시시각각 변하기 때문이다. 새롭게 실행되는 프로그램은 새롭게 메모리에 적재한다. 실행이 끝난 프로그램은 메모리에서 삭제한다. 같은 프로그램을 실행하더라도, 실행할 때마다 적재되는 주소는 달라..

CS 2023.08.22

20일차 - 런타임과 컴파일 시점의 의존성을 위해 컨텍스트는 독립되어야한다

2023.08.22 TUE 247p ~ 263p 19일차 내용 ⬇️ 2023.08.21 - [개발 서적 기록] - 19일차 - 모듈로 정보 은닉하기 19일차 - 모듈로 정보 은닉하기 2023.08.21 MON 234p ~ 249p 18일차 내용 ⬇️ 2023.08.21 - [개발 서적 기록/오브젝트_조영호] - 18일차 - 하향식 기능 분해 설계 18일차 - 하향식 기능 분해 설계 2023.08.20 SUN 223p ~ 234p 17일차 내용 ⬇️ 2023.08.19 magenta-ming.tistory.com 시점에 따른 의존성 실행 시점에서는, 의존하는 객체가 정상적으로 동작하기 위해서 의존 대상 객체가 반드시 존재해야한다. 반면, 구현 시점에서는, 의존 대상 객체가 변경될 경우, 의존하는 객체도 함..

19일차 - 모듈로 정보 은닉하기

2023.08.21 MON 234p ~ 249p 18일차 내용 ⬇️ 2023.08.21 - [개발 서적 기록/오브젝트_조영호] - 18일차 - 하향식 기능 분해 설계 18일차 - 하향식 기능 분해 설계 2023.08.20 SUN 223p ~ 234p 17일차 내용 ⬇️ 2023.08.19 - [개발 서적 기록/오브젝트_조영호] - 17일차 - 프로시저 추상화와 데이터 추상화 17일차 - 프로시저 추상화와 데이터 추상화 2023.08.18 FRI 214p ~ 224p 16 magenta-ming.tistory.com 정보 은닉 시스템에서 자주 변경되는 부분을, 상대적으로 덜 변경되는 안정적인 인터페이스 뒤로 감춰서, 시스템을 모듈 단위로 분해하는 방법 시스템을 모듈로 분해한 후에는 각 모듈 내부를 구현하고..

18일차 - 하향식 기능 분해 설계

2023.08.20 SUN 223p ~ 234p 17일차 내용 ⬇️ 2023.08.19 - [개발 서적 기록/오브젝트_조영호] - 17일차 - 프로시저 추상화와 데이터 추상화 17일차 - 프로시저 추상화와 데이터 추상화 2023.08.18 FRI 214p ~ 224p 16일차 내용 ⬇️ 2023.08.19 - [개발 서적 기록/오브젝트_조영호] - 16일차 - 캡슐화가 적절지 않은 경우와 명령 쿼리 분리 원칙 16일차 - 캡슐화가 적절지 않은 경우와 명령 쿼리 magenta-ming.tistory.com 하향식 기능 분해 / 하향식 접근법 시스템을 구성하는 가장 최상위 기능을 정의하고, 이 최상위 기능을 좀 더 작은 단계의 하위 기능으로 분해해 나가는 방법이다. 전통적인 기능 분해 방법이다. 최상위의 추..

17일차 - 프로시저 추상화와 데이터 추상화

2023.08.18 FRI 214p ~ 224p 16일차 내용 ⬇️ 2023.08.19 - [개발 서적 기록/오브젝트_조영호] - 16일차 - 캡슐화가 적절지 않은 경우와 명령 쿼리 분리 원칙 16일차 - 캡슐화가 적절지 않은 경우와 명령 쿼리 분리 원칙 2023.08.18 FRI 199p ~ 213p 15일차 내용 ⬇️ 2023.08.18 - [개발 서적 기록/오브젝트_조영호] - 15일차 - 퍼블릭 인터페이스 만들기 15일차 - 퍼블릭 인터페이스 만들기 2023.08.18 FRI 183p ~ 198p 14일차 내용 ⬇️ 2 magenta-ming.tistory.com 분해를 통한 추상화 구현 불필요한 정보를 제거하고, 현재의 문제 해결에 필요한 핵심만 남기면서 추상화를 실현할 수 있다. 이런 추상화를..

728x90