분류 전체보기

범위에 따른 네트워크 분류네트워크를 형성했다고 가정했을 때, 네트워크의 범위는 일반 가정이 될 수도 있고, 기업이 될 수도 있다. 네트워크 구성 범위는 다양하다. 네트워크의 구성 범위가 다양한 만큼, 범위에 따라 분류하는 기준이 존재한다. 그것을 크게 LAN, WAN으로 분류한다.  LANLAN은 Local Area Network의 약자로 이름 그대로 가까운 지역을 연결한 근거리 통신망이다. 예를 들어 가정, 기업, 학교처럼 한정된 공간에서의 네트워크를 의미한다. 그림을 보고 이해해보면 LAN이라는 묶음들은 모두 한정된 공간에 구성된 네트워크이며, 세 집합 모두 LAN이라고 볼 수 있다. 좁은 범위를 케어하므로 앞으로 나올 넓은 범위를 케어하는 다른 네트워크 분류보다 안정성이 높고, 속도상 이점이 있다...
네트워크 네트워크란 여러 장치가 서로 연결되어 정보를 주고받을 수 있는 통신망이다.  네트워크의 네트워크, 인터넷 네트워크란 여러 장치가 서로 연결되어 정보를 주고받는 것이라는 의미가 주변의 장치하고만 연결됨을 의미한다는 것이 아니다.  네트워크와 연결된 지구 반대편 장치와도 연결이 가능하다. 이를 가능하게 하는 기술이 바로 인터넷이다.인터넷은 여러 네트워크를 연결하는 '네트워크의 네트워크'이다. 네트워크의 기본 구조네트워크는 서로를 연결하는 통신망이다. 이 모양을 생각해 보면 그래프 형태를 띠어 있음을 알 수 있다.  그래프(graph)는 다음 그림과 같이 노드(node)와 노드를 연결하는 간선(edge)으로 이루어진 자료구조이다. 모든 네트워크는 '노드', 노드를 연결하는 '간선', 노드 간 주고받는..
·Language/Java
람다가 등장한 배경람다 표현식이 등장한 배경은 자바 8의 주요 개선 사항 중 하나이다. 이전 자바에서는 코드를 간결하게 표현하기 위해선 익명 클래스를 활용하였다. 익명클래스는 인터페이스나 추상 클래스의 구현을 정의하는 데에는 유용했지만, 코드가 복잡해지고 가독성이 떨어지는 문제가 발생되었다. 자바 8에서는 이러한 문제를 해결하기 위해 람다 표현식을 도입하였다. 람다 표현식은 익명 함수를 정의하는 간결한 방법으로, 함수형 프로그래밍 스타일을 지원하고 코드를 더 간결하게 만들어준다. 람다 표현식은 자바 컬렉션과 스트림 API와 밀접하게 관련되어 있으며, 컬렉션을 데이터를 저장하고 조작하는 데 사용되는 자바의 핵심 요소 중 하나이다. 자바 8에서는 이 컬렉션을 효과적으로 다루기 위해 스트림 API 도입하였고,..
1주차(Day1 ~ Day3) 학습 내용 요약이번주차는 여행일정이 있어 계획한 5일치는 끝내지 못했다. Day1은 강의를 듣기 위한 기본 세팅과 기본적인 네트워크 지식에 대해 배우게된다. 본격적으로 코드를 만지기전 사전 작업이다. 그래서 코드만 만지면 모를 수 있는 기반 지식을 쉽게 설명해주고 있다. 키워드로 정리하고 블로그에 남길 내용은 링크 남기도록 하자. 라이브러리, 프레임워크의 개념과 차이인터넷의 역할 , 인터넷의 규약인 HTTP 요청 분석 , 데이터를 보내는 대표적인 두가지 방법(쿼리와 바디)URLHTTP 응답과 상태코드 Day2는 기반 지식을 통해 HTTP API를 개발해본다. GET, POST 등 기본 API를 개발한다. API를 개발전 사전 정의해야될 내용들 - API 명세 (Spec)GE..
Get API, Post API 만들어보기 문제 1문제 1 답안 Controller@GetMapping("/api/v1/calc")public CalcResponse calc(@RequestParam int num1, @RequestParam int num2) { return new CalcResponse(num1, num2);}ResponseDTO@Getterpublic class CalcResponse { private int add; private int minus; private int multiply; public CalcResponse(int num1, int num2) { this.add = num1 + num2; this.minus = n..
스프링부트 프로젝트를 주로 사용하는데 의존성이라는 표현을 자주 사용하게 된다. 의존성을 설명할 때 주로 프레임워크나 라이브러리를 같은 프로젝트 개발에 있어 특정 기능을 구현하기 위한 예시로 많이 사용이 된다. 간단히, 이야기하면 의존성이란 프로젝트에서 사용하는 라이브러리와 프레임워크를 의미하게 된다.위 이미지는 스프링부트 프로젝트를 만드는 것을 도와주는 https://start.spring.io/ 페이지이다.  여기서 스프링부트라는 프레임워크에 라이브러리 Dependencies를 추가하여 사용하게 된다.  그럼 라이브러리와 프레임워크에 차이는 무엇이 일까? 라이브러리우선 라이브러리가 무엇인지 알아보자. 라이브러리는 프로그래밍 개발할 때 미리 만들어진 있는 기능을 가져다 사용하는 것을 의미한다. 재사용 가..
·Language/Java
어노테이션의 역할스프링 같은 프레임워크를 사용하면 아무래도 어노테이션의 역할은 더 광범히 해진다. 그럼 일단 Java 코드로 돌아와 어노테이션의 역할을 먼저 확인해 보자.우선, 어노테이션은 기본적으로 아래 세 가지 기능을 제공한다.컴파일러에서 코드 작성 문법 에러를 체크빌드도구에서의 사용 (코드 생성)실행 시(런타임 시) 특정 기능을 실행이것에 대한 예시로 @Override 어노테이션을 확인해 보자.  @Override 어노테이션은 직관적으로 자바의 오버라이딩을 표현해 주는 것을 알 수가 있다. 자바에 대한 오버라이딩을 배우면 알 수 있듯이 저 어노테이션이 없다고 하더라도 해당 기능을 쓰는 데는 문제가 발생하지 않는다. class Parent { public void hello(String name..
·Framework/JPA
양뱡향 매핑 시 가장 많이 하는 실수 양방향 관계에서 가능 많이 하는 실수는 연관관계의 주인 값을 입력하지 않고 진행하는 것이다.Team team = new Team();team.setName("TeamA");em.persist(team);Member member = new Member();member.setName("member1");// 역방향(주인이 안니 방향)만 연관관계 설정 team.getMembers().add(member);em.pesist(member);이런 경우 연관관계의 주인인 member의 team값은 null이 저장이 된다. 양방향의 주인은 외래키를 관리자 역할을 하므로 Member.team 값을 입력해 주어야 정상적으로 값이 매핑이 되게 된다.  순수한 객체를 고려그렇다면 연관관계..
JH_DEV77
'분류 전체보기' 카테고리의 글 목록 (2 Page)