본문 바로가기

반응형
개발 53

Cloud Native와 CNCF Cloud Native Landscape Intro 예전에 CNCF 재단에서 권장하는 Cloude Native 환경을 만들기 위한 landscape에 대해 살펴본 적이 있습니다. 주기적으로 업데이트를 하는 자료이기도 하고, 클라우드 기반의 어플리케이션을 구축하기 위해 어떤 제품을 선택해서 조합하여 사용할 수 있을지도 한눈에 파악할 수 있어 가끔 살펴보곤 했습니다. 오늘은 이 Cloud Native, CNCF재단, Cloud Native Trail Map와 함께, Landscape에서 확인할 수 있는 몇가지 대표적인 소프트웨어에 대해서 소개하고자 합니다. Cloud Native (클라우드 네이티브) 가상화 기술이 발전하고 Cloud 환경의 발전이 가속화됨에 따라 애플리케이션의 구성 역시 Cloud 환경에 맞게 설계되어야 할 필요성을 갖게됩니다. .. 2021. 9. 6.
[Effective Kotlin] Item 17: Consider naming arguments Intro val text = (1..10).joinToString("|") 위와 같은 예시가 있을 때, joinToString에 대해서 모른다면 "|"이 seperator라는 것을 알기 어렵고, 명확하지 않습니다. (물론 요즘은 IntelliJ와 같은 IDE가 잘알려주지만,,, 그래도!) 가장 좋은 방법은 naming argument를 사용하는 것 입니다. 아래처럼요! val text = (1..10).joinToString(separator = "|") 비슷한 방법으로 naming variable이 있습니다. val separator = "|" val text = (1..10).joinToString(separator) 위의 경우, naming argument보다는 좀 덜 안정적입니다. 변수 명은 개.. 2021. 8. 25.
쿠키(Cookie) vs 세션(Session) 쿠키와 세션을 사용하는 이유: HTTP 프로토콜의 약점(비연결지향, 상태정보유지안함)을 보완하기 위해 사용 쿠키 (Cookie) 클라이언트 로컬에 저장되는 키와 값이 들어있는 작은 데이터 파일 프로세스 브라우저에서 웹페이지로 접속 클라이언트가 요청한 웹 페이지를 받으면서 쿠키를 클라이언트 로컬에 저장 클라이언트가 재 요청시 웹 페이지 요청과 함께 쿠키값도 전송 지속적으로 로그인 정보를 가지고 있는 것처럼 사용 Session(세션) 일정 시간동안 같은 브라우저로부터 들어오는 일련의 요구를 하나의 상태로 보고 유지하는 기술 프로세스 클라이언트가 서버에 접속시 세션ID발급 서버에서는 클라이언트로 발급해준 세션ID를 쿠키를 사용해 저장 클라이언트는 다시 접속할 때, 이 쿠키를 이용해 세션 ID값을 서버에 전달 .. 2021. 8. 21.
[Kotlin test framework] Kotest Document Document: https://kotest.io/ Github Reference Dockument: https://github.com/kotest/kotest/wiki/Reference-Doc Kotest | Kotest Flexible, powerful and elegant kotlin test framework with multiplatform support kotest.io Introduce Kotest는 Kotlin을 위한 테스팅 도구 Kotlin-Test에서 Kotest로 이름이 변경되었으며, 이름에서 알 수 있듯이 Kotlin언어로 작성된 코드를 테스트하기에 아주 용이 Spock와 유사하게 간결한 코드와 다양한 유형의 테스트 방식을 지원 Kotest는 multi-platfor.. 2021. 8. 21.
[Effective Kotlin] Item 10: Write unit tests Intro 코드를 더 안전하게 만드는 궁극적인 방법: 다양한 종류의 테스트를 사용하는 것 일반적인 테스트: 사용자 관점에서 애플리케이션이 올바르게 작동하는지 확인 애플리케이션 외부에서 올바르게 작동하는 것이 목표 충분한 수의 tester를 처리 개발자에게 유용하지만 불충분함 => 단위테스트가 필요한 이유 시스템의 구체적인 element들의 올바른 작동을 보장하지 못함 개발 중에 더 빠른 피드백을 제공하지 못함 단위 테스트 (Unit test) 구현된 elements의 작동방식에 대해서 빠른 피드백을 제공하기 때문에 개발중에 유용함 테스트는 누적되므로 regression에 있어서도 쉽게 확인 가능 수동으로 테스트하기 어려운 사례도 확인가능*TDD(Test Driven Development)방식에서는 단위테.. 2021. 8. 12.
[Test - Spock + Kotlin] Mocking 실패 문제 Spring Boot + Spock Framework + Kotlin 조합으로 UnitTest 코드를 작성하다 문제를 마주하게 되었다. 이 문제는 재직중인 회사에서 tc를 작성하던 중 발생한 문제로, 소스코드를 그대로 담을 수 없어 최대한 비슷한 코드를 따로 작성해보았다. 결론부터 말하자면, 나와같은 환경, 상황이 발생한다면 Spock Framework를 사용하여 test를 진행하기 어려울 것 같다 ㅠㅠ 일단 문제가 발생한 코드는 아래와 같다. class HelloTest extends Specification { HelloDao helloDaoMock HelloService helloService def setup() { helloDaoMock = Mock(HelloDao) //문제 발생 helloSe.. 2021. 7. 14.
반응형