본문 바로가기

전공살리기/CS14

[CS 면접 기본 - 자바] 9. 인터페이스와 추상클래스의 차이가 뭘까? - 추상 클래스 : abstract로 지시자로 정의되며, 추상메소드가 하나이상 포함 (상속을 위한 것)  => 강아지와 고양이를 예로 공통점은 짖는다는 특징 :   => 차이점은 짖는 소리가 다르다.   => 짖는 소리에 대한 정의는 Dog 객체, Cat 객체 다르게 해주어야하기 때문에, 동물이라는 추상클래스를 만들고, 거기에 공통 특징은 일반메소드로 구현하고  차이점은 추상 메소드로 정의만 한 뒤, 상속 받은 자식 클래스가 구체적인 구현을 맡긴다.    - 인터페이스 : interface 지시자로 정의하며 모든 메소드가 추상메소드로 정의(보장을 위한 것) 인터페이스는 정의만 넣어두고 각 클래스는 그 기능을 구현하도록 강제한다. 다중 상속이 가능하다. interface swim, fly 등 다중으로 상속.. 2024. 10. 27.
[CS 면접 기본 - 자바] 8. 자바의 버전은 무슨 차이가 있을까? Java 8: 함수형 프로그래밍, Stream API, 새로운 날짜/시간 API, Optional 클래스 도입.Java 11: 장기 지원 버전으로 HTTP Client API, String 메서드 개선, 오래된 기능 제거.  LTS  버전 2014, 2018녀에 출시,  1) 람다 표현식을 사용함.int plus(int a) { return a = a+3; }  = (a) -> {a+3}2)  STREAM : 병열처리 지원 for문, while 문 대신STREAM() , filter를 사용하여서 반복문을 처리해서 속도가 더 빨라지게 됩니다. (병열처리라 조금 더 빠르게 처리가 된다.)  3) 인터페이스 :  3) 인터페이스 기능 의 개선 - default  매소드 정의가 가능해짐. 원래는 추상 매소드만 .. 2024. 10. 27.
[CS 면접 기본 - 웹의 시작 ] 6. REST API는 뭘까? 설계시 고려사항은? REST API는 Representational State Transfer의 약자로, 웹 서비스 아키텍처 스타일 중 하나입니다. REST는 클라이언트와 서버 간의 통신을 간단하고 일관된 방식으로 설계하기 위해 만들어졌으며, 주로 HTTP 프로토콜을 사용하여 자원(Resource)을 정의하고, 이를 전송하는 방법을 규정합니다. REST API를 통해 애플리케이션은 서버의 자원을 생성, 읽기, 업데이트, 삭제(CRUD) 작업을 수행할 수 있습니다.REST의 주요 특징REST 아키텍처 스타일의 API는 몇 가지 주요 원칙과 특징을 따릅니다.자원의 표현(Resource)REST에서는 서버의 자원(예: 사용자 정보, 게시물, 제품 등)을 URL을 통해 명확하게 식별합니다.각 자원은 고유한 URI(Uniform R.. 2024. 10. 27.
[CS 기본 - 웹의 시작 ] 5. http통신에서 동기와 비동기의 차이는 뭘까? HTTP 통신에서 **동기(Synchronous)**와 **비동기(Asynchronous)**의 차이는 요청을 보낸 후 응답을 기다리는 방식에 있습니다. 이 차이점은 클라이언트와 서버 간의 통신에서 처리 흐름과 대기 방식에 영향을 줍니다.1. 동기(Synchronous) 통신동기 통신에서는 클라이언트가 서버에 요청을 보낸 후, 서버로부터 응답을 받을 때까지 기다립니다. 이 동안 클라이언트는 다른 작업을 수행하지 않고, 응답을 받을 때까지 대기 상태가 됩니다.즉, 요청 → 응답의 순서가 보장되며, 응답이 올 때까지 클라이언트의 흐름이 멈추는 방식입니다.동기 통신의 특징단순한 흐름 제어: 요청과 응답이 차례대로 이루어져 흐름을 관리하기 쉽습니다.응답 시간에 의존적: 서버의 응답이 늦어지면, 그만큼 클라이언트.. 2024. 10. 27.
[CS 기본 - 웹의 시작 ] 4. https는 왜 쓸까? HTTPS(HTTP Secure)는 HTTP에 보안 기능을 추가한 프로토콜로, 데이터의 기밀성, 무결성, 인증을 보장합니다. 웹사이트와 사용자 간의 통신을 안전하게 보호하기 위해 HTTPS를 사용합니다. HTTPS를 사용하는 주요 이유는 다음과 같습니다:1. 데이터의 기밀성 (Confidentiality)HTTPS는 SSL/TLS(Secure Sockets Layer / Transport Layer Security) 암호화를 통해 클라이언트와 서버 간의 데이터가 암호화된 상태로 전송되도록 합니다.암호화되지 않은 HTTP에서는 네트워크에 있는 중간자(인터넷 서비스 제공자, 네트워크 관리자 등)가 전송 중인 데이터를 쉽게 도청할 수 있습니다.HTTPS를 사용하면 데이터가 암호화되어 있기 때문에 도청자가 내용.. 2024. 10. 27.
[CS 기본 - 웹의 시작 ] 3. TCP에 대해서 알려줘봐 TCP(Transmission Control Protocol)**는 인터넷에서 데이터를 안정적이고 신뢰성 있게 전송하기 위한 프로토콜입니다. TCP는 애플리케이션 계층과 인터넷 계층 사이에서 작동하며, 네트워크 통신을 위한 연결 지향형 프로토콜로 데이터를 syn, syn+ack, ack 처럼 패킷 단위로 나누어 전송합니다. TCP의 주요 특징(위에 내용에서 이거 까지 말하기연결 지향형 프로토콜: 데이터 전송 전에 송신자와 수신자가 서로 연결을 설정합니다. 이 연결을 통해 안정적인 데이터 전송이 가능해집니다.신뢰성 보장: 데이터가 손실되거나 손상된 경우, TCP는 해당 데이터를 재전송하여 신뢰성을 보장합니다. 이를 위해 오류 검출 및 데이터 순서 복구 기능을 제공합니다.흐름 제어 및 혼잡 제어: 송신자가 .. 2024. 10. 27.