본문 바로가기

Programming/Languages (Java, etc)41

싱글톤 패턴 (Singleton pattern) 목차 싱글톤 패턴의 이해 구현 (JAVA) 디자인 패턴에서 자주 사용되는 싱글톤 패턴에 대한 필요성을 이해하고, 구현 방안의 종류를 알아봅니다. 싱글톤 패턴의 이해 싱글톤 패턴은 애플리케이션에서 불변할 객체에 대하여 한번만 초기화 (할당)해놓고 가져다 쓰도록 하는 디자인 패턴입니다. 실생활에서 예시를 들어보겠습니다. 가족 구성원이 4명이고 4명 모두 운전자라고 가정합시다. 일반적으로 가족 구성원 (사용자)만큼 자동차 (객체)를 구입하나요? 자동차 (객체)를 사용하기 위한 비용 (메모리)이 굉장히 많이 듭니다. 따라서 자동차를 한대만 구입하여 구성원이 공유하여 사용합니다. 이와 같은 원리를 애플리케이션 단에 적용하는 디자인 패턴을 싱글톤 패턴 (Singleton Pattern)이라 합니다. 애플리케이션 런.. 2022. 5. 10.
알고리즘의 기본 - 시간복잡도 2022.03.11 - [개발/알고리즘] - 알고리즘을 공부하기 위한 기초지식 (자료구조) 알고리즘을 공부하기 위한 기초지식 (자료구조) 목표 알고리즘의 기본을 이해한다. 알고리즘을 공부하기 위해 기본적인 자료구조 지식을 갖춘다. 목차 알고리즘이 갖는 의미 자료구조의 기본 알고리즘이 갖는 의미 컴퓨터 프로그램의 근본 kghworks.tistory.com 이어지는 포스팅입니다. 목표 알고리즘의 정의를 이해한다. 알고리즘 설계기법의 종류를 나열한다. 알고리즘 시간 복잡도의 의미와 계산법을 알아본다. 점근 성능의 표기법의 종류와 개념을 이해하고 적용할 수 있다. 목차 알고리즘의 정의와 설계 알고리즘 분석 (시간 복잡도, 빅오 표현법) 순환 알고리즘의 성능 참고 알고리즘의 정의와 설계 알고리즘이란 문제를 풀기 .. 2022. 3. 18.
알고리즘을 공부하기 위한 기초지식 - 자료구조 목표 알고리즘의 기본을 이해한다. 알고리즘을 공부하기 위해 기본적인 자료구조 지식을 갖춘다. 목차 알고리즘이 갖는 의미 자료구조의 기본 알고리즘이 갖는 의미 컴퓨터 프로그램의 근본 목적은 문제 (요구사항)를 알고리즘을 이용하여 풀어내는 것입니다. 그 문제는 단순 입/출력일 수도 있고, 보다 복잡한 계산일 수도 있습니다. 프로그램이 목적에 맞게 실행할 수 있도록 제시하는 해결방법 혹은 그 방법의 서순 자체를 알고리즘이라고 합니다. 컴퓨터 과학에서 알고리즘은 문제 해결을 할 수 있도록 하는 필수 요소일 뿐만 아니라 개발자에게는 사용자 (클라이언트)의 요구사항을 컴퓨터 기반의 언어로서 풀어낼 수 있도록 하고 나아가 더 효율적인 프로그램이 될 수 있도록 합니다. 수학으로 치면 풀이과정이며, 요리로 치면 레시피 .. 2022. 3. 11.
js, css, html 파일 웹 브라우저 캐싱 방지 - 쿼리 스트링 문제 원인 해결책 참고 문제 웹 소스들 (html, js, css)에 수정을 하여 서버에 반영해도, 브라우저 상에서 반영이 안 되는 경우가 있습니다. 운영 서비스일 때는 이 문제가 더 심각합니다. 새로운 버전을 만들어 서버에 배포를 했어도, 실제 브라우저에서는 개발자 도구를 열어봐도 이전 javascript파일 (기타 정적 파일들, css 등)을 로딩하는 경우가 발생하는 것입니다. 원인 웹브라우저는 js, css파일을 캐싱해놓고, 동일한 url을 요청한다면 캐싱해둔 소스(이전 소스)를 가져옵니다. 수정한 파일을 서버에 올린다 한들 브라우저는 캐싱되어있는 동일한 url의 소스가 있는 한 새로운 소스를 가져오지 않습니다. 그니까 브라우저가 캐싱하는 것은 문제가 아니고, 캐싱해놓고 내가 새로 올린 파일은 애초.. 2022. 3. 4.
HTML의 개요 목표 HTML의 기본 개념과 특징을 이해한다. HTML의 기본 구조와 작성방법을 숙지한다. HTML을 작성하고 실행한다. 목차 마크업 언어 HTML이란? HTML 관련 참고할만한 사이트 마크업 언어 마크업 언어란 태그따위를 이용하여 문서나 데이터의 구조를 명기하는 언어입니다. 일반적으로는 데이터의 구조까지만기술할 수 있기 때문에 프로그래밍언어라고 보지는 않습니다. 마크업 언어로 기술된 문서 안에는 아래와 같은 마크업들이 들어갑니다. 내용 (content) : 문서의 본문 내용 제목, 주소와 같은 데이터를 나타내는 의미적 마크업. 구조 (structure) : 문서의 구성 정보 문단, 제목글 등과 같은 구조적 마크업. 스타일 (style) : 문서의 표현 방법 모양, 생상 등을 나타내는 양식적 마크업. 마.. 2022. 3. 2.
[JAVA] Garbage Collection (가비지 컬렉션) 목차 JVM 가상 머신의 메모리 관리 Garbage Collection GC 동작 예시 (코드) GC 원리 (메모리) GC의 종류 참고 * JAVA의 메모리 원리에 대해 안다는 전제 하에 포스팅합니다. stack과 heap에 대한 최소한의 이해도를 가진 후 보시길 바랍니다. 혹여 부족하시다면, 아래 포스팅을 먼저 참고하실 수 있습니다. 2022.01.26 - [개발/JAVA] - stack, heap (스택과 힙) - 자바의 메모리 런타임 stack, heap (스택과 힙) - 자바의 메모리 런타임 목차 자바의 메모리 영역 스택 (stack) 힙 (heap) 가비지 컬렉션 (Gabage Collection) 자바의 메모리 영역 자바의 메모리 구조는 크게 스택과 힙으로 나뉩니다. 스택 (stack) 기본 .. 2022. 2. 16.