ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • CS 기반 지식을 공부하자.
    etc 2018. 9. 28. 21:02

    CS 기반지식 공부하기 / 면접때 받았던 질문 모아두기. 

    >JAVA 

    • OOP : 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 객체들 간의 유기적인 상호 작용을 통해 로직을 구성하는 프로그램. 
    • 클래스 : 추상화를 거쳐 집단에 속하는 속성 & 행위를 변수와 메서드로 정의한 것 
    • 인스턴스 (객체) : 클래스에서 정의한 것을 토대로 실제 메모리상에 할당된 것 
    •  Call by value ( 값에 의한 호출) 


    > OOP의 특성.

    • 추상화 : 공통의 속성이나 기능을 묶어 이름을 붙이는 것. 
    • 캡슐화 : 코드를 재수정 없이 재활용 하는것. 
    • 상속 : 부모 클래스의 속성과 기능을 자식 클래스가 원하는 기능만 수정하여 사용하는것. 
    • 다형성 : 하나의 변수명, 함수명 등이 상황에 따라 다른 의미로 해석 하는것 
      •  오버라이딩, 오버로딩이 해당 
        •  오버라이딩 : 부모클래스에 메서드와 같은 이름, 매개변수를 재정의 하는것. 
        • 오버로딩 : 같은 이름의 함수를 여러개 정의 매개변수의 타입과 개수를 다르게 하여 매개변수에 따라 다르게 호출할 수 있게 하는 것 . 


    >객체 지향적 설게 원칙 

    1. SRP : 단일 책임 원칙
      - 클래스는 단 하나의 책임을 가져야 하며 클래스를 변경하는 이유는 단 하나의 이유여야 한다. 
    2. OCP : 계방 폐쇄 원칙
      - 확장에는 열려 있여야 하고 변경에는 닫혀 있어야 한다.
    3. LSP : 리스코프 치환 원칙
      - 상위 타입의 객체를 하위 타입의 객체로 치환해도 상위 타입을 사용하는 프로그램은 정상적으로 동작. 
    4.  ISP :
    5. 분리 원칙
      - 인터페이스는 그 인터페이스를 사용하는 클라이언트를 기준으로 분리 해아 한다. 
    6. DIP : 의존 역전 원칙
      - 고수준 모듈은 저수준 모듈의 구현에 의존해서는 안도니다. 


    > Restrful API 

    • Restful : 기본원칙을 성실히 지킨 서비스 디자인. 
    • API 설계의 중심에 자원이 있고 HTTP Method를 통해 처리하도록 설계 
    • REST 6 가지 원칙 
    1. Uniform interface
    2. Stateless
    3. Caching
    4. Client-Server
    5. Hierachical system
    6. Code on demand 
    •  Restful하게 API를 디자인 한다는 것은? 
      • 리소스와 행위를 명시적이고 직관적이게 분리한다. 
      • 리소스는 URL로 표현 되는데 리소스가 가리키는 것은 명사로 표현 되어야 한다. 

      • 행위는 HTTP METHOD로 표현한다. 
        • GET(조회) ,
        •  POST(생성),
        •  PUT(기존 Entity 전체 수정) ,
        • Patch(기존 entity 일부 수정) 
        • DELETE(삭제) 






    LIST

    댓글

Designed by Tistory.