개발

    [Spring Boot] mysql 연결 삽질기

    spring boot, gradle로 프로젝트 세팅을 하고 mysql을 연동하려고 했다. 그런데 mysql 과 연결하는 의존성을 추가하는 과정에서 계속 실패했다. runtimeOnly 'mysql:mysql-connector-java' 나는 위와 같이 의존성을 추가했고 구글링을 해봐도 다들 위와 같이 한다. 그러다가 jdbc의 버전을 명시해줬더니 정상적으로 연결됐다.. runtimeOnly 'mysql:mysql-connector-java:8.0.32' 근데 다른 사람들은 버전을 명시 안해줘도 잘 되는게 이상했다. 그래서 버전을 명시 안해줘도 되는 걸 찾아보다가 아래와 같은걸 발견했다. runtimeOnly 'com.mysql:mysql-connector-j' 결국 마지막 코드로 의존성을 해결했다..

    [정리] 브라우저의 작동 방식

    브라우저의 구조는 다음과 같다. 1. 사용자 인터페이스 여기에는 주소 표시줄, 뒤로/앞으로 버튼, 북마크 메뉴 등이 포함된다. 요청한 페이지가 표시되는 창을 제외한 브라우저 디스플레이의 모든 부분이다. 2. 브라우저 엔진 UI와 렌더링 엔진간의 작업을 마셜링한다. 마셜링이란 한 객체의 메모리에서 표현방식을 저장 또는 전송에 적합한 다른 데이터 형식으로 변환하는 과정이다. 3. 렌더링 엔진 요청된 콘텐츠 표시를 담당한다. 예를 들어 요청한 콘텐츠가 HTML인 경우 렌더링 엔진은 HTML과 CSS를 구문 분석하고 콘텐츠를 화면에 표시한다. 4. 네트워킹 HTTP 요청과 같은 네트워크 호출을 위해 사용한다. 플랫폼의 독립적인 인터페이스이며 각 플랫폼의 하부에서 실행된다. 5. UI 백엔드 콤보 상자 및 창과 ..

    [정리] 개발 방법론 (Water Fall vs Agile)

    프로젝트마다 프로젝트의 성격, 규모, 일정, 비용등에 따라 개발 방법론을 선택해야한다. 그 중에서도 대표적인 개발방법론인 폭포수(Water Fall) 방법론과 애자일(scrum) 방법론을 설명하려고 한다. 1. 폭포수 방법론 (water fall) 폭포수 방법론은 기획, 분석, 설계, 구현, 테스트, 유지보수 단계로 이루어진 선형적인 개발 방법론이다. 각 단계는 이전 단계의 결과물을 바탕으로 진행되며, 다음 단계로 넘어가기 전에 이전 단계의 결과물이 검증되어야 한다. 이 방법론은 전체 프로젝트를 미리 계획하고 모든 기능을 상세하게 정의해 놓아야 하기 때문에 초기 비용이 많이 들어가고 변경사항이 생긴다면 수정하기 어렵다. 하지만 일관된 품질을 유지할 수 있고 프로젝트 일정을 예측하기 쉬워서 대규모 프로젝트..

    [React] i18next

    i18n은 internationalization 의 약자로 i와 n사이에 18글자가 들어있기 때문에 i18n이라고 한다. i18n은 어플리케이션을 다양한 언어에 쉽게 적용할 수 있도록 하는 개발 프로세스이다. 각 특정 로케일에 대해 다시 개발을 할 필요 없이 전 세계 사용자가 동일한 어플리케이션을 사용할 수 있도록 한다. 예를 들면 홈페이지의 영문버전, 한글버전이 그 예이다. React에서는 이를 지원해주는 i18next라는 라이브러리가 있다. 1. i18n 세팅 src폴더에 아래와 같은 폴더들을 만들어준다. // i18n/index.js import i18n from "i18next"; import { initReactI18next } from "react-i18next"; import en from ..

    [정리] PWA란 무엇인가? ( + serviceWorker)

    1. PWA란? PWA란 Progressive Web Application의 약자로 웹 기술의 유연성과 접근성을 활용하면서 모바일 앱과 유사한 사용자 경험을 제공하는 웹 어플리케이션 유형이다. PWA는 최신 웹 브라우저가 있는 모든 장치에서 작동하도록 설계되어 플랫폼 간 호환성을 제공하고 플랫폼별 개발의 필요성을 줄인다. 2. PWA의 특징 (1) 반응형 디자인 PWA는 기본적으로 반응형 디자인을 염두하여 개발해야 한다. 반응형 디자인은 다양한 화면 크기와 방향에 맞게 레이아웃과 콘텐츠를 자동으로 조정한다. 이를 통해 스마트폰, 태블릿 및 데스크탑과 같은 다양한 장치에서 일관된 사용자 경험을 보장한다. (2) 연결 독립성 PWA는 기본 브라우저 스레드와 별도로 백그라운드에서 실행되는 서비스워커를 사용한다..

    [JAVA] 입력 받은 숫자가 소수인지 판단하는 문제 뜯어보기

    입력받은 숫자가 소수인지 아닌지 판별하는 문제를 통해 배운게 꽤 많아서 정리하려고 한다. 첫 번째 내가 푼 풀이이다. import java.util.Scanner; public class FindPrimeNumberRunner { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("Input any number!"); boolean isPrime = true; int number = input.nextInt(); for (int i = 2; i < Math.sqrt(number); i++) { if (number % i == 0) { isPrime = false; } } Sys..