테스트 가능한 가장 작은 소프트웨어를 실행하여 동작함을 확인한다. 큰 프로그램을 작은 단위로 쪼개서 해결하는 개념이다. 내 코드가 안전함을 증명하는 것이라고도 볼 수 있겠다. 프로그램을 최소한의 단위로 나누면 문제가 생길 가능성이 줄어드는 이점이 있다(분할 정복 개념과
기본적으로 소프트웨어의 주 목적은 문제 해결이다. 즉 내가 원하는 대로 동작하는 코드를 만들어야 한다.읽기 쉬운 것이 중요하다. 의도를 드러내고 유지보수하기 좋아야 한다.보기 좋아야 한다. 가독성과는 다르다. 코드가 잘 읽히는 것과 보기 좋은 것은 다르다. 컨벤션을 잘
우테코 1차 미션의 1차 pr 후, 코치님과 함께 페어프로그래밍을 진행하며 정리한 미션 진행 주안점이다.ex)주어진 횟수 동안 n대의 자동차는 전진 또는 멈출 수 있다.각 자동차에 이름을 부여할 수 있다. 전진하는 자동차를 출력할 때 자동차 이름을 같이 출력한다.자동차
개요우테코 사다리 타기 미션을 수행하기에 앞서 TDD의 개념에 대해 수강한 내용을 정리하기로 했다TDD프로덕션 코드보다 테스트코드를 먼저 구현하는 개념이다. 따라서 test first development라고도 한다. 프로그래밍 의사결정과 피드백 사이의 간극을 의식하고
자바의 근본적 특징은?객체 지향, 멀티 쓰레드 등등...자바의 특징에 대한 여러 말이 있지만 조금 더 근본적인 특징은 무엇일까자바는 블루 칼라 언어다 - 제임스 고슬링자바는 일을 하기 위한 언어다. 코드 작성 시에 가장 중요한 것은 "가장 비용적으로 효율적인 것" 이다
우테코 공통강의 인터넷과 웹 강의에서 들은 내용과 생각을 정리해봤다URL(Uniform Resource Locator) : HTTP(HyperText Transfer Protocol) : HTML(HyperText Markup Language) : URI통합 자원 식별
우테코 2단계 미션 강의 내용 중 들은 것을 정리해 보았다위와 같은 코드가 있다고 해보자.직관적으로 봤을 때, 다음 코드가 무엇을 의미하는지를 예상할 수 있는가?위처럼 주석을 통해 의도를 전달할 수 있겠지만, 코드 그 자체로 설명되도록 코드를 작성해야 유지보수 비용이
exception의 상속 구조는 다음과 같다.Throwable과 error, exception과 runtimeException의 차이는 무엇이 다를까 생각해보자checked exception은 컴파일 타임에 검증이 가능하다따라서 컴파일 시점에 예외가 Catch 되는지
우아한테크코스 2단계 사다리 타기 미션에 대한 코치님의 피드백 내용을 정리해 보았다Out -> In 방식 : 큰 단위부터 접근한다. 요구사항을 보면서 큰 설계를 하고 세부 내용을 객체로 도출한다. 도메인 지식이 없거나 요구사항을 객체로 도출할 수 없는 경우 적합하다.
개요 우아한테크코스 1단계 자동차 경주 미션을 진행하며 고민한 지점과, 새롭게 알게 된 것들을 정리하는 차원에서 본 회고를 작성하게 되었다. 단계 단위 테스트에 대한 개념 정리 먼저 단위 테스트에 대한 개념을 코치와 함께 정리하는 시간을 가졌다. 항상 테스트를
사다리 미션을 수행하던 중, 첫 pr 단계에서 BlockService라는 클래스를 만들어 컨트롤러에서 호출할 수 있는 메소드를 만들어놓으려는 시도를 했다.그러나, 첫 리뷰 이후 BlockService라는 클래스가 내 프로그램에서 왜 필요한지에 대해 큰 의문이 들었다.
우아한테크코스 블랙잭 미션 수행 전 문자와 문자열에 대해 학습한 내용을 정리했다자바에서는 문자열을 위한 클래스를 제공한다. 다른 언어에서 문자 배열을 사용하는 것과 약간 다르다.String은 자바 프로그래밍에서 가장 많이 생성되는 객체이다.string 생성 방법은 다음
리스트와 같은 다양한 종류의 데이터를 사용하는 경우 데이터의 타입을 특정 타입으로 고정할 수 있다.제네릭은 특정 타입으로 제한함으로써 타입 안정성을 제공한다. 또 타입 체크와 형변환을 생략할 수 있으므로 코드가 간결해진다.제네릭을 사용하지 않을 경우 다양한 객체의 타입
데이터베이스를 위해서는 파일 시스템을 이해해야 한다. 모든 애플리케이션에는 각각의 애플리케이션마다의 파일이 저장되어 있다. 파일 시스템은 파일 중심의 전통적인 데이터 처리 시스템이다. 각 응용프로그램이 개별적으로 자신의 파일을 관리한다파일 시스템의 문제점이 여러가지 있
우아한테크코스 지하철 미션을 수행하면서, 내 영속성 계층에서 조회한 자원으로 "지하철 호선"과 "호선에 속한 역의 정보", 그리고 "각 역 사이의 거리" 정보를 모두 가져와 "Line"이라는 객체를 만들어야 하는 순간이 있었다.초기 Service 클래스의 형태는 대충
개요 피움 서비스의 인수 테스트를 작성하던 도중, 실제 포트에 애플리케이션을 구동시켜 테스트를 하는 @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) 환경에서 테스트를 할 때, 테스트
우아한테크코스 5기 피움 프로젝트를 진행하면서, 필터링 기능을 구현하기 위해 Querydsl 라이브러리를 도입한 과정을 정리한다.내가 담당한 파트는 아래와 같다."사용자가 보유한 반려 식물의 관리 이력을 최신 순으로 조회하기" 반려 식물의 관리 이력 은 History
개요 우아한테크코스 5기 피움 프로젝트를 진행하면서, 필터링 기능 구현을 위해 Querydsl을 적용한 과정을 정리한다 이전글 과정 > 본 프로젝트는 다음과 같은 환경에서 구성되었다 > Springboot 3.1.1 > JAVA 17 Querydsl 설정
피움 서비스 개발을 진행하면서, JPA Method Naming 기능을 활용하여 %Like% 쿼리를 생성해 검색 기능을 개발한 과정을 기록한다.먼저 개발하려는 기능은 다음과 같다식물사전 데이터베이스에 포함된 식물의 이름을 기준으로, 해당 검색어를 포함한 식물의 목록을