
이 글에서 조금 더 나아간 버전이다.2024.02.01 - [개발/Kotlin] - 코틀린에서 static class 사용하기 : companion object - 자바와 다른 점 3 Utility 클래스 용으로 static을 사용하기 위해서 companion object를 쓰다가 확장함수까지 알게되서 정리한 글이었고, 이번엔 object를 걸 알게되서 다시 작성해본다. 아래에 작성한 내용들은 내가 사용하면서 느낀 점들이 조금씩 녹아있어서 오피셜한 내용을 파악하고 싶으면 코틀린 공식 문서를 보는 것을 추천한다. https://kotlinlang.org/docs/object-declarations.html#data-objects 목차를 따고 들어가면 다음 순서로 정리된다. 1. compaion object..

주니어 개발자들이 으레 그렇듯, 나도 결과에 치중해서 개발하는 시기가 있었다. 이제 백엔드 리드급으로 넘어오게되면서, 단순 구현보다는 유지보수나 확장성에 대해 많은 고민을 하게 됐다. 그러다보니 자연스럽게 패턴과 설계에 대해 관심이 가게 됐고 추천받은게 이 책이었다. 몇 년간 자바를 주언어로 개발을 했기 때문에, 객체지향 프로그래밍에 대한 어느정도 알고 있다고 생각했다. 그래서 객체지향 개념을 잘 사용하고 있나에 대한 고민은 딱히 하지 않았었다. 하지만 이 책을 보면서 객체지향 개념에 대해 다시한번 정리하게 됐다. 사실 갑자기 백엔드 개발을 하게 되면서 자바를 갑자기 쓰게 됐었다. 그래서 언어의 특징인 객체지향을 완벽하게 숙지 못하고 시작한 게 이유지 싶다.(캡슐화, 다형성, 상속, 합성 등 용어에 대..

Java와 다른점이 보일때마다 쓰는 Kotlin - 2 자바에서는 매서드 파라미터나 return 값을 범용적으로 사용하고 싶을 때 Object로 타입을 지정한다. (Object는 모든 객체의 최상위 부모 클래스이다.) 코틀린에서는 비슷한 의미로 Any를 쓴다. Any도 코틀린의 최상위 클래스이다. Any를 타고 들어가보면 아래와 같은 설명이 있다. The root of the Kotlin class hierarchy. Every Kotlin class has Any as a superclass. 따라서 Any는 Object와 사실상 큰 차이가 없다. 차이가 있다면 이후에 타입을 판별하는 부분인데, 코틀린에서는 스마트 캐스트라는 기능을 추가적으로 제공한다. 그리고 자바에서 Object를 사용할 때 어떤 객..
앞선 글에서는 캐시에 단순 String만 저장했다. 그런데 작업을 하다보면 한 줄의 단순한 String 보다는 더 많은 정보를 담고싶기 때문에 Object를 저장하고 싶을 것이다. 이 내용을 정리해봤다. 1. 저장하기 객체를 스트림으로 변환 후 Byte[] 형태로 저장한다. id는 기존 String을 저장하는 방식과 같이 UUID로 랜덤값을 생성했다. public String saveObjectCache(ObjectVo value) { Cache cache = cacheManager.getCache("myCache"); String id = UUID.randomUUID().toString(); byte[] bytes = null; try (ByteArrayOutputStream bos = new Byte..
- Total
- Today
- Yesterday
- EKS
- terraform
- cache
- AOP
- Elastic cloud
- object
- Spring
- Log
- MySQL
- docker
- GIT
- java
- 티스토리챌린지
- Kotlin
- ChatGPT
- 후쿠오카
- elasticsearch
- JWT
- lambda
- AWS
- springboot
- serverless
- 오블완
- AWS EC2
- CloudFront
- S3
- OpenAI
- 스프링부트
- openAI API
- 람다
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |