본문 바로가기

전체 글

(898)
[이것이 백엔드 개발이다] ch 6. 백엔드 개발에 필요한 최소한의 HTML 1. 웹 브라우저와 서버의 상호작용 1) 웹 브라우저가 서버와 상호작용하는 방법 ○ URL을 통한 접속 - 사용자는 주로 웹 브라우저에서 직접 URL을 입력하여 웹 페이지를 방문하거나 a 태그가 걸려 있는 링크를 통해 접근 - URL을 통한 접속 요청은 GET ○ form 태그를 사용하여 form 제출 - form 태그는 'GET'과 'POST'라는 방식을 모두 사용할 수 있으며, 주로 'POST'를 사용 ○ XHR을 사용한 AJAX 요청 - 특정 유튜브 채널의 동영상 첫 목록에는 해당 채널의 영상 중 일부가 표시 - 이 상태에서 스크롤을 아래로 내리면 로딩이 되면서 다음 동영상들이 목록에 추가 - 화면을 새로고침하지 않으면서 서버에 다음 동영상 목록에 대한 정보를 요청하..
[이것이 백엔드 개발이다] ch 5. API 호출 클라이언트 페이지 만들기 1. 스프링 부트 애플리케이션 실행하기 1) 스프링 프레임워크와 스프링 부트 - 객체지향 프로그래밍 관련 지식 필요 ○ 의존성 주입(DI, Dependency Injection) ○ 제어의 역전(IOC, Inversion Of Control) ○ 관점지향 프로그래밍(AOP, Aspect-Oriented Programming) - 스프링 프레임워크는 별도의 WAS를 서버에 설치해야 배포할 수 있는 반면, 스프링 부트는 WAS를 내장하고 있어 쉽게 배포 가능 2) 스프링 이니셜라이저 - 스프링 부트 애플리케이션을 만들기 위해서는 먼저 스프링 부트 프로젝트를 생성해야 함 - 프로젝트란 통합개발환경에서 애플리케이션을 다루는 단위 - 일반적으로 하나의 프로젝트에 하나의 애플리케이션이 포함되며..
[이것이 백엔드 개발이다] ch 4. 서버와 클라이언트 1. 서버와 클라이언트의 개념 1) 네트워크에서의 서버와 클라이언트 - 서비스를 제공하는 쪽이 서버(server), 서비스를 제공받는 쪽이 클라이언트(client) - 물리적인 장치 간에 서로 통신이 이루어지기 위해서는 통신을 시작하는 쪽이 상대방의 네트워크 주소인 IP 주소를 알고 있어야 함 ○ 로드 밸런싱 - 서버에 가해지는 부하(Load)를 분산하는 것 - 사용자들의 트래픽을 여러 서버가 나눠 받도록 구성하며, 네트워크 장비인 스위치(Switch)를 할당해 로드 밸런싱 ○ 캐시 - 비용이 큰 작업의 결과를 어딘가에 저장하여 비용이 작은 작업으로 동일한 효과를 내는 것 2) 애플리케이션에서의 서버와 클라이언트 - 네트워크로 연결된 두 장치에서는 각자의 역할에 따라 실제 유의미한 트래픽을 주고..
[이것이 백엔드 개발이다] ch 3. 실무에 가장 많이 쓰이는 자바 문법 1. 다형성 : 상속과 인터페이스 - 하나의 객체가 내부적으로 여러 타입을 가질 수 있고, 어떤 타입이 들어 있느냐에 따라 각기 다른 동작을 하는 성질 public interface Car{}public class Sonata implements Car {}public class K5 implements Car {}public class Main { public static void main(String[] args) { Car car1 = new Sonata(); Car car2 = new K5(); }}- 자동차 (Car)라는 인터페이스를 정의 - 자동차 인터페이스를 구현하는 Sonata라는 클래스, K5 클래스 정의 - 인터페이스인 Car 타입의 참조 변수에 자동차 인터페이스의 구현체인 ..
[PCCP 대비] ch 4. 문자열(2) 2. 문자열 다루어 보기  1) 문자열 응용하기  String 클래스에서 많이 사용되는 메서드 메서드반환형내용equals(String other)boolean문자열이 other와 같은 문자열을 담고 있는지 반환length()int문자열 길이를 반환substring(int beginIndex, int endIndex)String문자열의 beginIndex부터 endIndex까지 잘라서 반환toUpperCase()String모든 알파벳이 대문자로 반환된 문자열을 반환toLowerCase()String모든 알파벳이 소문자로 반환된 문자열   문제 8) 문자열 압축  코딩테스트 연습 - 문자열 압축 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개..
[PCCP 대비] ch 4. 문자열 (1) 1. 문자열이란?  1) 문자열의 특징  문자의 배열  - 자바에서 String 클래스로 표현되는 문자열은 내부적으로 배열을 이용해서 표현한다. 이 문자열 내 문자를 가져오는 방법은 두가지 이다.  String.charAt(int index)주어진 인덱스에 있는 문자를 char 형식으로 반환String.toCharArray() 모든 문자가 들어 있는 char[ ] 형식의 데이터를 반환  아스키 코드  - 문자는 내부적으로 정수로 취급되고 연산된다. - 아스키코드는 기본적인 128개의 문자가 가지는 정수코드이다. - 숫자를 표현하는 문자에서 '0'의 아스키 코드를 빼면 문자가 표현하는 정수 값이 나온다.  char digit = '9';int digitToInt = digit -'0'; - 내장 라이브러리..
[PCCP 대비] ch 3 배열 (2) 문제 3) 거리두기 확인하기  코딩테스트 연습 - 거리두기 확인하기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  ● 문제 풀이  - 단순히 상하좌우를 확인하는 것이 아니라 맨해튼 거리가 2인 모든 위치를 확인해야 한다. - 맨해튼 거리 2 내에 파티션이 사이에 있지 않은 다른 응시자가 있는지 검사해야 한다.- 주목할 점은 맨해튼 거리 2에 도달하려면 먼저 맨해튼 거리 1(상하좌우)을 거쳐야 한다는 것이다.  - 맨해튼 거리 2인 위치에 도달하려면 맨해튼 거리 1인 위치를 거쳐야 하고, 맨해튼 거리 1의 위치들이 파티션으로 막혀 있다면 맨해튼 거리 2에는 다른 응시자가 있어도 파..
[PCCP 대비] ch 3. 배열 (1) 1. 2차원 배열 다루기  1) 2차원 배열 응용  문제 1) 교점에 별 만들기  코딩테스트 연습 - 교점에 별 만들기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  ● 문제 풀이  문제 풀이 흐름 1. 모든 직선 쌍에 대해 반복    A. 교점 좌표 구하기     B. 정수 좌표만 저장  2. 저장된 정수들에 대해 x,y 좌표의 최댓값, 최솟값 구하기  3. 구한 최댓값, 최솟값을 이용하여 2차원 배열의 크기 결정 4. 2차원 배열에 별 표시 5. 문자열 배열로 변환 후 반환  코드 작성  - 좌표를 나타내는 클래스- 데이터를 나타내는 클래스이므로 final 키워드를 사용하여 ..