728x90
반응형
-
-
Stock Dashboard 개발기 #0 - 맥에서 Java 개발 환경 셋팅하기 (JDK 21 + VS Code) 맥에서 Java 개발 환경 셋팅하기 (JDK 21 + VS Code)들어가며Java 8 기반 금융권 레거시 환경에서 일하다 보면, 요즘 기업들이 원하는 기술 스택과 거리가 생긴다.현대적인 Java 개발 환경을 처음 셋팅하면서 겪은 과정을 그대로 정리했다.Java 버전 명칭, 헷갈리지 말자금융권에서 Java 1.8을 쓰다 보면 Java 21이 엄청난 버전 차이처럼 느껴진다.근데 사실 그렇지 않다.Java 1.6 = Java 6Java 1.7 = Java 7Java 1.8 = Java 8 ← 금융권에서 많이 쓰는 버전Java 9, 10, 11 ... 21 ← 9부터 숫자 그대로Oracle이 Java 9부터 버전 명칭 방식을 바꿨다. 1.x → 숫자.즉, Java 1.8과 Java 21은 8 → 21, 1.. -
[DAP자격증] 과목5 - 오버헤드(Overhead)란? 오버헤드(Overhead)란?**오버헤드(Overhead)**는 어떤 작업을 수행할 때 추가적으로 발생하는 비용(자원, 시간, 메모리 등)을 의미해.즉, 실제 작업을 수행하는 데 직접적인 기여를 하지 않지만, 부가적으로 필요한 것들이야.1. 오버헤드의 종류✅ 성능(연산) 오버헤드프로그램이나 시스템이 어떤 작업을 수행하는 데 필요한 추가적인 연산 비용예시:가상화 환경에서 CPU가 가상 머신을 관리하는 데 드는 연산 비용DB에서 쿼리 실행 시 인덱스를 유지하거나 캐시를 관리하는 데 드는 연산✅ 메모리 오버헤드프로그램이 실행될 때 추가적으로 소비하는 메모리예시:Python에서 동적 메모리 할당 시 발생하는 추가적인 메모리 사용량DB에서 트랜잭션을 관리하기 위한 로그 저장 공간✅ 네트워크 오버헤드데이터를 전송할..
-
[알고리즘] Java - 기초편 시작하며알고리즘 공부를 해야지 해야지 말만하다가, 자바 기본기 복기도 할겸 알고리즘 공부를 시작해보려고 한다. 프로그래머스를 사용해 기초부터 공부할 예정.Sting 기본 개념 String s = "Hello World";// 1. 길이s.length(); // 11// 2. 특정 위치 문자 가져오기s.charAt(0); // 'H'// 3. 문자열 자르기s.substring(0, 5); // "Hello" (0번 이상 5번 미만)s.substring(6); // "World" (6번부터 끝까지)// 4. 문자열 → 문자 배열s.toCharArray(); // ['..
-
Stock Dashboard 개발기 #6 - Spring Boot에서 Google Sheet 데이터를 읽어와 대시보드에 출력하기 시작이전 글에서는 PostgreSQL 설치와 Spring Boot 프로젝트 생성까지 진행했다.이번 단계에서는 실제 데이터를 화면에 출력해보기로 했다.Stock Dashboard 프로젝트의 최종 목표는 여러 증권사에 흩어져 있는 보유 종목을 한 화면에서 관리하는 것이다.하지만 처음부터 증권사 API 연동이나 데이터베이스 설계를 진행하기보다는 빠르게 결과를 확인하는 것이 중요하다고 판단했다.그래서 우선 Google Sheet를 데이터 소스로 사용하기로 했다.왜 Google Sheet를 사용하는가현재 보유 종목 정보는 Google Sheet에서 관리하고 있다.대표적으로 다음과 같은 정보가 있다.종목명보유수량평균단가현재가평가금액미실현손익수익률보유비중초기 개발 단계에서는종목 추가목표가 수정손절가 수정등을 자주 변.. -
Stock Dashboard 개발기 #5 - Spring Boot 프로젝트 생성부터 첫 실행까지 시작지난 글에서는 프로젝트 기획과 PostgreSQL 설치를 진행했다.이번에는 실제 Spring Boot 프로젝트를 생성하고 실행까지 진행했다.생각보다 삽질도 있었고, 그 과정에서 Spring Boot의 동작 구조를 조금 더 이해할 수 있었다.프로젝트 생성Spring Initializr를 이용해 프로젝트를 생성했다.선택한 옵션은 다음과 같다.https://start.spring.io/?utm_source=chatgpt.comProjectGradle - GroovyLanguageJavaJava Version21Groupcom.stockdashboardArtifactstock-dashboard선택한 DependencySpring Web웹 서버(Tomcat) 및 Controller 기능 제공Spring Dat.. -
Stock Dashboard 개발기 #4 - Mac에서 PostgreSQL 설치하다가 삽질한 이야기 시작Stock Dashboard 프로젝트를 진행하면서 PostgreSQL을 설치하게 되었다.개인적으로 PostgreSQL은 처음 사용해보는 DB라 설치부터 차근차근 진행했다.환경은 다음과 같다.Mac Mini (Apple Silicon)HomebrewPostgreSQL 17Spring Boot 프로젝트PostgreSQL 설치우선 Homebrew를 이용해 설치했다.brew install postgresql@17 설치가 완료되면 버전을 확인할 수 있다.psql --version 결과psql (PostgreSQL) 17.10 (Homebrew) 여기까지는 문제없이 진행되었다.서비스 실행PostgreSQL을 백그라운드 서비스로 실행하기 위해 아래 명령어를 실행했다.brew services start postgr.. -
Stock Dashboard 개발기 #3 - 프로젝트를 시작 전에 꼭 알아야 할 개념들 - Maven, Gradle, JPA, PostgreSQL 개념 정리 Spring Boot 프로젝트를 시작하기 전에 꼭 알아야 할 개념들왜 이 글을 쓰게 되었나,최근 개인 프로젝트로 주식 투자 대시보드를 만들기 시작했다.프로젝트를 시작하면서 Maven, Gradle, YAML, JPA 같은 용어를 다시 정리할 필요가 있었고, 처음 공부하는 입장에서는 개념이 헷갈리는 부분이 많았다.이번 글에서는 프로젝트를 진행하면서 배운 핵심 개념들을 정리해보려고 한다.Maven과 Gradle은 무엇일까?Java 프로젝트를 개발하다 보면 수많은 라이브러리가 필요하다.예를 들어Spring BootPostgreSQL DriverThymeleafLombok등을 직접 다운로드해서 관리하는 것은 매우 번거롭다.Maven과 Gradle은 이러한 라이브러리 다운로드와 프로젝트 빌드를 자동으로 관리해주는..
728x90