본문 바로가기

전체 글61

싱글톤 패턴 생성 패턴의 일종으로 인스턴스를 오직 한 개만 제공하는 클래스 시스템 런타임, 환경 세팅에 대한 정보 등, 인스턴스가 여러 개일 때 문제가 생길 수 있는 경우가 존재 -> 인스턴스를 오직 한 개만 만들어 제공하는 클래스가 필요 싱글톤 패턴 구현 방법 1. private 생성자에 static 매서드 public class Settings { private static Settings instance; private Settings() { } public static Settings getInstance() { if (instance == null) { instance = new Settings(); } return instance; } } 이 방법은 인스턴스가 null인지 아닌지 체크하는 방식으로 가장 기.. 2023. 9. 4.
함수형 프로그래밍 함수형 프로그래밍 자료처리를 수학적 함수의 계산으로 취급하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임 함수형 프로그래밍의 특징 순수함수 동일한 입력에는 항상 같은 값을 반환해야 하는 함수 함수의 실행이 프로그램의 실행에 영향을 미치지 않아야 하는 함수 함수 내부에서 인자의 값을 변경하거나 프로그램 상태를 변경하는 Side Effect가 없는 것 비상태, 불변성 함수형 프로그래밍에서의 데이터는 변하지 않는 불변성을 유지해야 한다. 데이터의 변경이 필요한 경우, 원본 데이터 구조를 변경하지 않고 그 데이터의 복사본을 만들어서 그 일부를 변경하고, 변경한 복사본을 사용해 작업을 진행한다. 선언형 함수 명령형 프로그래밍은 무엇을 어떻게 할 것인가에 주목하고, 선언형 프로그래밍은 무엇을 할 것인가에 주목.. 2023. 7. 10.
CIDR CIDR(Classless Inter-Domain Routing) 클래스 없는 도메인 간 라우팅 기법 도메인 간의 라우팅에 사용되는 인터넷 주소를 원래 IP주소 클래스 체계를 쓰는 것보다 더욱 능동적으로 할 수 있게 할당하여 지정하는 방식 서브네팅 & 슈퍼네팅과 같이 IP를 나누고 합치는 기법이 모두 CIDR 네트워크 정보를 여러개로 나누어진 Sub-Network들을 모두 나타낼 수 있는 하나의 Network로 통합해서 보여주는 방법 CIDR 표기법 A.B.C.D/N 서브네팅에서 서브넷 마스크를 적은 것을 Prefix라고 한다. 이렇게 N을 뒤에 표시하면 단 한줄만으로 네트워크 범위를 추측 또는 측정이 가능하다. ---------------------------------------------------.. 2023. 6. 29.
AWS VPC 및 SubNet 구축 실습 AWS 3계층 구조 aws를 사용하여 클라이언트가 클라우드에 접근할 때 VPC와 Subnet을 사용하여 보안을 유지하는 아키텍처이다. 이 구조는 클라이언트가 AWS의 ElasticLoadBalacner에 접근하면서 클라이언트는 VPC의 구조를 전혀 모르게 설계되어있다. 1. Presentaiton Layer(표현 계층) 표현 계층은 클라이언트와 상호작용하는 계층으로 브라우저나 어플리케이션을 통해 접근된다. UI를 표시하고 요청을 처리하며 결과를 표시하기 위한 프론트엔드 로직이 포함된다. 이 계층에서 aws s3와 같은 정적 웹 호스팅 서비스, aws cloudfront와 같은 CDN(Content Delivery Network)서비스를 사용하여 정적 콘텐츠를 제공하는 웹 서버의 역할을 한다. 2. App.. 2023. 6. 26.