본문 바로가기

분류 전체보기133

[Spring 공부/스프링의 정석] 관심사의 분리와 MVC 패턴 1. 관심사의 분리 1) 관심사란 컴퓨터 과학에서 관심사(concern)는 컴퓨터 프로그램의 코드에 영향을 미치는 특정한 정보 집합이다. 관심사는 데이터베이스 상호작용의 세세한 부분처럼 포괄적이거나, 기초적인 계산을 수행하는 등의 구체적인 경우일 수 있으며 이는 개발자, 그리고 논의되는 프로그램 간의 소통 수준에 따라 달라진다. 관심사(컴퓨터 과학), 위키백과 https://ko.wikipedia.org/wiki/%EA%B4%80%EC%8B%AC%EC%82%AC_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99) 2) 관심사를 분리해야 하는 이유 관심사의 분리는 하나의 관심사가 하나의 기능만 수행하도록 코드를 구성하는 것을 말한다. 한 객체(모듈, 클래스) 안에서 다양.. 2022. 11. 2.
[코딩테스트/백준 알고리즘] 13023번 - ABCDE (자바, Java 풀이) 문제 https://www.acmicpc.net/problem/13023 13023번: ABCDE 문제의 조건에 맞는 A, B, C, D, E가 존재하면 1을 없으면 0을 출력한다. www.acmicpc.net 문제 설명 문제 풀이 이 문제는 DFS를 통해 길이가 5인 경로가 존재하는지 확인하는 방법으로 해결할 수 있다. 하지만 이번 풀이는 다른 방법으로 해결해보겠다. 이 방법을 위해선 그래프를 표현하는 방법 중 인접 행렬, 인접 리스트, 간선 리스트를 모두 사용해야 한다. 간선 리스트를 사용해서 A - B 를 찾는다 간선 리스트를 사용해서 C - D 를 찾는다. 인접 행렬을 사용해서 B 와 C가 연결되어 있는지 확인한다. 입접 리스트를 사용해서 D에서 E(A, B, C, D가 아닌 친구)가 연결되어 있.. 2022. 11. 1.
[코딩테스트/알고리즘] 그래프(Graph) - 그래프 종류, 그래프 용어 1. 그래프란 그래프는 자료구조의 일종으로 정점과 간선으로 나타낸다. 정점(Vertex) : 노드(Node)라고도 불리며 데이터가 저장된다. 간선(Edge) : 정점 간의 관계를 나타낸다. V개의 정점과 E개의 간선을 가진 그래프 G는 G = (V, E)로 나타낸다. 2. 그래프의 종류 1) 방향이 있는 그래프 그래프의 간선 간에 방향이 있는 그래프 A → C로 가는 간선은 있다. C → A로 가는 간선은 없다. 2) 방향이 없는 그래프 (양방향 그래프) 그래프의 간선 간에 방향이 없는 그래프 A - C 간에 간선의 방향이 없다. A - C는 A → C 와 C → A를 나타낸다. 3) 간선이 여러개인 그래프(Mumtiple Edge) 두 정점 사이에 간선이 여러 개인 그래프 아래 그래프는 A - B를 연.. 2022. 10. 27.
[Spring 공부/스프링 입문] 스프링 프로젝트 생성 사전 준비물 Java 11 IDE : InteliJ 1. InteliJ를 사용해서 생성 InteliJ Ultimate 버전을 사용하고 있다면 InteliJ 안에서 스프링 프로젝트를 생성할 수 있다. 만약 Community 버전을 사용하고 있다면 start.spring.io를 통해 프로젝트를 생성하면 된다. 1) 새로운 프로젝트 생성 우측 상단 NEW PROJECT 선택 2) 프로젝트 설정 좌측 Generator에서 Sping Initializr을 선택한다. 1. Language : 언어 선택 Java 2. Type : 필요한 라이브버리를 관리하고 빌드까지 해주는 툴 선택 Maven : 과거에 많이 씀 Gradle : 요즘 많이 씀 (선택) 3. Group : 그룹 명 com.example. 과 같이 많이.. 2022. 10. 27.