- TO-DO LIST
- 63-2강 멀티 쓰레딩 프로그래밍 ~ 64-2강 디자인 패턴 소개
- 배운 내용 요약 정리
Thread 동기화 문제
여러 스레드 공통 영역 동시 접근하여 수정하는 상황, 충돌과 일관성 문제 발생
synchronized로 동기화 문제 해결
하나의 서버는 다수의 client 요청을 동시에 처리해야 한다.
디자인 패턴
= 소프트웨어 디자인 과정(코드 구현 전 설계) 전형적인 해결책
= 게임 공략법, 전략
최적의 설계 노하우 정리
많은 디자인 패턴은 새로운 문법이나 키워드를 사용하는 게 아니다
문법, 개념을 유기적으로 연결하여 사용한다.
Java 3가지 디자인 패턴 그룹
1. 생성 패턴
2. 구조 패턴
3. 행동 패턴
Java 싱글톤 패턴
단 하나 인스턴스만 생성 및 공유하여 자원 절약 일관성 유지 목적 디자인 패턴
사용: static, Synchronized 설정
Java 빌더 패턴
복잡한 객체의 생성 과정을 단순화, 가독성과 유연성을 높여 객체를 생성
사용: 정적 내부 클래스, 내부 this 변환
Java 데코레이터 패턴
기존 객체 변경 없이 동적으로 기능을 추가 / 수정하는 디자인 패턴
사용: 추상클래스, 인터페이스, 업캐스팅
Java 전략 패턴
동적으로 교체 가능한 전략을 제공, 객체 관계를 유연하게 만드는 디자인 패턴
- 부족한 점
- 스스로 시도해본 것들
디자인 패턴 개념이 모호해서 구글링 통해 더 알아봤다.
- 해결 내용
- 알게된 점
- 헷갈리거나 실수한 점
- 회고
혼자 코드 작성해보라고 하면 사실 아직은 못할 것 같다..ㅠㅠ
그래도 계속 해봐야지
만약 서버 쪽으로 가닥을 잡으면 multi thread가 중요하지 않을까 싶다.
'SuperCoding' 카테고리의 다른 글
2024.04.02(화) MySQL (0) | 2024.04.03 |
---|---|
2024.03.03(일) 슈퍼코딩 부트캠프 백엔드 인턴 Week5 Day1 보고 (0) | 2024.03.06 |
2024.02.01(목) 슈퍼코딩 부트캠프 백엔드 인턴 Week4 Day4 보고 (1) | 2024.03.06 |
2023.11.02(목) 슈퍼코딩 부트캠프 백엔드 인턴 Week4 Day4 보고 (0) | 2024.03.06 |
2023.11.01(수) 슈퍼코딩 부트캠프 백엔드 인턴 Week4 Day3 보고 (0) | 2024.03.06 |