전체 글 (5) 썸네일형 리스트형 서버 이론 뿌시기 - HTTP API 지금까지 웹 통신, URI와 웹 통신의 흐름, HTTP에 관한 게시물을 작성했다. 이제 HTTP API를 한번 만들어 볼까 한다. HTTP API란??그래 HTTP는 인터넷 통신에서 사용하는 통신 규약이라는거 까지는 알았다.그런데 API는 무엇일까? 영어를 하나하나 뜯어보면Application Programming Interface이다. 우선 Interface란 서로 다른 두 시스템간 정보를 주고받는 경계면을 말한다. 이렇게만 말하면 어려울 것 같아서한가지 예시를 들어보겠다. 식당이 하나 있다고 하자. 식당에 요리사와 손님만 있다면 어떨까?? 손님은 요리를 주문하고 요리사는 요리를 만들어야 하는데 둘 사이를 이어줄 점원이 필요하게 된다. 이 점원이 정보 소통의 경계이자 다리인 역할을 하게되는 셈이다. 즉.. 서버 이론 뿌시기 - URI와 웹브라우저 요청 흐름 자 바로 전 게시글에서 웹 통신에 관해 공부해봤다. 다음은 URI다. 응?? URI??URL은 아는데 URI는 또 뭐야?? 별차이 없다. 그냥 URL의 큰 범위라고 생각하면 된다. URI(Uniform Resource Indentifier)란?즉 통합 자원 식별자라는 의미로 인터넷에서 우리가 원하는 자원을 찾기 위한 식별자를 의미한다. URI는 URL과 URN으로 이루어졌고 여기서 URL이 나오게 된거다.URL은 다 잘 알듯이 리소스의 위치를 말한다.URN은 리소스의 이름을 부여한 것이다.URN으로 리소스를 찾는 방법이 보편화 되지 않아서그냥 URI를 URL로 혼용해서 쓰겠다. https://www.google.com/search?q=hello&hl=ko 위와 같은 URL은 많이 봤을거다.근데 정확하게 .. 서버 이론 뿌시기 - 웹 통신이란? 최근에 서버(스프링 부트) 공부를 시작했는데블로그로 작성하면 더 기억에 남을 것 같아서 한번 써볼까 한다. 웹 공부를 하면서 가장 많이 들었던 의문점이 있었다.웹은 어떤 방식으로 서버와 소통하고 유지되는가? 이런 의문점을 해결하기 위해서는 먼저 웹 통신에 관해 알아야 한다. 웹 통신이란?웹 생태계는 크게 보면 클라이언트와 서버 이렇게 2가지로 나뉠 수 있다. 여기에서 클라이언트는 정보를 요청하는 사람서버는 정보를 보내주는 사람이라고 생각하면 된다. 단순하게 생각하면 이렇듯 쉽게 보이지만사실은 클라이언트와 서버 사이에는 무수히 많은 웹 생태계가 존재한다. 이러한 웹 생태계를 지금부터 한번 파해쳐 보자. 정보 전달은 택배를 보내는 것과 동일하게 생각할 수 있다. 택배에 가장 먼저 필요한 것에는 무엇이 있을까.. Java를 활용한 최단 경로 탐색 구현(DFS, BFS, DIJKSTRA) - 이산 수학 팀 프로젝트(2) 전 글에서 말했듯 다음으로 다익스트라 알고리즘을 코드로 구현해보도록 하겠다. 다음은 다익스트라 알고리즘의 그래프가 될 가중치가 존재하는 그래프이다. 이 그래프 역시 인접행렬로 구현하기 위해 파일 데이터에 저장해주도록 하겠다. 가중치 그래프 역시 파일에서 하나씩 읽어와서 인접행로 구현하는 코드가 필요했고 코드는 다음과 같다. private static void makeList2(String filename) { int count = 1; try (Scanner file = new Scanner(new File(filename))) { while (file.hasNextLine()) { String graphlength = file.nextLine(); Integer matrixlen = Integer.pa.. Java를 활용한 최단 경로 탐색 구현(DFS, BFS, DIJKSTRA) - 이산 수학 팀 프로젝트(1) 최단 경로 탐색 방법에는 여러가지가 있다. 그 중 dfs (깊이 우선 탐색), bfs (너비 우선 탐색), dijkstra(다익스트라) 방식을 java를 활용해 코드로 작성해 볼려고 한다. 먼저 데이터를 파일로부터 읽어 올 수 있도록 파일 데이터를 작성해주었다. dfs와 bfs를 할때의 그래프는 가중치(weight)가 존재하지 않고 각각의 그래프가 연결되어 있는 형태로만 존재한다. 다음은 그래프를 파일 데이터 형태로 만들어 준 것이다. 그래프의 총 길이는 8이기 때문에 최 상단부에는 8이라는 데이터가 들어간다. 이후 1번 노드와 연결 되어 있는 값, 2번 노드, 3번 노드... 이렇게 총 8번 노드가 이어져있는 모습까지 구현해 주었다. 다음으로는 이 파일을 코드로 읽어 와서 인접 행렬(adjmatrix).. 이전 1 다음