스터디 87

객체 지향

객체 지향 프로그래밍(OOP)에 대한 이해객체 지향 프로그래밍(OOP, Object-Oriented Programming)은 소프트웨어 설계 및 개발에서 가장 널리 사용되는 패러다임 중 하나입니다. OOP는 프로그램을 객체라는 단위로 나누어 처리하며, 각 객체는 데이터와 기능을 함께 가지고 있습니다. 이를 통해 코드의 재사용성, 확장성, 유지보수성을 높일 수 있습니다. 객체 지향 프로그래밍의 주요 개념OOP는 네 가지 주요 개념을 기반으로 합니다: 캡슐화(Encapsulation), 상속(Inheritance), 다형성(Polymorphism), 추상화(Abstraction).1. 캡슐화 (Encapsulation)캡슐화는 객체의 데이터를 보호하고, 데이터와 그 데이터를 처리하는 메서드를 하나의 단위로 ..

CS 지식 2024.08.01

HTTP 메서드 와 상태 코드

HTTP란 HyperText Transfer Protocol 의 약자로 웹에서 클라이언트와 서버 간의 데이터를 주고받기위한 프로토콜로 HTTP메서드는 이러한 통신해서 수행할 동작을 정의1. GETGET 메서드는 서버에서 데이터를 요청할 때 사용됩니다. 클라이언트가 서버에 특정 리소스를 요청하면 서버는 해당 리소스를 응답으로 반환합니다. 중요한 점은 GET 요청은 서버의 상태나 데이터를 변경하지 않는다는 것입니다. 주로 데이터를 조회하거나 리소스를 가져올 때 사용됩니다.GET 메서드는 브라우저 주소창에 URL을 입력하거나 링크를 클릭할 때 자동으로 사용됩니다. 이 메서드는 캐싱이 가능하며, 브라우저 히스토리에 남고, 즐겨찾기에도 추가될 수 있습니다. 따라서 주로 읽기 전용 요청에 적합합니다.2. POSTP..

CS 지식 2024.07.24

세션 ,토큰 , 쿠키

세션(Session)정의: 세션은 서버 측에서 사용자의 상태를 유지하기 위한 방법으로 사용자가 웹 사이트에 접속할 때 생성되어 서버에 저장되고, 사용자의 요청마다 세션 정보를 이용해 상태를 관리합니다. 동작 방식:셰션 생성: 사용자가 웹사이트에 처음 접속하면 서버는 고유한 셰션 ID를 생성하여 사용자의 브라우저에 저장합니다. 이 셰션 ID는 쿠키(cookie)를 통해 브라우저에 저장되거나 URL 매개변수로 전달됩니다.셰션 저장: 서버는 사용자의 상태 정보를 셰션 저장소에 저장합니다. 이 저장소는 메모리, 데이터베이스, 파일 시스템 등 다양한 형태로 구현될 수 있습니다.셰션 유지: 사용자가 웹사이트를 탐색하는 동안 각 요청에는 셰션 ID가 포함되어 서버로 전송됩니다. 서버는 이 ID를 사용하여 해당 사용자..

CS 지식 2024.07.15

OAuth

OAuth란  OAuth(Open Authorization): 외부 애플리케이션이 사용자 비밀번호를 노출하지 않고도 사용자 정보를 접근할 수 있도록 하는 인증 표준OAuth의 주요 목적안정성: 사용자 비밀번호를 외부 에플리케이션에 제공하지 않고 사용자 데이터에 접근할수 있도록 설정권한 분리: 애플리케이션이 특정한 데이터나 기능에 대한 접근만 허용유연성: 다양한 서비스와 쉽게 통합OAuth의 구성요소자원 소유자(Resource Owner): 보호된 자원에 대한 접근 권한을 가진 사용자로 자신의 인증 정보를 사용하여 클라이언트 애플리케이션이 자원 서버에 접근할 수 있도록 허용클라이언트(Client): 자원 소유자를 대신항 자원에 접근하는 애플리케이션으로 자원 소유자로부터 권한을 부여받아 자원서버에 접근자원 ..

CS 지식 2024.07.10

RESTful API: 개념과 구현

RESTful API란 무엇인가?RESTful API는 Representational State Transfer (REST) 아키텍처 스타일을 따르는 애플리케이션 프로그래밍 인터페이스(API)입니다. REST는 웹의 장점을 최대한 활용하여, 클라이언트와 서버 간의 상호작용을 간단하고 확장 가능하게 만들어줍니다. RESTful API는 웹의 표준 프로토콜인 HTTP를 사용하며, REST의 원칙을 준수합니다.REST의 주요 원칙클라이언트-서버 구조: 클라이언트와 서버는 서로 독립적으로 동작합니다. 클라이언트는 사용자 인터페이스를 담당하고, 서버는 데이터 저장과 처리를 담당합니다.무상태성(Stateless): 서버는 각 요청을 독립적으로 처리합니다. 즉, 서버는 클라이언트의 이전 요청을 기억하지 않습니다. 모..

CS 지식 2024.07.04

API (Application Programming Interface)

API란 무엇인가?API는 Application Programming Interface의 약자로, 소프트웨어 애플리케이션 간의 상호작용을 가능하게 하는 인터페이스를 말합니다. API는 다른 소프트웨어나 서비스의 기능을 활용하여 새로운 기능을 추가하거나, 데이터를 교환하는 데 사용됩니다. 예를 들어, 날씨 애플리케이션이 날씨 정보를 가져오기 위해 날씨 데이터 제공 서비스의 API를 호출하는 경우가 있습니다.API의 구성 요소엔드포인트(Endpoint): API에서 특정 기능이나 데이터를 접근할 수 있는 URL입니다. 예를 들어, https://api.example.com/v1/weather는 날씨 데이터를 제공하는 엔드포인트가 될 수 있습니다.HTTP 메서드: API는 일반적으로 HTTP를 통해 요청을 보..

CS 지식 2024.07.04

두 정수 사이의 합

코딩테스트 연습 - 두 정수 사이의 합 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr class Solution { public long solution(int a, int b) { long answer = 0; //a와 b대 대소관계를 나눔 if(a

정수 내림차순으로 배치하기

코딩테스트 연습 - 정수 내림차순으로 배치하기 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr // 정렬하는것을 사용하기 위해서는 java.util아래에 있는 Arrays를 임포트해야함import java.util.Arrays;class Solution { public long solution(long n) { long answer = 0; //long 타입을 String 타입으로 형변환 String k = Long.toString(n); ..

하샤드 수

코딩테스트 연습 - 하샤드 수 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr class Solution { public boolean solution(int x) { boolean answer = true; //int 를 Strinig 형변환 String k = Integer.toString(x); //String 배열로 변환 String[] arr = k.split(""); //..

정수 제곱근 판별

코딩테스트 연습 - 정수 제곱근 판별 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krclass Solution { public long solution(long n) { long answer = 0; //제곱근을 구하는 함수를 사용 //sqrt() 함수는 double타입 double k = Math.sqrt(n); //강제 형변환을 해서 둘이 같으면 정수 if(k == (int)k){ answer = ..