AI교육과정 - Spring.1

단비·2022년 12월 5일
0

AI교육과정

목록 보기
40/69
  • 무료버전을 이용한 Spring 프로젝트 생성 (2.7.6 / 11) https://start.spring.io/
    1. build.gradle 선택

    2. ADD DEPENDENCIES... - Spring Web 추가


  • EJB(Enterprise Java Beans)
    • 동시 접속자 수가 10,000명 이상 사이트 구축 시 고려하는 컴퍼넌트 기술
    • 속도는 느리지만 많은 이용자 수를 감당할 수 있음
    • 안정적인 트랜잭션이 필요한 사이트 구축 시 사용
    • ZEUS, Weblogic
  • Spring
    • 크기와 부하 측면에서 경량급 프레임워크
    • EJB 대체
    • 현재 표준 기술
    • EJB가 없어도 충분히 확장 가능한 웹애플리케이션을 개발할 수 있음을 보여주는 예제 코드가 등장(로드 존슨)
    • 유겐휠러(with 얀카로프)의 주도로 오픈 소스 프로젝트인 스프링 프로젝트가 시작
      1. 2003년 스프링 프레임워크 1.0 출시(xml 기반의 설정)
      2. 2006년 스프링 프레임워크 2.0 출시
      3. 2009년 스프링 프레임워크 3.0 출시(자바 코드로 설정)
      4. 2013년 스프링 프레임워크 4.0 출시(자바 8)
      5. 2014년 스프링 부트 1.0 출시
      6. 2017년 스프링 프레임워크 5.0, 스프링 부트 2.0 출시
  • 스프링 생태계
    • 스프링 프레임워크 + 스프링 부트 : 필수 설치 ↓ 스프링 데이터, 스프링 세션, 스프링 시큐리티, 스프링 Rest Docs, 스프링 배치, 스프링 클라우드 : 추가 설치
  • Spring Boot(스프링 부트)
    • 스프링을 편리하게 사용할 수 있도록 지원(최근에는 기본으로 사용)

    • 단독으로 실행할 수 있는 스프링 애플리케이션을 쉽게 생성

    • Tomcat 같은 웹서버를 내장하기 때문에 별도의 웹 서버를 설치하지 않아도 됨

    • 스프링과 3rd party(외부) 라이브러리 자동 구성

      😁 스프링의 핵심 개념

    • 자바언어 기반의 프레임워크 → 자바는 객체지향 언어 → 스프링은 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크


객체 지향 특징 🤨

  1. 추상화
    • 클래스를 정의, 중요한 부분의 특징점을 잡아 추상화하는 과정
  2. 캡슐화
    • 객체의 속성을 보호하기 위해 사용. 각 메소드를 서로 관련있게 생성
  3. 상속
    • 하위로 내려갈수록 객체를 구체화 시킴
  4. 다형성
    • 하나의 객체가 여러개의 형태로 변환. 오버라이딩을 통해 구현
    • 역할과 구현을 분리
       클라이언트                                     API                                        서버
      (사용자 리스트) <————————————————————> MySQL → ORACLE

  • 객체 지향 프로그래밍의 좋은 형태
    • 유연하고 변경이 용이
  • 좋은 객체 지향 설계의 5가지 원칙 (로버트 마틴이 정리한 좋은 객체 지향 설계의 5가지 원칙)
    1. SRP: 단일 책임 원칙
    2. OCP: 개방-폐쇄 원칙
    3. LSP: 리스코프 치환 원칙
    4. ISP: 인터페이스 분리 원칙
    5. DIP: 의존관계 역전 원칙
profile
tistory로 이전! https://sweet-rain-kim.tistory.com/

0개의 댓글