[ES2015] let으로 변수 선언하기 2

이전 포스트에서 ES2015의 let 키워드에서 대해서 알아보았습니다.이번 포스트에서는 for 문에서 let이 어떻게 사용될 수 있는지 살펴보겠습니다. 예제 코드다음 코드는 사용자 아이디를 받아 가짜 사용자를 담든 후 콜백 함수를 호출하는 비동기 함수입니다.마치 DB 연동처럼 setTimeout 함수를 이용하여 1초의 지연을 주었습니다. 12345funct

[ES2015] let으로 변수 선언하기 1

본 포스트에서는 ES2015를 통해 자바스크립트에 추가된 let 키워드에 대해서 알아보도록 하겠습니다. 문제의 코드먼저 다음 예제 코드를 살펴보시죠. 1234567891011function findUser(id) { if (id > 0) { var successMsg = "사용자를 조회하였습니다."; console.log

[자바스크립트] var를 사용할 때 발생하는 문제들

많은 자바스크립트 강좌에서 가급적 var 대신에 let이나 const 키워드를 사용하여 변수를 선언하라고 가이드하고 있는데요. 본 포스트에서는 var의 어떤 문제점 때문에 그런건지 알아보도록 하겠습니다. 아리송한 코드먼저 다음 코드를 살펴보도록 하겠습니다.무엇이 출력이 될지 예상이 되시나요? 1234567var n = 1function test()

AssertJ 소개

멋진 테스트 코드를 작성하도록 돕는 AssertJ 라이브러리에 대해서 알아봅시다. AssertJ의 장점 메소드 체이닝을 지원하기 때문에 좀 더 깔끔하고 읽기 쉬운 테스트 코드를 작성할 수 있습니다. 개발자가 테스트를 하면서 필요하다고 상상할 수 있는 거의 모든 메소드를 제공합니다. 라이브러리 의존성 설정Java8 이상 기반 프로젝트는 3.x 버전을, Ja

자바8 Optional 3부: Optional을 Optional답게

Optional을 좀 더 Java8 API 설계자의 의도에 맞게 쓰는 방법에 대해서 알아봅시다. 이전 포스트를 통해서 Optional에 대해서 소개드렸습니다.또한 Optional을 Optional답지 않게 사용할 경우, 어떤 부작용이 발생하는지도 살펴보았는데요.이 번 포스트에서는 어떻게 코드를 작성해야 Optional을 Optional답게 쓸 수 있는지

자바8 Optional 2부: null을 대하는 새로운 방법

Java8의 Optional API를 통해 어떻게 null 처리를 할 수 있는지 알아봅시다. 이전 포스트를 통해 Java8 이 전에는 얼마나 null 처리가 고통스러웠는지 살펴보았습니다.그리고 문제의 본질이 null 참조를 통해 “값의 부재”를 표현하는 자바 언어의 초기 설계에 기인한다라는 것도 말미에 언급하였습니다. null 관련 문제 돌아보기이 전

자바8 Optional 1부: 빠져나올 수 없는 null 처리의 늪

Java8이 나오기 이 전에는 얼마나 힘들게 null 처리를 했었는지 살펴봅시다. null 창시자가 스스로 인정한 null 탄생의 실수우선 null이라는 개념은 언제 누구에 의해 만들어졌을까요?null 참조는 1965년에 Tony Hoare라는 영국의 컴퓨터 과학자에 의해서 처음으로 고안되었습니다.당시 그는 “존재하지 않는 값”을 표현할 수 있는 가장

소켓이란 무엇인가?

본 포스트는 오라클 자바 튜토리얼의 What Is a Socket?를 번역하였습니다. 소켓 통신일반적으로 서버는 특정 포트가 바인딩된 소켓를 가지고 특정 컴퓨터 위에서 돌아갑니다.해당 서버는 클라이언트의 연결 요청을 소켓을 통해 리스닝하면서 그냥 기다릴 뿐이죠. 클라이언트는 서버가 떠 있는 머신의 호스트네임과 서버가 리스닝하고 있는 포트 번호를 알고 있

자바8: 반복문에서 벗어나기

본 포스트는 Dead Code Rising의 Java 8: No more loops를 번역하였습니다. 이전 포스트통해 자바의 판도를 바꿀 자바8의 새로운 함수형 기능들에 대해서 살펴보았습니다.자바 개발자들에게는 새로운 세상이 열렸으며, 이제 우리가 그 새로운 세상에 적응해야 할 때 입니다. 이번 포스트에서는 전통적인 반복문에 대한 몇가지 대안들에 대해서

자바8: 람다 1부 - 메소드 참조, 가상 확장 메소드, 결론

본 포스트는 오라클 웹사이트에 Ted Neward가 기고한 Java 8: Lambdas, Part 1를 번역하였습니다. 메소드 참조 (Method Reference)지금까지 다룬 모든 람다는 사용 시점에 람다를 정의하는 익명 리터럴이였습니다.이는 1회성 행위를 위해서는 훌륭하지만, 이 행위가 여러 곳에서 사용되어야 하는 상황에서는 별로입니다.예를 들어