본문 바로가기

개발학습

(15)
오버로딩? 오버라이딩? 오버로딩(Overloading)과 오버라이딩(Overriding)은 객체지향 프로그래밍에서 중요한 개념이다. 둘다 다형성을 구현하는 방법 중 하나이다. 다형성이란? - 동일한 이름의 메서드나 함수가 다른 동작을 할 수 있는 성질 오버로딩 - 같은 이름의 메서드이지만 매개변수의 타입과 갯수가 다르게 정의되는 것을 뜻함. 오버라이딩 - 상위 클래스에서 정의된 메서드를 하위 클래스에서 재정의하는 것.
스프링프레임워크의 특징? IOC, DI, AOP??? 스프링프레임워크란?? - 자바 기반의 애플리케이션을 개발하기 위한 경량화된 프레임워크로, 다양한 기능과 특징을 제공한다. 그 중에서도 IOC (Inversion of Control), DI (Dependency Injection), AOP (Aspect-Oriented Programming)은 스프링의 핵심적인 특징이라고 함. IOC?? - 객체 지향 프로그래밍에서 중요한 디자인 원칙 중 하나로, 개발자가 객체 간의 의존성을 직접 관리하는 대신, 프레임워크나 컨테이너가 이를 대신하고 객체의 제어 흐름을 관리하는 디자인 패턴이다.- 코드의 결합도를 낮추고 유지보수성을 높일 수 있으며, 특히 대규모 애플리케이션 개발 시 객체 간의 관리를 효율적으로 할 수 있다. DI?? - DI (Dependency Inj..
인터페이스란?? 인터페이스란? - 모든 메서드가 구현부가 없는 추상메서드로 이루어진 클래스로, abstract 키워드를 붙이지 않아도 자동으로 모든 메서드는 추상메서드로 정의가 된다. 또한 변수도 자동으로 final static 키워드가 붙게 된다. 사용하는 이유는? - 코드의 유연성을 높이고 다형성을 구현하여 클래스 간의 결합도를 낮추기 위함이다. 결합도를 낮추면 시스템 유지보수확장이 더 수월해진다. 인터페이스 선언 - 인터페이스를 선언할 때에는 접근 제어자와 함께 interface 키워드를 사용하면 된다. 인터페이스 구현 - class 클래스이름 implements 인터페이스이름
예외 처리란?? 예외 처리란 프로그래밍에서 발생할 수 있는 예상치 못한 상황 또는 오류에 대처하는 메커니즘이다. 왜 쓰는 걸까? - 내가 정해놓은 경우의 수 외의 예외 혹은 오류가 발생했을 때 프로그램이 그에 대응하는 방법을 결정하는 것이다. 대부분의 프로그래밍 언어에서는 try-catch 블록을 사용하여 예외 처리를 구현한다. - try 블록 내에서 예외가 발생할 수 있는 코드를 작성하고, catch 블록에서 예외를 처리 예외처리를 사용하기위해서는 try-catch, finally, throw, throws 등등 이 있다.
제이쿼리란?? 제이쿼리(jQuery)란? - jQuery는 JavaScript 코드를 더 쉽게 작성할 수 있게 해주는 JavaScript 라이브러리이다. 요소 선택, HTML 콘텐츠 조작, 이벤트 처리, AJAX 요청 생성등등의 기능을 단순화해준다. 라이브러리란? - 개발자가 코드를 처음부터 작성하지 않고도 일반적인 작업을 수행하는 데 사용할 수 있는 미리 작성된 코드와 기능의 모음. jQuery를 사용하면 DOM(문서 개체 모델)에서 HTML 요소를 쉽게 선택하고 조작할 수 있다. DOM이란?? - DOM은 문서 객체 모델(Document Object Model)을 의미하며 HTML 문서를 객체화한 것이라고 한다. Javascript를 통해 DOM의 노드들을 탐색할 수도 있다.(ex : querySelector, g..
객체와 클래스????? 클래스(Class)란? - 현실 세계의 객체의 속성과 동작을 추려내 필드와 메서드로 정의한 것으로 "아직 메모리가 할당되지 않은 상태"라고 한다. 객체(Object)란? - 이 클래스라는 설계도를 기반으로 실제 메모리가 잡힌 것을 의미하며 이런 객체를 조합해 전체 프로그램을 완성해 나가는 방식을 객체지향 프로그래밍(OOP)라고 한다.
추상클래스란?? 인터페이스란?? 추상 클래스와 인터페이스는 모두 해당 클래스에서 상속되는 클래스에 대한 계약을 정의하는 방법을 제공한다. 둘 다 추상화를 달성하고 객체 또는 계약에서 계약을 정의하기 위한 Java의 중요한 개념이다. 추상 클래스는 abstract 키워드로 선언된 클래스 인터페이스는 interface 키워드를 사용하여 선언 추상 클래스는 extends 키워드를 사용하여 확장 인터페이스는 implements 키워드를 사용하여 구현 (단일상속)클래스는 하나의 추상 클래스만 확장할 수 있다. (다중상속)클래스는 여러 인터페이스를 구현할 수 있다. 각자 어떤 상황에 쓰이나? - 공통 동작을 공유하는 관련 클래스 그룹이 있고 이에 대한 기본 구현을 제공하려는 경우 추상 클래스를 사용 - 동일한 규칙을 따라야 하지만 다르게 작동할 ..
쓰레드(Thread)란?? 쓰레드란 프로그램이 동시에 여러 작업을 처리할 수 있게 해주는 것이다. 예를 들어, 한 쓰레드는 음악을 재생하고, 다른 쓰레드는 메시지를 보낼 수 있다. 프로세스와 쓰레드의 비교 - 프로세스는 실행중인 프로그램으로, 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 뜻한다. - 스레드란 프로세스 내에서 실제로 작업을 수행하는 주체를 뜻한다. 쓰레드의 특징 - 여러개의 쓰레드가 동시에 실행되는 병행성이 있다. - 하나의 프로세스 안에서 생성된 쓰레드들은 같은 메모리 공간을 공유하며 서로 데이터를 주고 받는다. - 비동기적으로 실행하여 실행순서도 있다. 쓰레드생성 - 자바(JAVA)에서는 Thread 클래스를 상속받아서 쓰레드를 생성하거나, Runnable 인터페이스를 구현하..