[면접스터디] 2주차 10/6 목

Hyeseong Kim·2022년 10월 19일
0

스터디

목록 보기
2/8

SPA의 개념에 대해 설명해보세요

ORM에 대해 설명해보세요

  • Object Relational Mapper의 약자로 객체와 RDB의 테이블을 매핑시켜줘서 객체에게 영속성을 부여하는 영속성 프레임워크입니다.

  • 자바 진영에서는 Java Persistence API와 그 구현체로 Hibernate가 대표적입니다.

  • 개발자가 직접 반복적인 SQL을 작성할 필요 없이 간단한 어노테이션 몇 개만으로 매핑이 가능하고 따라서 비즈니스 로직에 집중할 수 있습니다.

  • 단점으로는 학습 난이도가 어렵다는 점과, 복잡한 성능 튜닝이 필요할 때에는 결국에 SQL을 작성해야 한다는 점이 있습니다.

java의 특징

  • 객체 지향 언어 : 하나의 기능을 객체로 만들어 객체들을 결합하여 하나의 프로그램을 만드는 것
  • 컴파일 언어인 동시에 인터프리터 언어이다. 자바는 텍스트 소스를 컴파일하여 클래스파일로 만든 다음 → 자바 런타임이 클래스 파일을 인터프리트하면서 실행된다
  • JVM에 의해 실행되기 때문에 독립적인 플랫폼이라고 할 수 있다. 그렇기 때문에 어떠한 운영체제라도 독립적으로 JAVA를 사용할 수 있습니다.
  • 자동 메모리 관리 : 개발자가 직접 메모리에 접근할 수 없으며 자바가 직접 관리합니다. C와 달리 자바는 메모리 영역을 찾아 할당하거나 사용없는 객체를 제거해주는 것과 같은 메모리 관리 작업을 자동으로 해주기 때문에 개발자는 신경쓰지 않아도 된다.
  • 멀티 쓰레딩을 지원한다: 하나의 프로그램 단위가 동일한 쓰레드를 동시에 수행할 수 있다.

mvc패턴 vs. mvvm 패턴

  • MVC패턴이란 애플리케이션의 구조를 Model, View, Controller로 나누어 설계하는 방법을 말합니다. Model은 데이터를 처리하는 영역이며, View는 사용자에게 보여질 화면을 처리하는 영역이고, Controller는 사용자의 요청을 어떻게 처리할지를 결정하는 영역을 말합니다.
    • 장점 : 단순하다
    • 단점 : ViewModel 사이의 의존성이 높아 어플리케이션이 커질수록 복잡해지고 유지보수가 어려워진다.
  • MVVM패턴이란 Model + View + View Model을 합친 용어입니다. View ModelView를 위한 Model입니다. Command패턴Data Binding을 이용하여 ViewView Model 사이의 의존성을 없앴습니다.
    • 장점 : ViewModel 사이의 의존성이 없다. 각 부분이 독립적이어서 모듈화하여 개발할 수 있다.
    • 단점 : View Model의 설계가 쉽지 않다.
  • MVP패턴Model, View, Presenter로 구성됩니다. PresenterView에서 요청한 정보로 Model을 가공하여 View에게 전달해줍니다.
    • 장점 : ViewModel 사이의 의존성이 없다.
    • 단점 : ViewPresenter 사이의 의존성은 높아진다.

0개의 댓글