분류 전체보기 (35) 썸네일형 리스트형 HTTP 웹 기본 지식 - 1 토이 프로젝트 제작과 더불어 인터넷 통신의 이론적인 부분을 학습하고간단한 예제로 감을 잡고 가면 내 작업도 훨씬 수월할 거 같다고 생각하여 이번 강의를 수강하고 정리하였다. 인터넷 네트워크IP(인터넷 프로토콜)지정한 IP 주소에 데이터를 전달한다.특정 패킷이라는 것을 가지고 전달한다, 일종의 형식이라고 생각하자IP패킷: 출발지 IP, 도착지 IP,,,전달클라이언트 -> 서버서버 -> 클라이언트한계비연결성만약 받는 사람 인터넷이 꺼져있다면?비신뢰성패킷이 전달 도중에 사라진다면?패킷의 전달 순서가 달라진다면?프로그램 구분같은 컴퓨터에서 게임도 하고 음악도 듣고 하는데 어떻게 구분하지?TCP (Transmission Control Protocol)IP에 TCP를 덧붙여서 IP 패킷을 전송한다고 보면 된다.TC.. Do it! 알고리즘 입문 자바 - Week 7 이번에는 문자열 알고리즘에 대해 학습할 예정이다.다양한 기법에 대해 알아보자 브루트 - 포스법문자열 검색의 기초 문자열 검색: 어떤 문자열 안에 다른 문자열이 들어 있는지 조사하고 들어 있다면 그 위치를 찾아내는 것이다. ex) STRING , KING 에서 IN을 검색하면 문자열 검색에 성공한다. QUEEN 에서 IN을 검색하면 문자열 검색에 실패한다. 검색할 문자열을 패턴이라 하고 문자열 원본을 텍스트라고 하자! ABABCDRFGHA 에서 패턴 ABC를 찾아보자'패턴'이 텍스트의 첫 문자와 겹치도록 두 줄로 놓고 1번째 문자부터순서대로 일치하는지 검사한다.문자가 일치하면 계속해서 패턴과 텍스트의 문자를 검사한다.그러다가 다른 문자가 나타나면 검사를 중단한다.검사할 텍스트의 위치를 1칸 뒤로.. Do it! 알고리즘 입문 자바 - Week 6 이번에는 집합 알고리즘에 대해 학습할 예정이다. 집합명확한 조건을 만족하는 자료의 모임이다.이번에는 집합을 다양한 메서드로 구현하는 것에 대해 살펴본다 집합범위를 규정한 '어떤 것'의 모임 ------ 요소 개수가 1개여도 집합이고, 요소가 없는 집합(공집합)도 집합이다!어떤 것: 요소특징집합에 포함되는 요소는 서로 달라야 한다. == 중복이 없어야 한다.집합은 집합을 요소로 가질 수 없다.집합의 요소에는 순서가 없다.집합이 같다 == 같은 요소로 구성된다.부분집합 / 진부분집합다른 집합에 포함된 집합A = {1, 3} , B = {1, 3, 5} 와 같이 집합 A의 모든 요소가 B의 요소이면 A는 B의 부분집합이다.'A는 B에 포함된다.'A = {1, 3, 5} 일 때처럼 A와 B가 서로 같은 경우 .. Do it! 알고리즘 입문 자바 - Week 5 이번 시간에는 정렬 알고리즘에 대해 학습할 예정이다.정렬 알고리즘은 양이 방대해서 정렬 종류에 대해 집중적으로 실습할 예정이다. 정렬이름, 학번, 키 등 Key의 대소 관게에 따라 데이터 집합을 일정한 순서로 줄지어 늘어서도록 바꾸는 작업을 말한다. 키 값이 작은 데이터부터 앞 쪽에 두면 오름차순키 값이 큰 데이터부터 앞 쪽에 두면 내림차순 안정된 정렬같은 키 값을 가진 요소의 순서가 정렬 전 후에도 유지되는 것을 말한다.내부정렬정렬할 모든 데이터를 하나의 배열에 저장할 수 있는 경우에 사용하는 알고리즘외부정렬정렬할 데이터가 너무 많아서 하나의 배열에 저장할 수 없는 경우에 사용하는 알고리즘 이번 시간은 모두 내부 정렬을 다룬다. 정렬 알고리즘1. 교환 2. 선택 3. 삽입이 세 요소를 응용한 것이 정렬.. 스프링 핵심 원리 - 기본편(2) 이번에는 스프링의 기능들에 대해 중점적으로 학습할 예정이다. 컴포넌트 스캔@ComponentScan을 붙여줘야 한다(@Configuration도 컴포넌트 스캔이 되기 때문에 이번 예제에서는 AppConfig를 제외시키는 코드를 작성했다.) @Component 에노테이션이 붙은 클래스를 스캔해서 스프링 빈으로 등록한다. @Component만 붙였을 때 의존관계를 주입할 방법이 사라지는데, 따라서 자동 의존 관계 주입이 필요하다.@Configuration@ComponentScan( excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class))public class AutoApp.. 스프링 핵심 원리 - 기본편(1) 이제는 스프링에 대해 더 자세히 학습한다. 스프링이 무엇인가부터 좋은 객체지향 개발까지 다룰 예정이고전반적인 원리에 대해서 학습할 예정이다. 스프링 == 스프링 DI 컨테이너 기술 / 스프링 프레임워크 / 스프링 생태계 이런 식으로 사용된다.스프링 프레임워크: 가장 중요! 제일 핵심이다.핵심 기술: 스프링 DI 컨테이너, AOP, 이벤트 등스프링 부트 스프링을 편리하게 사용할 수 있도록 지원스프링 부트스프링을 편리하게 사용할 수 있도록 지원설정 용이, 웹 서버 내장스프링 세션, 스프링 데이터, 스프링 클라우드,,, 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크 좋은 객체 지향 = 역할과 구현을 분리클라이언트에 영향을 주지 않고 새로운 기능을 제공할 수 있다.유연하고 변경에 용이내부 구.. Do it! 알고리즘 입문 자바 - Week 4 이번 주는 재귀 알고리즘에 대해 학습하고 대표 문제들에 대한 풀이를 할 예정이다.지금까지는 구현이나 간단한 연습 문제였다면 이번 시간에는 대표 문제들이 나오기 때문에코딩테스트 준비에도 유용한 시간이 될 것 같다.특히 재귀는 정렬과 이진 검색 트리에서도 자주 활용된다. 재귀: 어떤 사건이 자기 자신을 포함하고 다시 자기 자신을 사용하여 정의될 때 재귀적(recursive)이라고 한다. 팩토리얼 구하기0! = 1n > 0 이면 n! = n x (n-1)! / (n-1)! = (n-1) x (n-2)! / ,,,,,우변에 있는 식으로 반복적으로 활용하여 구현할 수 있다.import java.util.Scanner;class WeekFour { static int factorial(in.. Do it! 알고리즘 입문 자바 - Week3 이번에는 스택과 큐에 대해 학습할 예정이다.2학년 때 이미 배웠던 주제라 큰 어려움은 없겠지만, 저번에 소개했던 제네릭 기법으로 코드를 작성해보는 것이 주된 목표이다. 스택: 데이터를 일시적으로 저장하기 위한 자료구조 (LIFO - Last In First Out) 후입선출의 특징을 가진다.push 스택에 넣는 작업 / pop 스택에서 꺼내는 작업top 푸시와 팝을 하는 곳 (꼭대기) / bottom 가장 아랫부분보통 프로그램이 실행될 때 메서드의 호출과 실행은 스택을 이용한다.시스템 프로그래밍 교과목에서도 프로시져에 관련한 것은 스택을 이용했던 부분이 있다.void x(){...}void y(){...}void z(){ x(); y();}int main(){ z();} 이런 메서드.. 이전 1 2 3 4 5 다음