전체 글 140

Java + Gradle 프로젝트에서 JUnit 테스트하기

지금부터 IntelliJ에서 Java + Gradle 프로젝트를 생성한 후 JUnit으로 테스트를 해볼 것이다. 1. 프로젝트 생성 IntelliJ에서 메뉴 [File] - [New] - [Project]로 들어가면 'New Project' 창이 뜬다. Junit 라이브러리를 사용해서 테스트를 할 것이기 때문에, 직접 jar를 받아 추가하기보다는 Maven 또는 Gradle 빌드 도구를 이용해서 의존성을 쉽게 관리하는 것을 추천한다. 나는 Gradle을 이용할 것이다. GroupId와 ArtifactId는 원하는 식별자를 입력하면 된다. 실제 프로젝트라면 룰에 맞춰야 한다. 식별자 네이밍에 대한 글을 참고하자. (https://johngrib.github.io/wiki/groupId-artifactId/..

Eclipse, IntelliJ, VS Code에서 글짜 폰트 변경하기

나는 평소 Consolas 폰트를 쓰지만, 가끔 기분전환 삼아 폰트를 바꿔보고 싶을 때가 있다. 내 눈에 맞는 폰트를 적용하면 가독성을 높아져서 개발력(?)이 높아지는 기분이 든다. 지금부터 대표적인 IDE인 Eclipse, IntelliJ, Visual Studio Code에서 네이버의 D2 Coding 폰트로 바꿔보려고 한다. 폰트 설치 D2 Coding GitHub 사이트에 들어간다. 2019년 11월 기준으로 최신 버전은 1.3.2 버전이다. (2018.06.01 배포) 다음 화면에서 'D2 Coding-Ver1.3.2-20180524.zip' 파일을 다운로드한 후 압축 해제한다. 폰트 설치하는 위치는 운영체제 및 버전 별로 다르기 때문에 나는 Window 10 기준으로 설치하려고 한다. 압축 해..

Spring MVC 프로젝트의 기본 구조와 실행 순서

Spring MVC 프로젝트의 기본 구조 Spring의 전체적인 실행 순서 요청 -> DispatcherServlet -> HandlerMapping -> 요청 처리하기 (Controller Service DAO DB) -> DispatcherServlet -> ViewResolver -> View -> DispatcherServlet -> 응답 예시 1. 일반적인 기본 동작 순서 예시 2. 위 예시에서 Controller 뒷부분의 과정을 생략함 단계별 스프링 실행 순서 1. 클라이언트가 요청을 보낸다. 예를 들어, 사용자가 블로그 포스팅을 읽기 위해 http://localhost:8080/post/view 라는 블로그 글 조회 요청을 보냈다고 가정해보자. 2. 클라이언트의 요청을 DispatcherSe..

스프링 개발환경 구성하기 (7) STS 플러그인 설치 및 스프링 프로젝트 생성

📢 2022년 1월 기준으로 포스팅을 새로 반영하였습니다. 스프링을 개발할 때, 보통 2가지 방법으로 개발 도구를 설정하곤 한다. 스프링 전용의 STS 툴을 이용하거나 Eclipse 또는 IntelliJ에서 플러그인 형태로 사용하거나 개인적으로 2번째 방법인 Eclipse에서 STS 플러그인을 다운받아서 사용하고 있으므로 이 방법을 포스팅하려고 한다. 만약 1번째 방법으로 스프링 개발을 하려면 Spring Tool을 참고하자. 1. STS 플러그인 설치 이클립스에서 [Help] - [Eclipse Marketplace]을 누르면 아래의 창이 뜬다. Find 란에 'sts'를 검색하면 다양한 플러그인이 검색된다. 2022년 1월 기준으로 대표적으로 아래 3개 항목이 보일 것이다. Spring Tools 3..

스프링 개발환경 구성하기 (6) MySQL Workbench 이용하기

📢 2022년 1월 기준으로 포스팅을 새로 반영하였습니다. 이전 포스팅에서 MySQL 8 버전을 설치해보았다. 개인적으로 Oracle을 선호하기 때문에 MySQL로는 개발할 일이 없지만 MySQL을 설치했으므로 기본적인 Workbench 사용법을 가볍게 다뤄보려고 한다. 커넥션 생성하여 계정 연결하기 MySQL Workbench를 실행하면 최초 화면에서는 아래의 사진처럼 root 계정의 커넥션이 만들어져 있다. root 계정은 최상위 관리자 계정이므로 프로젝트 개발에는 사용하지 않는 것이 좋다. 그래서 [+] 버튼을 눌러서 설치할 때 MySQL을 설치할 때 만들어둔 계정으로 연결하려고 한다. 만약 사용자 계정을 안 만들었다면, root로 접속한 뒤 [Users and Privileges] 항목에서 사용자..

스프링 개발환경 구성하기 (5) MySQL 8 설치

📢 2022년 1월 기준으로 포스팅을 새로 반영하였습니다. 지금부터 MySQL DB를 설치하고 난 후 MySQL Workbench를 설치하려고 한다. MySQL Workbench는 DB와 연결해서 SQL 쿼리를 입력할 수 있는 개발 도구이다. DB를 설치하고 환경설정끼지 하는 데에 꽤 많은 시간이 소요되므로 하나씩 차근차근 진행해보자. MySQL 설치 MySQL 다운로드 사이트로 이동해보자. 'MySQL Installer for Winodws'를 누르면 아래 화면으로 이동한다. 2개의 MSI Installer 중에서 용량이 큰 파일을 다운받는다. 용량이 작은건 웹 설치용이고 용량이 큰 건 전체 설치용이다. 참고로 32비트라고 적혀있지만 64비트도 사용 가능하다. 로그인을 굳이 하지 않아도 된다. 당황하지..

스프링 개발환경 구성하기 (4) 메이븐 설치(Maven) 및 환경변수 설정

최근글 보기 : 스프링부트 개발환경 구성하기 (4) 메이븐 Local Repository 설정 지금부터 Java 11, Eclipse, Tomcat 9, Maven을 순서대로 설치할 것이다. 아래 사진처럼 모두 C:\dev 폴더 안에 설치해서 관리하기 편하게 만드려고 한다. 앞으로 진행할 포스팅 순서는 아래와 같다. JDK 11 설치 이클립스 설치 톰캣 9 설치 메이븐 설치 (현재 포스팅) Maven 설치 Maven 홈페이지에 접속한 후 Files 란의 최신 버전을 바로 다운받아도 되고, 이전 버전을 사용하려면 maven archive에서 원하는 버전을 다운받을 수 있다. 2022년 1월 기준으로 3.8.4 버전까지 나왔지만 (최신 버전을 받으면 진행하다 막힐 가능성이 높아서) 나는 3.8.1 버전을 다..

[Book] 프로그래밍 언어도감

프로그래밍 언어도감? 도서관에서 제목을 보고 눈에 띄어 빌리게 된 책이다. 수백개의 프로그래밍 언어 중에서 사람들에게 인기 있는 67개를 선별하여 각 언어의 특징과 기능을 간단히 소개하고 있다. 저자가 언어를 선별한 기준은 사용자가 간단하게 실행할 수 있어야 하고, 많은 사람들이 사용하고 있어야 한다는 기준으로 골랐다고 한다. [프로그래밍 언어 목록] Assembly language, ActionScript, Ada, AWK, Bash, BASIC, bc, Brainfuck, C, C#, C++, CLIPS, Clojure, COBOL, CoffeeScript, csh, D, Dart, Elixir, Erlang, F#, Factor, Fantom, Forth, Fortran, Go, Groovy, Ha..

My Note/리뷰 2019.11.13

[강의] 김왼손의 미운코딩새끼: 4시간만에 끝내는 파이썬 기초

김왼손의 미운코딩새끼: 4시간만에 끝내는 파이썬 기초 (전자책 포함) - 인프런 대학 새내기 시절 코딩이 너무 어려웠습니다. 잘해보려 아등바등 노력해 봤지만 매번 실패하다가 결국 미워하게 돼버렸습니다. 지금 돌아보면 그렇게 미워할 정도는 아니었는데 말이죠. 지금도 저와 같은 고민을 하는 분들이 많을 거라고 생각합니다. 그 때 그 시절 이런 강의가 있었으면 어땠을까 하는 마음으로 만든 강의가 바로 미운코딩새끼입니다. 미운코딩새끼는 코딩이 너무 어려워 포기한 분, 또는 코딩을 처음 접하는 분을 위한 강의입니다. 파이썬이라는 프로그래밍 언 www.inflearn.com '김왼손의 미운코딩새끼'는 코딩을 잘 모르는 사람들을 위한 파이썬 기초 강좌이다. 김왼손 님의 듣기 좋은 음성이 마치 생활코딩의 이고잉 님을 ..

My Note/리뷰 2019.11.12

알고리즘 공부 방법

알고리즘 사이트 모음 프로그래머스: https://programmers.co.kr/learn/challenges 백준: https://www.acmicpc.net/ 코딜리티(Codility): https://www.codility.com/ 코딩도장: http://codingdojang.com/ 오일러 프로젝트: http://euler.synap.co.kr/ CodeForces: http://codeforces.com 알고리즘 추천 책 코딩 인터뷰 완전 분석 알고리즘 문제 해결 전략 알고리즘 공부법 알고리즘과 관련된 이론을 공부하여 이해한다. 이론과 관련된 알고리즘 문제를 푸는 방법을 이해한다. 완벽하지 않아도 일부만 이해하는 것으로 충분하다. 관련 알고리즘 문제를 풀어본다. 한 문제는 길어야 2시간 정도..