본문 바로가기
728x90
반응형

개발101

[JAVA] JAVA 11 에서 JAVA 17 으로 들어가기 앞서 ' 자바 최신 버전이 무조건 좋아? '라는 질문에 필자는 '응'이라고 대답하기는 어려울 것 같습니다. 물론 기능이 추가되고 편의성을 위해 여러 가지를 제공해 주는 것은 부정할 수 없고 너무나도 감사한 일입니다. 실무에서 자바 버전에 대해 라이브러리나 플러그인 호환성을 고려하지 않고 마음대로 올려버리면, 빨간 줄의 지옥을 맛볼 수 있습니다. 아직도 실무에서는 자바 8 버전을 사용하는 곳이 많고, 운영하시는 시니어분들의 마음과 안전을 고려하였을 때 자바의 업그레이드와 마이그레이션을 시도하기에는 어려운 상황입니다. 그럼에도 필자는 이번에는 자바 17에 대해서 알아보고 사이드 프로젝트를 자바 17 로 진행할 예정입니다. 자바 17 은 여러 가지 의미로 중요합니다. '자바' 하면 떠올리는 프레임워크.. 2023. 10. 4.
[JAVA] JAVA8 과 JAVA11 의 차이점을 알아보자. 들어가기 앞서 JAVA 를 버전별로 차이점들을 작성하고 있지만, 정확하게는 추가된 기능이나 특징들을 설명하는 글입니다. 실무에서 SpringBoot 를 사용하시거나, 새로운 SpringBoot 버전이 나와 릴리즈노트를 확인하시게 된다면 권장 자바 버전이 있는 것을 확인하실 수 있습니다. 예를 들어, SpringBoot 3.x 이상 부터는 자바 17 버전 이상을 지원합니다. 신규 버전은 앞으로도 계속 나올 것이고 변화하는 세상에 맞춰가며 공부하는 것이 개발자의 숙명이자 묘미가 아닐까 싶습니다. 비록 지금은 JAVA 11 버전에 대해서 작성하고 있지만 조만간 JAVA 17 버전으로 찾아뵙도록 하겠습니다. LTS(Long-Term Support) 란? 자바의 LTS(Long-Term Support) 버전은 장.. 2023. 9. 23.
[JAVA] 함수형 프로그래밍 들어가기 앞서 JAVA 8 버전부터 함수형 프로그래밍을 지원하기 위해서 람다 (lambda) 와 스트림(stream) 이 되었습니다. 람다와 스트림을 사용하여 함수형 프로그래밍 스타일로 자바 코드를 작성할 수 있습니다. 람다와 스트림 없이도 자바 코드를 작성하는 데에는 어려움이 없지만, 람다와 스트림을 사용하는 가장 큰 이유는 작성하는 코드의 양을 줄일 수 있고, 읽기 쉬운 코드를 만들 수 있기 때문이다. 함수형 프로그래밍 이란? 프로그래밍 패터다임 중 하나로, 자료 처리를 수학적 함수의 계산으로 다루는 방식을 의미합니다. 이러한 프로그래밍 스타일은 상태와 가변 데이터를 최소화하고 대신 함수의 응용을 강조합니다. 함수형 프로그래밍은 데이터의 불변성(immutable)을 유지하며, 결과에 관심을 두며 과정.. 2023. 9. 22.
[JAVA] 접근 제어자 (Access Modifier) 에 대하여 접근 제어자(Access Modifier) 이란? 접근 제어자(Access Modifier)는 프로그래밍 언어에서 클래스, 메서드, 변수 등의 멤버에 대한 접근 권한을 제어하는 키워드입니다. 이것은 코드의 가시성과 보안을 관리하며, 다른 부분에서의 접근을 제한합니다. 주로 Java와 같은 객체 지향 프로그래밍 언어에서 사용됩니다. 다양한 접근 제어자가 있으며, 일반적으로 사용되는 접근 제어자를 순차적으로 설명드리도록 하겠습니다. Public 어디서든 접근 가능한 가장 개방적인 접근 제어자입니다. public 접근 제어자가 붙은 변수나 메서드는 어떤 클래스에서도 접근이 가능합니다. PublicSeo.java package seo; public class PublicSeo { protected String .. 2023. 9. 16.
[JAVA] JAVA7 과 JAVA8 의 차이점을 알아보자. 들어가기 전에 금융권 계정계 업무를 하다 보면, 시스템이 굉장히 오래되었다고 생각이 들 때가 있습니다. 필자가 실제로 실무에서 사용하고 있는 시스템의 스펙도 Spring 4.x.x 에 JAVA 7 버전입니다. 다양한 버전들이 주기적으로 출시되면서 버전별로 차이점이 궁금하여 이렇게 글을 작성해 봅니다. 앞으로 JAVA 7, 8을 시작으로 11 이상 등 두 버전별 비교글을 계속 작성하려 합니다. 대부분의 코드 예시는 Chatgpt로 도움을 받았습니다. Spring 공식 문서에서는 새로운 버전이 나왔을 때, JDK 호환에 대한 내용을 릴리즈 노트에 적어 넣고 있습니다. 아래 내용 참고하시면 좋을 것 같습니다. Spring Framework Reference Documentation Spring Framewor.. 2023. 9. 8.
[DB] 스키마와 테이블은 다른가요? 들어가기 전에 개발을 하다 보면, 스키마 설계하고 진행해야 하는 상황이 발생한다. 실제로 쿼리를 사용하여 데이터베이스를 접근할 때, 테이블 기준으로 쿼리를 작성한다. 또한 테이블 내의 칼럼 기준으로 객체를 구성하게 되는데, 갑자기 '스키마와 테이블을 동일한 것인가'라는 생각이 들었다. 해당 내용으로 검색을 하면 어떤 블로그는 동일하다고 설명하고, 다른 블로그는 다르다고 설명합니다. 해당 내용에 대하여 검색해 보고 내용을 공유하고자 작성합니다. 먼저 스키마와 테이블은 다르지만, DB에 따라 같을 수도 있습니다. ChatGpt 한테 물어보자. 테이블 (Table) 이란? 테이블은 데이터베이스에서 실제 데이터를 저장하는 구조입니다. 테이블은 행과 열로 이루어져 있으며, 각 행은 레코드 또는 튜플을 나타내며, .. 2023. 9. 6.
728x90
반응형