테스트 하기 좋은 코드, 좋은 테스트 코드

이 글을 쓰는 이유 좋은 테스트 코드, 테스트하기 좋은 코드에 대해서 고민하다가 든 생각을 공유해보고자 적습니다. 테스트 하기 좋은 코드 1. 블랙박스 테스트할때 비즈니스 로직의 결과를 단언할 수 있는 코드가 테스트 하기 편하다. 비즈니스로직과 persist 작업이 한번에 이뤄지고 "OK"나 Unit 과 같은 결과물만 내놓으면 stubbing으로 내용이 잘 돌아갔음을 증명해야하고, 이렇게 되면 레포지토리 레이어까지 내려가서 테스트해야한다. "버그 없음"은 테스트 코드를 통해서 증명할 수 있는게 없기 때문에, return을 받아서 결과를 볼 수 있도록 되어있는게 편한 것 같다. 파라미터로 넣은 객체를 확인하는 방법도 있지만, 객체는 Immutable하게 유지해주는 편이 좋기 때문에 비즈니스 로직은 묶어서 ..

Kotlin 2024.01.15 0

최근 변한 삶

이번에 학교의 마지막학기를 마무리하면서 티맵의 광고 개발팀에 합류했다. 3학년 2학기 이후로는 프리로만 일을 해왔기 때문에 조직에 적응하는게 어색하기도 하다. 팀원분들이 친절하시고 광고 도메인에 깊은 경험이 있기 때문에 마음이 좋다. 이제 마음에 좀 여유가 생겨서 입사후 3주 시점에 느낀 점에 대해서 몇가지 적어보려고 한다. 변한 점 세가지 1. Spring 생태계에 입문 최근 2년동안 Typescript, nest.js로 업무를 진행해왔고, 사실 티맵에 합류했을때도 Nest.js로 작업을 진행했었다. 현재 일하는 부서에서는 자바 스프링으로 개발을 하고 있다. 스프링이 한국 IT에서는 많은 기회가 있기 때문에 커리어발전의 기회로 삼을 수 있어서 기쁘다. 스프링 공부는 인프런의 김영한님의 강의를 통해서 주..

회고록 2023.01.23 0

어플리케이션 출시 전에 했던 일: 앱 출시 후기 2편

이 글은 어플리케이션 출시 전에 했던 일들을 적은 글입니다. 앱 출시 후기 1편 글을 쓰는 이유 이 글은 어플리케이션 개발을 해서 출시하시는 분들을 위해서 작성되었습니다. 지금 당장 기록하지 않으면 나중에는 까먹거나, 당연한 것으로 여기게 될 것 같아 출시를 하고 바 blog.mayleaf.dev 지난 번에 앱 출시 후기 1편을 적어서 냈는데, 그 글의 목차별로 글을 이제 작성해보려고 합니다. 오늘 쓰는 내용은 어플리케이션 출시 전에 해야했던 일들입니다. 어플리케이션 출시 전에 했던 일들 사전조사 우선 로또 리마인더를 구현하기 전에 앞서 리마인더 기능외에 어떤 기능들을 제공해주면 좋을까? 라는 생각을 했습니다. 그래서 앱스토어에 있는 로또 관련 어플리케이션들을 쭉 깔아보고 사용을 해봤습니다. 사용을 해보..

Flutter 2022.09.19 0

플러터에서 위치정보 사용하는 법, How to use location in flutter

이 글은 로케이션, Location 패키지를 통해서 사용자의 위치정보를 사용하는 법을 다룬 글입니다. 많은 어플리케이션의 기획에서는 위치정보를 필요합니다. 예를 들어, 근처에 있는 ATM기의 위치나, 음식점의 정보를 알기 위해서는 내 위치를 알아야하죠. 사용자가 본인의 위치정보를 사용할 수 있게 하려면 어떻게 해야할까요? Location 사용자가 본인의 좌표를 얻기 위해서 사용하는 패키지가 바로 로케이션, location입니다. pubspec.yaml에서 디펜던시를 추가한 다음 설치를 진행합니다. dependencies: location: ^4.2.0 권한 요청 먼저 디바이스의 위치 정보를 얻기 위해서는 권한, Permission을 받아야합니다. Android project_dir/android/app/..

Flutter 2021.08.25 2

Nginx 프록시 서버

이 글은 Nginx를 프록시 서버로 사용하는 방법을 적은 글입니다. 이 글에서 다루고자 하는 내용은 크게 두 가지로 첫 번째는 Nginx를 리버스 프록시 서버로 운용할 때의 장점이고 두 번째는 Nginx를 리버스 프록시 서버로 운용하는 방법 입니다. 리버스 프록시 서버를 운용하는 장점 첫 번째는 어플리케이션 서버의 정보를 외부에 노출하지 않고 운영할 수 있다는 점이고, 두 번째는 하나의 포트만으로 여러 서버에 접근 할 수 있는 아키텍쳐를 만들 수 있다는 점입니다. Nginx를 리버스 프록시 서버로 운용하기 우리는 두가지 실습을 진행할 것입니다. 첫 번째는 간단한 Nginx 리버스 프록시 서버를 세팅하는 것이고 두 번째는 Nginx 리버스 프록시 서버에 어플리케이션 서버를 연결하는 것입니다. Beginne..

Nginx 시리즈 2020.04.04 0