이상을 꿈꾸는 몽상가.. 프로그래밍을 좋아함..


  • MSA Micro Service Architecture - PAPI (Permissions API), Spring Cloud Gateway


    인증 & 인가

    Kubernetes 위에서 Spring Cloud Gateway 와 같은 Spring Cloud 계열의 service mesh를 사용해서 구축한 경험을 공유합니다.

    또한 Spring Cloud Gateway와 PAPI 조합을 이용해서 API 별 인증(Authentication) / 인가(Authorization) 처리한 내용을 공유합니다.



  • Setting Android Studio


    AndroidStudio
    ( 이미지 출처 : https://developer.android.com/ )

    이 글은 Ubuntu 환경에서 Android Studio를 설치하고 설정하는 방법을 설명합니다.
    특히 기존에 Google Play에 등록해둔 앱을 새로운 Ubuntu & Android Studio 환경에서 개발하기 위해 개발환경을 구축하는 분들을 위한 글입니다.
    Android 앱 개발에 대한 내용은 다루지 않습니다.



  • Java Random - ThreadLocalRandom, SplittableRandom, SecureRandom


    https://openjdk.java.net
    ( 이미지 출처 : https://openjdk.java.net )

    Java에서 제공하는 Random 라이브러리에 대해서 알아봅니다.



  • Java Date - Instant, LocalDateTime, ZonedDateTime


    https://openjdk.java.net
    ( 이미지 출처 : https://openjdk.java.net )

    JDK 8부터는 Instant, LocalDateTime , ZonedDateTime 등이 추가됐다. 이 들은 immutable하고 thread-safe 하기 때문에 더 편하고 안전하게 날짜와 시간을 다룰 수 있게 되었습니다.

    Date의 대부분의 기능은 JDK 1.1부터 deprecated 되었고 JDK 7까지는 Calendar 혹은 GregorianCalendar를 이용해서 날짜와 시간을 다뤄왔지만 JDK 8부터는 그럴 필요가 없어졌습니다.



  • Java Validation - null check, Optional


    https://openjdk.java.net
    ( 이미지 출처 : https://openjdk.java.net )

    생성자 혹은 public/protected method는 입력 파라미터에 대해서 제약사항을 지키는지 확인해야합니다.

    오류는 가능한 한 빨리 (발생한 곳에서) 잡아야 한다.
    매개변수 검사를 제대로 하지 못하면 몇가지 문제가 발생할 수 있다.
    첫 번째, 메서드가 수행되는 중간에 모호한 예외를 던지며 실패할 수 있다.
    더 나쁜 상황은 메서드는 문제없이 수행됐지만, 어떤 객체를 이상한 상태로 만들어 놓아서 미래의 알수 없는 시점에 이 메서드와 관련없는 오류를 낼 때다.

    • 참조 : Effective Java 3/E 한글판 298 page, 아이템49

    이번 글에서는 가장 대표적인 검사대상인 null에 대한 체크 방법을 알아볼 예정입니다.



  • All Properties Of Spring Boot, Spring Cloud


    https://spring.io/
    ( Image reference : https://spring.io/ )

    Here’s links that have the properties you need to use Spring Boot, Spring Cloud.



  • Spring Boot, Spring Cloud의 설정정보 모음


    https://spring.io/
    ( 이미지 출처 : https://spring.io/ )

    Spring Boot, Spring Cloud의 설정정보들을 가진 공식 사이트 링크를 모아봤습니다.

    Spring Boot의 auto configuration을 통해 다양한 솔루션들을 쉽게 사용할 수 있습니다.
    튜토리얼 정도의 사용 수준에서는 입력할 설정정보가 몇개 안되지만 운영을 하는 과정에서는 그렇지 않습니다.

    솔루션들의 기능을 보다 더 잘 사용하기 위해서는 각각의 운영환경에 맞게 기본 설정값들을 변경할 필요가 생깁니다.



  • How to initialize Java variables - Array, List, Set, Map


    https://openjdk.java.net
    ( 이미지 출처 : https://openjdk.java.net )

    This post describes how to initialize a variable at the same time as declaring that.



  • Spring Boot Auto Configuration 설정과 원리


    https://spring.io/
    ( 이미지 출처 : https://spring.io/ )

    Spring Boot에서 제공하는 auto configuration을 설정하는 방법과 그 원리에 대해서 간략히 설명합니다.



  • Spring Boot Starter & Parent 로 간단히 의존성 설정하기


    https://spring.io/
    ( 이미지 출처 : https://spring.io/ )

    굉장히 쉽고 빠르고 정확하게 의존성 설정을 할 수 있도록 도와주는 spring-boot-stater와 spring-boot-stater-parent에 대해서 설명합니다.