일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- S&P500
- 기업분석
- Java
- etf
- StringBuffer
- 백준
- 금리인하
- 인플레이션
- 프로그래머스
- XLF
- 현금흐름표
- FCF
- mco
- 무디스
- object
- 주린이
- 접근제어자
- 알고리즘
- 제태크
- 금리인상
- 배당성장
- javascript
- 그리디 알고리즘
- 잉여현금흐름
- 다형성
- 오버라이딩
- 주식
- 객체지향
- 자바
- 미국주식
- Today
- Total
목록2024/12 (3)
오늘의하루
RSA 알고리즘은 공개키와 비밀키라는 두 개의 키를 사용하여 데이터를 암호화하고 복호화하는 방식입니다.이 알고리즘의 핵심은 두 개의 소수를 사용하여 공개키와 비밀키를 생성하고 이를 통해 안전하게 정보를 전달하는 것입니다.공개키 : 공개키는 공유되며 암호화에 사용됩니다.비밀키 : 공유되면 안되며 암호화된 데이터를 복호화하는 데 사용됩니다.RSA 알고리즘RSA 알고리즘을 구현하기 위한 몇가지 과정은 아래와 같습니다.1. 2개의 소수 선택 및 N 추출소수 P와 Q를 선택한 후 N을 계산합니다.예를 들어 P = 5, Q = 11를 선택한다면 N = P * Q = 55가 됩니다. 중요한 점은 P와 Q가 노출되면 공개키와 비밀키를 만들 수 있기 때문에 꼭 제거해야합니다.2. 오일러 피 함수( φ(N) ) 계산오일러..
Java에서는 Pattern.matches 메소드를 통해 정규표현식을 쉽게 사용할 수 있지만 내부 동작 원리를 제대로 이해하지 못하면 성능 문제가 발생할 수 있습니다. Pattern.matches의 동작 원리Pattern.matches(String regex, CharSequence input)는 아래와 같은 과정을 거쳐 입력 문자열을 매칭합니다.> 정규표현식 컴파일메소드 호출 시 입력받은 정규표현식(regex)을 NFA(비결정적 유한 오토마타, Non-deterministic Finite Automaton)에서 정규표현식에 따라 DFA(결정적 유한 오토마타, Deterministic Finite Automaton)로 변환하며 이 과정에서 정규표현식을 해석하고 효율적으로 실행될 수 있는 내부 구조를 생성..
문제점 : 깊은 상속 관계의 DTO 무리들...레거시 프로젝트에서는 각각의 DTO들이 모두 깊은 상속 관계를 갖은 채 하나씩 정의되어 있으며 해당 DTO를 사용해서 모든 행위에 대해 사용하고 있었습니다.불필요한 데이터 전송요청과 응답에 불필요한 필드들이 포함되어 있습니다.유지보수 어려움새로운 필드 추가시 모든 DTO를 검토해야 할 수 있습니다.리팩토링 방향 : 상속에서 컴포지션으로비록 정상적으로 작동하고 있지만 앞으로도 계속해서 사용될 제품이기 때문에 데이터 전송의 효율성과 유지 보수성을 개선하기 위해 리팩토링을 결정했습니다. 처음 리팩토링 관련 이야기를 했을때 "이미 동작하는 프로젝트를 굳이 수정할 필요가 있는가?"라는 반응이였지만 내가 생각하는 중요하다고 생각드는 점을 강조하며 설득했습니다.명확성요청..