전체 글
-
프레임워크(Framework)란? (라이브러리(Library)와 차이점)Spring 2023. 8. 17. 12:29
✔️ 프레임워크(Framework) 프레임워크는 소프트웨어 개발을 위한 구조와 기본 틀을 제공하는 라이브러리와 도구의 집합이다. 특정 도메인이나 문제 해결을 위한 공통된 구조와 패턴을 제공하여 개발자가 보다 쉽고 효율적으로 애플리케이션을 개발하고 관리할 수 있도록 돕는다. • 구조와 템플릿 프레임워크는 애플리케이션의 기본 구조와 디자인 패턴을 정의하여 개발자가 애플리케이션을 구축할 때 일관성을 유지할 수 있도록 돕는다. • 재사용성 프레임워크는 공통된 작업을 처리하는 미리 구현된 기능들을 제공하므로, 개발자는 이를 활용하여 코드를 재사용하고 개발 시간을 단축할 수 있다. • 컴포넌트와 모듈화 프레임워크는 애플리케이션을 구성하는 여러 컴포넌트나 모듈을 분리하고 관리할 수 있는 기능을 제공한다. • 설계 지..
-
클래스(Class)와 객체(Object)JAVA 2023. 8. 17. 01:42
✔️ 클래스(Class) 클래스는 객체지향프로그램밍에서 객체를 생성하기 위한 템플릿이며, 객체의 속성(데이터)과 행위(메서드)를 정의하는 데 사용된다. 클래스는 실제로 데이터를 저장하지 않으며, 객체의 설계도나 구조를 정의하는 역할을 한다. 클래스를 기반으로 여러 개의 객체를 생성할 수 있으며, 이러한 객체는 클래스의 인스턴스이다. 클래스의 구성요소는 다음과 같다. • 속성(fields 또는 멤버 변수) 클래스의 속성은 객체의 상태를 나타내는 데이터이다. 예를 들어, 사람 클래스에서 이름, 나이, 주소 등의 속성이 있을 수 있다. • 메서드(methods) 클래스의 메서드는 객체의 동작이나 기능을 정의하는 코드 블록이다. 메서드는 객체의 속성을 조작하거나 특정 작업을 수행한다. • 생성자(construc..
-
객체지향언어란?JAVA 2023. 8. 17. 01:16
✔️ 객체지향언어 (Object-Oriented Programming Language) 소프트웨어 개발 방법론 중 하나로, 현실 세계의 사물을 모델링하여 소프트웨어를 구성하는 프로그래밍 패러다임이다. 이 방법론은 코드의 재사용성, 유지보수성, 확장성 등을 향상시키는 데 목적을 두고 있다. 객체지향언어는 클래스와 객체의 개념을 중심으로 하며, 객체들 간의 상호작용을 통해 프로그램을 구성한다. 객체지향언어의 주요 특징은 다음과 같다. 1. 클래스와 객체 객체지향언어에서는 클래스(class)와 객체(object)라는 개념을 사용한다. 클래스는 특정한 속성과 행위(메서드)를 가진 객체들을 정의한 템플릿이다. 객체는 클래스의 인스턴스로, 실제로 메모리에 할당되어 사용되는 것을 나타낸다. 2. 캡슐화(Encapsu..
-
메서드(Method)란?JAVA 2023. 8. 17. 01:02
-- 자바에서 클래스는 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가진다. 그중에서 메소드란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있다. ✔️ 메서드란? (method) 객체 지향 프로그래밍에서 클래스 내에서 특정 작업을 수행하는 코드 블록을 말한다. 메서드는 클래스의 동작이나 기능을 정의하며, 객체의 상태를 변경하거나 특정 계산을 수행하는 역할을 한다. 메서드는 클래스의 멤버로서 클래스 내부에서 정의되며, 외부에서 호출하여 사용할 수 있다. 메서드의 특징과 역할은 다음과 같다. • 코드 재사용 메서는 작업의 논리를 단일 코드 블록으로 묶어서 중복을 방지하고 코드의 재사용성을 높이는 데 도움을 준다. • 기능 추상화 클래스의 기능..
-
접근 제어자란? (public, protected, default, private)JAVA 2023. 8. 17. 00:32
✔️ 접근 제어자(Access Modifier)란? 객체 지향 프로그래밍에서 클래스의 멤버(필드, 메서드, 내부 클래스 등)에 대한 접근 권한을 제어하는 속성이다. 접근 제어자는 클래스의 캡슐화, 정보 은닉, 보안성 등을 관리하고 조절하는 데 사용된다. 다른 클래스나 코드에서 해당 멤버에 접근할 수 있는지 여부를 결정하며, 코드의 모듈화와 유지 보수를 도와준다. 주요 접근 제어자에는 일반적으로 다음과 같은 네 가지 종류가 있다. 1. public public 접근 제어자는 해당 멤버가 어떤 클래스든 접근 가능하도록 허용한다. 다른 클래스에서도 자유롭게 접근할 수 있으며, 해당 멤버에 대한 외부 공개 인터페이스를 제공할 때 사용된다. • public 클래스와 메서드 public 접근 제어자를 사용하여 클래..
-
RAM(메모리) 구조 (stack, heap, data 영역, code 영역)CS 2023. 8. 16. 13:37
✔️ RAM(Random Access Memory) 컴퓨터 시스템의 주요 메모리 구성 요소 중 하나로, 프로그램과 데이터를 저장하고 CPU가 빠르게 액세스하여 처리할 수 있는 물리적인 공간이다. 램은 컴퓨터가 작업을 수행하는 동안 필요한 데이터를 일시적으로 저장하며, 프로그램의 실행과 데이터 처리에 중요한 역할을 한다. 프로그램이 실행되는 과정 ● 저장방식 램은 전기 신호로 데이터를 저장하고 읽어온다. 각 메모리 셀은 비트(0 또는 1)을 저장할 수 있는 작은 용량을 가지며, 이 비트는 정보를 나타낸다. 램은 플립플럽과 커패시터 등의 전자 기술을 사용하여 데이터를 보관한다. ● 용량 램의 용량은 컴퓨터 시스템마다 다르며, 일반적으로 몇 기가바이트(Gigabytes, GB)에서 수십 기가바이트까지 다양한 ..
-
형변환(casting) (자동 형변환, 강제 형변환)JAVA 2023. 8. 15. 15:01
✔️ 형변환이란? 변수나 값의 타입을 다른 타입으로 변환하는 것을 말한다. 자바에서는 기본 데이터 타입과 객체 타입 간의 형변환을 다룰 수 있다. 두가지 형변환 유형이 있다. ✔️ 컴퓨터의 값 처리 원칙 같은 종류 자료형만 대입 가능하다. 같은 종류 자료형만 계산 가능하다. 계산의 결과도 같은 종류의 값이 나와야 한다. -> 이러한 원칙이 지켜지지 않은 경우에 형변환이 필요하다. 1. 암시적(자동) 형변환 (Implicit or Automatic Casting) 암시적 형변환은 작은 크기의 데이터 타입이 큰 크기의 데이터 타입으로 자동으로 변환되는 것을 말한다. 이때 데이터의 손실이 발생하지 않는다. 암시적 형변환은 자바 컴파일러에 의해 자동으로 처리되며, 개발자가 별도의 코드를 작성하지 않아도 된다. ..
-
Spring Boot 라이브러리Spring Boot 2023. 8. 11. 13:38
✔️ Gradle은 의존 관계가 있는 라이브러를 함께 다운로드 한다. 아래 코드 조각은 Gradle 빌드 스크립트에서 프로젝트의 의존성(dependencies)을 설정하는 부분이다. Spring Boot 애플리케이션을 개발할 때 자주 사용되는 Spring Boot 스타터 의존성을 설정하는 부분이다. dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' } ✔️ i..