본문 바로가기

전체 글266

[20220604] 개발자 일기 오랜만에 개발자 일기를 써본다. 한동안 일기를 쓰지 않았는데 일기 또는 TIL을 매일 쓰니까 글 자체가 질이 떨어지고 하루 동안 배운 양이 얼마 되지 않는데 쓰려니까 글 내용도 적어지는 것 같아서 방식을 바꾸려고 했기 때문이다. 앞으로는 개발자 일기는 주 1회 정도로 쓰고 공부한 내용은 정리해서 완성된 글로 작성한다. 최근에 공부하고 있는 방식은 웹 개발에 대한 개념들을 천천히 곱씹어보면서 생각나는 것들을 계속 찾아보고 정리하는 것이다. 그러고 나서 쓴 글이 '자바 EE에서 스프링 프레임으로'와 '스프링 프레임워크를 쓰는 이유'였다. 웹 개발을 하고 있지만 아직 모르는 것이 너무 많다. 안다고 생각하고 있는 개념도 사실은 모르고 있는 경우도 있고 계속해서 다른 것들을 공부하다 보니 점점 기억 속에서 잊혀.. 2022. 6. 4.
생성자 주입을 권장하는 이유 스프링의 의존성 주입 방식에는 수정자(setter) 주입, 필드(field) 주입, 생성자(constructor) 주입이 있다. 그중에서 생성자 주입이 다른 방식보다 권장된다. 그 이유들을 간단히 살펴보자. 객체를 불변(immutable)으로 만들 수 있다. setter를 사용하는 주입은 실행 중 언제든지 객체를 변경할 수 있지만, 생성자 주입은 객체를 final로 선언할 수 있어 처음 주입된 이후 변경이 불가능하다. 애플리케이션 실행 시 의존성을 반드시 주입하여 NullPointerException을 방지한다. 컴파일 시에 어떤 이유에서든 의존성이 주입되지 않는 경우를 막아서 실행 중에 NPE를 막을 수 있다. 순환 참조를 막아준다. 한 객체가 다른 객체를 서로 참조할 경우 stack overflow의.. 2022. 5. 30.
스프링 프레임워크를 사용하는 이유 필자는 회사에서 스프링 프레임워크를 사용해서 웹 개발을 하고 있다. 그러다 문득 든 생각이 "스프링으로만 개발하고 있는 나는 자바 개발자가 맞는가'였다. 그래서 스프링 이전에는 무엇이 있었는지, 어떻게 해서 스프링이 나오게 되었는지에 대해 생각해보고 또 조사해보았다. 저번에는 Java EE에서 스프링 프레임워크로 넘어가는 과정에 대해 이야기해봤고, 이번에는 스프링 프레임워크를 사용하는 이유에 대해 좀 더 알아보려고 한다. 우선, 프레임워크를 사용하는 이유부터 간단히 살펴보자. 프레임워크를 이용한 개발은 이름에서 알 수 있듯이 소프트웨어의 '뼈대'가 되는 부분은 미리 만들어놓고 필요한 부분들을 추가하거나 수정해서 사용하는 개발 방식이다. 그러다 보니 개발 기간이 단축되고, 오류가 적어지며, Java EE만.. 2022. 5. 30.
Java EE(또는 Jakarta EE)에서 Spring Framework로 Java를 이용한 웹 개발을 공부하다 보면, 처음에는 Java SE를 사용하다가 어느 순간 Java EE를 공부하게 된다. 특히, Eclipse IDE를 사용하여 자바를 공부했다면, 처음에는 Eclipse IDE for Java Developer를 쓰다가 어느 순간 Eclipse IDE for Enterprise Java and Web Developers를 쓰게 된다. 전자가 일반적인 Java 개발용 IDE이고, 후자가 Java EE 개발을 위한 IDE이다. 그렇다면 Java EE란 무엇일까? 자바 언어의 플랫폼은 자바의 기본 기능을 탑재한 Java SE, 웹 개발을 위한 Java EE, 모바일 디바이스 앱 개발을 위한 Java ME, 데스크톱 앱이나 리치 웹 애플리케이션 개발을 위한 Java FX, 4.. 2022. 5. 24.
728x90