본문 바로가기

BACK-END/JAVA27

[JAVA] 싱글톤 패턴(SingleTon Pattern) 싱글톤 패턴이란? 우리가 개발을 하면서 마주치는 문제점들은 과거에 이미 누군가가 해결했을 가능성이 높다. 흔히 발생하는 문제들이라면 그에 응당하는 해결책이 있는데 그 해결책들을 모아서 정의한것을 디자인 패턴(Design Pattern)이라고 한다. 이 디자인 패턴은 총 23가지로 정리되는데 그 중 하나가 싱글톤 패턴(Singleton Pattern)이다. 싱글톤 패턴을 사용하는 이유 프로그램 전역에서 사용되는 유일한 클래스를 만들기 위해 사용하는데 이해하기 쉽게 객체 인스턴스가 오로지 한개만 생성되도록 설계하는 패턴이라고 말할 수 있다. 목적 ㆍ고정된 메모리 영역을 가지고 하나의 인스턴스만 사용하기 때문에 메모리 낭비를 방지할 수 있다. ㆍ싱글톤 클래스의 인스턴스는 전역에 사용될 수 있기 때문에 다른 클.. 2023. 2. 8.
[JAVA]가계부 CRUD 프로그램 만들기 1. 개요 저번에 주소록 CRUD 프로그램에 이어서 이번엔 강사님께서 가계부 CRUD 프로그램을 만드는 과제를 내주셨다. 로직면에서 저번이랑 크게 다른 점은 없지만 이번에는 List 인터페이스를 구현한 ArrayList 클래스에 객체를 생성하고 다루는 방법으로 로직을 짜보았다. 2. 흐름도 (1) DTO : 가계부(이하, AccountBook)에 필요한 필드와 메서드를 정의하고 생성자를 만들고 필드에 직접 접근하지 않기 위해 Getter/Setter 메서드와 toString메소드를 재정의하였다. (2) DAO : 가계부 객체를 생성하고 ArrayList에 담아서 CRUD 할 수 있는 핵심로직이 담긴 클래스이다. (3) MAIN : 사용자가 실행하고 싶은 기능을 선택하면, DAO에 있는 메소드를 호출할 수.. 2022. 12. 30.
[JAVA]주소록 CRUD 프로그램 만들기 1. 개요 생성자를 이용해서 객체를 생성하고 Scanner 객체를 이용해서 간단한 주소록 CRUD 프로그램을 작성하였다. 아직 DB 관련 수업은 수강하지 않아서 생성된 데이터들은 txt 형식의 파일에 저장되는 방식으로 구현하였다. 컬렉션 프레임워크는 사용하지 않았다. 2. DTO, DAO, FileProc, Main 1) DTO(Data Transfer Object) : DTO 클래스는 주소록에 데이터 등록을 하기 위해 필요한 필드와 JAVA의 객체지향특성 중 하나인 캡슐화에 의거하여 필드에 직접적인 접근을 막기 위해 getter, setter 메서드가 구현된 클래스이다. (* 때에 따라 DTO가 아닌 VO를 쓰기도 하는데, DTO는 쓰기ㆍ읽기가 가능하고 VO는 읽기 전용이라고 한다.) 2) DAO(Da.. 2022. 12. 28.
[JAVA] 2진수를 원하는 진수로 변환해서 출력하는 프로그램 1. 개요 입력한 2진수 값을 8진수, 10진수, 16진수로 변경하여 출력하는 프로그램 여러가지 문법으로 구현 가능하지만 오늘 배운 제어문을 이용하여 작성해보았다. 프로그램이니만큼 원하는만큼 반복해서 사용할 수 있도록 하였다. 2. 코드 public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("=============\n 진수 변환 프로그램\n============="); Scanner scanner = new Scanner(System.in); while(true) { System.out.print("2진수의 값을 입력해주세요 > "); String strBin = scanner.next(.. 2022. 12. 22.
중첩 for문 탈출하기 중첩 for문이 하나 있다고 가정하자. for(int i=0; i 2022. 12. 22.