Bank-End Chronicles

「Memory gets GC’d, but this blog stays committed.」

알고리즘 - 그리디

Greedy

Greedy 탐욕법 현재 상황에서 지금 당장 좋은 것만 고르는 방법 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구한다. 정당성 분석이 중요하다. 단순히 가장 좋아보이는 것을 반복적으로 선택해도 최적의 해를 구할 수 있는지 검토한다. 일반적인 상황에서 그리디 알고리즘은 최적의 해를 보장할 수 없을 때가 많다. ...

DB - 토스뱅크 데이터 설계사상

데이터 모델링에 대한 토스의 생각 엿보기

토스 SLASH 중요한 것은 ‘고민을 하고 만들었는가’이다. 토스뱅크 데이터 설계사상 테이블의 통합과 분리 순환 참조 활용 테이블 종류의 체계적 관리 비대면 대량 거래 설계 성능 최적화 설계 1. 테이블의 통합과 분리 테이블을 분리한 경우 대출외부심사내역과 카드외부심사내역 대출: 대출기본 - 대출외부심사내...

코드분석도구 - SonarQube

정적코드분석도구

정적 분석 실제로 실행하지 않은 상태에서 소스 코드나 컴파일된 코드를 이용해 프로그램을 분석하는 방법 소스코드의 모든 부분을 확인할 수 있다. 실행 환경에서의 상태를 정확히 알 수 없다. 실행할 때에만 알 수 있는 데이터가 필요한 경우 정확히 분석할 수 없다. 코드 상의 문제나 실수를 찾을 수 있다. 동적분석 프로그램을 실제 ...

Java - flatMap, map

stream과 친해지기

flatMap()과 map()의 차이 mozilla에 의하면, Javascript에도 Array.prototype.flatMap()메소드가 있다. flatMap()메소드는 먼저 매핑함수를 사용해서 각 엘리먼트에 대해 map을 수행한다. 그 후 결과를 새로운 배열로 만든다. depth가 1인 flat(), 그 후 map()을 실행한 것과 동일하...

Spring - 의존성을 이용해 설계 진화시키기

우아한테크세미나

의존성을 이용해 설계 진화시키기 의존성을 어떻게 관리하는 것이 좋은가? 의존성을 어떻게 관리하느냐에 따라 설계가 어떻게 변하는지 알아보기 설계가 뭔가요? 어떤 프로젝트에, 어떤 패키지에, 어떤 클래스에 어떤 코드를 넣을 것인지 결정하는 것이다. 핵심은 변경에 초점을 맞추는 것이다. 함께 변하는 코드를 같은 클래스에 넣는...

12월 07일 (화)

JIRA 이해하기

백로그가 뭘까? 하는 궁금증에서 찾아본 바를 정리한다. 제품 백로그 출시하려는 제품에 필요하다고 알려진 모든 요구사항에 대해 우선순위를 매긴 목록 제품 책임자와 스크럼 팀이 이해할 수 있는 수준의 개요와 설명을 포함한다. 무엇을 개발할지, 어떤 순서로 개발할지에 대해 초점을 맞춘 공통의 이해를 나타낸다. 스크럼 프레임워크의 중심에 ...

Javascript - Angular 기본

Angular, Angular JS

Angular란? TypeScript를 기반으로 개발된 개발 플랫폼 확장 가능한 컴포넌트 구조로 웹 애플리케이션을 만드는 프레임워크 라우팅, 폼관리, 클라이언트-서버 통신 등 웹 개발에 필요한 라이브러리를 통합함 애플리케이션 개발, 빌드, 테스트, 수정에 필요한 개발자 도구가 있다. Angular JS란? 구글이 만든 오픈...

12월 03일 (금)

첫 개발 업무

어제는 여신팀 송년회를 했고, 우리팀은 분위기가 좋아서 베태랑 팀원분들은 내게 첫 시작을 여기서 맡는 것은 아주 운이 좋은 것이라고 했다. 오늘부터는 개발을 하는 업무를 맡게 되었다. 스프링 프레임워크로 서비스를 만드는 것뿐만 아니라 텔러 화면도 앵귤러로 만들게 된다. 자바스크립트 공부를 했던 것이 다 쓸모가 있다. 여신은 알아야 할 개념이 많...

배경지식 쌓기 - DID

Decentralized Identifier

DID(Decentralized Identifier) 블록체인을 활용한 탈중앙화 신원증명 기존 방식과 달리 개인이 자신의 정보에 완전한 통제권을 갖도록 하는 기술 예) COOV(질병관리청 백신 패스 쿠브) -> 증명 서류를 인증하면 이후 다시 인증할 필요가 없다. GR인증을 통해 이용자의 백신 접종 유무를 확인...

배경지식 쌓기 - 메타버스

Metaverse

메타버스 (Metaverse) 가상, 초월(meta)과 세계, 우주(universe)의 합성어. 3차원 가상세계를 의미한다. 메타버스의 유형 AR/VR기술의 적용 대상(외적인지, 내적인지)과, 현실과의 관계(증강인지, 시뮬레이션인지)에 따라 4가지 유형으로 구분 증강현실AR : 외적대상(물리적 환경)에 증강현실을 혼합시켜놓은 것. ...