객체지향 3

[Java] 객체지향 프로그래밍(OPP)과 함수형 프로그래밍(FP)

객체지향 프로그래밍(Object-Oriented Programming, OOP) 객체지향 프로그래밍은 소프트웨어를 객체(Object)라는 단위로 모델링하고, 객체들 간의 상호작용을 통해 프로그램을 구성하는 프로그래밍 패러다임입니다. 주요 특징으로는 캡슐화, 상속, 다형성이 있습니다. 특징 캡슐화(Encapsulation) : 데이터와 해당 데이터를 처리하는 메서드를 하나의 단위로 묶어 객체를 생성합니다. 외부에서 객체 내부의 상태에 직접 접근하는 것을 제한하고, 메서드를 통해 상태를 조작합니다. 상속(Inheritance) : 부모 클래스(슈퍼 클래스)의 특징을 자식 클래스(서브 클래스)가 상속받아 재사용할 수 있습니다. 이를 통해 코드의 중복을 줄이고, 코드의 유지보수성과 재사용성을 높일 수 있습니다...

JAVA/기초 2024.03.24

객체지향(OOP)과 절차적 프로그래밍(PP)

객체지향과 절차적 프로그래밍은 서로 반대된 개념이라고 알고 있는 사람들이 있는데, 맞는 말이 아니다. 또한 절차적 프로그래밍 언어는 C이고 객체지향 프로그래밍 언어는 JAVA, Python, C++ 등등이 있다. 라고 말하는 사람들도 있는데, 이 또한 맞는 말이아니다. C언어도 객체지향과 유사하게 프로그래밍을 할 수 있으며, JAVA, Python 등 대표적인 객체지향 언어라고 불리는 것들도 절차적으로 짤 수 있다. 자세한 내용은 이 블로그에서 잘 정리되어있다. 객체지향(OOP)과 절차적 프로그래밍(PP) (tistory.com) 결론적으로 요약하면, 두개의 프로그래밍 방식은 흐름도를 통해 구분될 수 있다. 절차지향 프로그래밍은 데이터에 대한 순서를 파악하고 필요한 기능을 함수로 만들어 순서대로 진행시키..

CS 2022.06.05

AOP와 OOP란?

OOP(Object Oriented Programming) : 객체 지향 프로그래밍 모든 데이터를 현실에 빗대어 객체로 다루는 프로그래밍 기법. 대표적 특징 1. 캡슐화(Encapsulation) : 데이터와 함수를 하나로 묶는다. 데이터의 세부 내용이 객체 은닉된다. 즉, 데이터 변경으로 인한 에러가 줄어들고, 객체들간에 데이터를 자세히 알 필요가 없으므로 코드가 단순해진다. 객체와 함수의 재사용이 쉽다. 2. 정보은닉(Information Hiding) : private으로 선언한 데이터는 자기 자신을 통해서만 접근 가능하다. (getter, setter로만 접근 가능) 각 객체간의 수정이 다른 객체에 미치는 영향을 최소화 한다. 외부 객체의 직접 접근을 막아 프로젝트 확장 시 오류를 최소화 한다. ..

CS 2022.06.05