진짜 개발자
본문 바로가기

Language (총 39개)

Java - Stream 이란? (Stream과 Collection, Stream 각 연산) 1. Stream 이란 Stream에 대해 알아보도록 하겠습니다. 이 글은, 모던 자바 인 액션이라는 책을 기반으로 작성되었습니다. 1. Stream 이란 데이터 처리연산을 지원하도록 소스에서 추출된 연속된 요소입니다. 1) 연속된 요소Collection과 마찬가지로, Stream은 특정 요소 형식으로 이루어진 연속된 값 집합 인터페이스를 제공합니다. Collection의 경우에는 시간과 공간의 복잡성과 관련된 요소의 저장 및 접근 연산이 주를 이루고, Stream의 경우에는 filter, sorted, map과 같은 데이터를 처리하기 위한 계산식이 주를 이룹니다. 2) 소스Stream은 Collection, 배열, I/O 자원 등의 데이터 제공 소스로 부터 데이터를 소비합니다. 3) 데이터 처리연산St..
Java - LocalDateTime, LocalDate 날짜 차이 구하기 (관련 이슈처리) LocalDateTime 1. 문제 상황App의 Server를 개발하던 중, 회원가입 부분을 구축하는 상황이었습니다. 회원가입시에는, 사용자의 출국날짜를 입력받게 되는데요, 이때 회원가입 진행 시간이 출국날짜 최소 하루 전이어야 하는 상황이었습니다. 날짜를 나타내는 데이터 타입의 경우 출국 시간까지를 표현하기 위해 LocalDateTime을 사용중이었고, 현재 일(Day)과 출국일(Day) 사이의 일수를 계산하기 위해 Duration 을 사용하였습니다. 이와 같은 상황에서 테스트를 거의 통과하는듯 싶었으나, 출국날짜를 회원가입이 가능한 최소 날짜인 내일로 지정하여 테스트를 하면 계속해서 도메인 제약사항에 걸려 Exception을 발생시켰습니다. 2. 원인 분석원인을 찾기 위해 위와 같이 두 날짜의 일수 ..
Java - Retrofit이란? (retrofit 사용법 자세한 설명) 1. Retrofit이란 BackEnd 또는 FrontEnd를 개발하다보면 거의 필수적으로, 다른 서버에 데이터를 요청할 일이 생기게 됩니다. 특히나 FrontEnd의 경우에는 서버로부터 데이터를 받아와 출력하는 경우가 잦습니다. 저의 경우, 매번 HttpClient들을 검색을 통해 찾아보고 사용하고 또 찾아보고.. 를 반복했습니다. 결국, 제대로 이해를 하지 못했다는 의미인듯 합니다. 때문에, 이번 시간에는 Java의 HttpClient 라이브러리들 중 하나인 Retrofit에 대해 정리해보려고 합니다. 1. Retrofit이란? 출처 : https://square.github.io/retrofit/Retrofit은 TypeSafe한 HttpClient 라이브러리입니다. TypeSafe하다는게 어떤 의..
Java - Annotation 이란? Annotation 사용법 Annotation Annotation 에 대해서 알아보도록하겠습니다. Annotation- Java 5부터 추가된 기능입니다.- 클래스 또는 메소드 그리고 변수 등에 붙여서 사용됩니다.- 소스코드에 메타코드를 주는 것.위에서 설명드린 내용은 프로그래머스의 자바 중급강좌에서 발췌한 내용입니다. 처음 어노테이션을 블로그나 구글링을 통해 알아보았을때는 이해력이 부족해서인지, 저는 잘 이해가 가질 않았습니다. 예제와 함께 설명드리겠습니다. 1. Annotation 생성xxxxxxxxxxpublic @interface DoRepeat100 {}우선 간단히 Annotation을 생성하겠습니다. Interface를 생성하고 interface 키워드 앞에 @를 붙혀주면 됩니다. 정의한 Annotation의 의미는 1..
Java - Lambda Expression(람다식)이란? 람다식이란 람다식이란 무엇일까요. 그 동안 java를 이용하다가 lambda식 이란 것을 처음 보았을때는 매우 생소하고 거부감이 느껴졌습니다. 하지만, java8에서 추가된 stream과 같은곳에서 한두번씩 사용하기 시작해보니 정말 편리한 기능임을 알게 되었습니다.( 한편에서는 너무 많은 코드를 생략하다보니 오히려 프로그램의 가독성을 저해시킨다는 의견도 있습니다. ) 1. 람다식이란?java 8부터 추가된 기능으로 익명객체를 생성하기 위한 표현식을 말합니다. 무슨말일까요.. 역시 예제를 살펴보는것이 더 나을것 같습니다. 1.1 람다식 이전​xpublic interface Goods { public void doSome();}​public class Computer implements Goods{ @Ove..
Java - Json 과 Gson 이란? Json과 Gson JSON을 사용하기전에 당연히 여러곳에서 무엇인지를 검색한 뒤에 사용했지만 역시 설명하려고 하면 버벅거리게 되는것 같습니다. 아무래도 정확히 알지 못해서인것 같습니다. 때문에 생각 정리도 할 겸 JSON과 GSON에 대한 포스팅을 하려고 합니다. 1.1 JSON 이란?JavaScript에서 객체를 표현하는 방법이지만, 다양한 프로그래밍언어에서 데이터를 주고 받기위해 사용됩니다. XML등 과 같이 데이터를 표현하는 일종의 데이터 표현 표준입니다. 주로 인터넷상에서 데이터를 주고 받을 때 그 자료를 표현하는 방법으로 알려져 있습니다. 항상 어딘가에 정의처럼 적혀져 있는 설명은 이해하기 어려운것 같습니다. 한번 보고 설명하는 편이 이해가 쉬울 것이라 생각됩니다. x{ "name" : "jj..