일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- APNS
- 카프카 트랜잭션
- 웹사이트최적화기법
- 페이스북 번역
- 푸시 번역
- graphql
- nginx설정
- gcm 푸시 번역
- 디자인패턴
- git
- GCM
- nginx
- 성능
- 웹사이트 성능
- 푸시
- 도메인 주도 개발
- 카프카
- GCM 번역
- Design Pattern
- Push
- 웹사이트성능
- Java
- php
- ddd
- JPA
- notification
- nginx설치
- 자바스크립트
- kafka
- Today
- Total
목록Computer Science (41)
간단한 개발관련 내용
1. Native Threads (Java 1.0)등장 시기: Java 1.0 (1995년)기본 개념:java.lang.Thread 클래스를 사용하여 직접 스레드를 생성하고 관리.Runnable 인터페이스를 통해 스레드에서 실행할 코드를 정의.동기화(synchronized)와 wait()/notify() 메서드를 사용해 스레드 간 통신 및 동기화 구현.예제:class MyTask implements Runnable { @Override public void run() { System.out.println("Thread is running..."); }}public class Main { public static void main(String[] args) { ..
도메인 주도 설계(DDD) - 전략적 설계 요약도메인 주도 설계의 전략적 설계(Strategic Design)는 도메인의 큰 그림을 이해하고 관리 가능한 하위 도메인으로 나누어 비즈니스와 기술의 복잡성을 효과적으로 관리하는 방법론입니다. 이 과정에서 바운디드 컨텍스트(Bounded Context), 유비쿼터스 언어(Ubiquitous Language), 그리고 도메인 간 협력 패턴을 정의합니다.1. 전략적 설계의 핵심 개념1.1 비즈니스 도메인 분석비즈니스 도메인: 기업이 고객에게 제공하는 주요 활동 영역.하위 도메인: 비즈니스 활동을 세분화한 영역.핵심 하위 도메인: 경쟁 우위를 제공하며 복잡성과 변동성이 높음.일반 하위 도메인: 모든 회사에서 동일하게 수행하는 활동 (로그인, 인증 등).지원 하위 도..
계층(Layer)과 티어(Tier)의 차이점계층형 아키텍처와 N-티어 아키텍처를 어떻게 구분하는가?1. 계층 (Layered Architecture)개념적 경계를 나타냅니다.계층은 논리적으로 구분되며 동일한 단위에서 구현되고 배포됩니다.예: Presentation Layer, Application Layer, Domain Layer, Infrastructure Layer논리적 구조: 각 계층이 기술적/기능적 역할을 담당하지만, 같은 서버나 시스템에 배포될 수 있습니다.2. 티어 (N-Tier Architecture)물리적 경계를 나타냅니다.각 티어는 서로 독립적으로 배포될 수 있습니다.예:브라우저 (클라이언트)리버스 프록시 서버애플리케이션 서버데이터베이스 서버각 티어는 물리적으로 분리된 서버, 시스템, ..
Layered Architecture란?Layered Architecture는 애플리케이션을 기능과 책임에 따라 계층으로 분리하는 설계 패턴입니다. 각 계층은 특정 역할을 수행하고, 계층 간의 의존성을 명확히 하여 유지보수와 확장성을 높입니다.1. 3Layer Architecture (3계층 아키텍처)3-Layer Architecture는 과거부터 널리 사용된 계층형 아키텍처로, 시스템을 세 가지 주요 계층으로 나눕니다.구성Presentation Layer (UI Layer)사용자와 상호작용하는 부분입니다.화면, 웹 컨트롤러, REST API 등의 역할을 합니다.예: Controller, ViewBusiness Logic Layer (Service Layer)비즈니스 로직을 처리하고 애플리케이션의 핵심 ..
1. 트랜잭션 스크립트 (Transaction Script)구현 방법트랜잭션 스크립트는 비즈니스 로직을 서비스 계층에서 직접 구현하는 패턴입니다.하나의 트랜잭션 단위(Use Case)를 처리하는 스크립트 형태로 동작합니다.구현 시:애플리케이션 서비스에서 데이터베이스 접근 코드와 비즈니스 로직을 함께 작성합니다.일반적으로 Service 클래스 내부에서 Repository를 호출하고 비즈니스 로직을 순서대로 나열합니다.예시 코드 (Kotlin + Spring Boot):@Serviceclass OrderService( private val orderRepository: OrderRepository, private val paymentGateway: PaymentGateway) { @Trans..
알고리즘은 다양한 문제를 해결하기 위해 설계된 방법론으로, 문제의 유형과 성격에 따라 적합한 알고리즘을 선택해야 합니다. 아래는 그리디 알고리즘을 중심으로 주요 알고리즘을 문제 해결 방식과 특성에 따라 분류하고 설명한 내용입니다.1. 그리디 알고리즘 (Greedy Algorithm)특징매 단계에서 현재 상황에서 가장 최선의 선택을 합니다.문제를 전역적으로 최적화할 수 있는지 판단하기 위해 지역적으로 최적화된 선택을 기반으로 합니다.일반적으로 탐욕스러운 선택 속성(Greedy Choice Property)과 최적 부분 구조(Optimal Substructure)를 만족하는 문제에서 사용됩니다.적용 사례활동 선택 문제(Activity Selection Problem)회의실 배정 문제: 가장 빨리 끝나는 활동..