분류 전체보기 58

정보처리기사 준비하다가 프로젝트 리펙토링 2단계

먼저 정리 하기 전 엔티티 구성은 별로였기에 정규화 과정을 했습니다. 또한, api는 데이터베이스를 MongoDB가 코스트 측면에서 유리할것으로 확인했습니다. 왜냐하면 조회능력이 뛰어나고 저장시 mysql보다 정형적이지 않기 때문에 여러가지 api를 가져와서 사용할수있기 때문입니다. 정리하자면 여러가지 api를 사용해야하기 때문에 범용성 측면에서 MongoDB가 효율적이라고 판단했습니다. 따라서 유저서비스나 게시판 그리고 댓글은 mysql을 사용하고 api에서 가져오는 정보는 mongoDB를 사용하여 두가지 트랙으로 진행하는것으로 정리했습니다. 따라서 api를 분석해보겠습니다. Available resourcesAreaList one particular area./v4/areas/{id}-OpenAre..

정보처리기사 준비하다가 프로젝트 리펙토링 1단계 스타트

1단계 ERD 전면 재수정 정규화 과정이 이뤄져있지 않은 듯하다 . 한번 수정을 진행해보자위와 같이 정규화 과정을 하면 될듯하다 .또한, 이제 궁금증이 생긴다. 아니 .... 어떻게 가져올까 저번에는 크롤링 방식으로 가져왔지만 아무래도 이렇게 하면 타 사이트에 너무 많은 트래픽이 몰리게 할수도 있다. 그렇다면 api를 쓰는게 좋을듯하다.그런데 kbo는 공식 api를 제공하지 않는다. 그래서 api를 서핑하던 도중 https://www.football-data.org/ football-data.org - ur src for machine readable football dataPurpose of the project football-data.org provides football data and stati..

정보처리기사 준비하다가 프로젝트 리펙토링 1일차

정보처리기사 1과목 2과목 3과목을 공부하다가 프로젝트를 한번 다시 해보는게 어떨까 해서 시작하는 프로젝트 리펙토링 !!! 먼저, 개인프로젝트 말고 국비지원학원에서 했던 프로젝트를 까보고 확인해보면서 현재사항분석부터 다시 시작해보겠습니다. 먼저, 제 인생 첫 프로젝트 인 Sprots-service 프로젝트 입니다. 일단 알고있는건이 이미지를 보면 지금 스포츠 서비스인데 당시 파이썬으로 스포츠를 처리했던 경험 때문에 누락이 되어있는것을 볼수있고 지금 서비스단은 인터페이스와 구현체로 고려하여 확장성을 넓힐 필요가 있어보인다. 또한 현재 보면 엔티티가 정규화가 부족해 최적화가 부족하고 package SportsService.backend.entity;import com.fasterxml.jackson.an..

부록 Spring 어노테이션 정리

@RestController설명 : Spring MVC에서 RESTful 웹 서비스를 구현하기 위한 컨트롤러로, @Controller와 @ResponseBody를 결합한 형태기능 : JSON/XML 응답을 반환하는 REST API 제공사용법: 클래스 선언부에 사용, 메서드 반환값이 자동으로 HTTP 응답 본문에 포함됨@oooMapping (예: @GetMapping, @PostMapping 등)설명 : HTTP 메서드(GET, POST, PUT, DELETE 등)와 URL을 매핑하기 위한 어노테이션기능 : 요청 경로 및 HTTP 메서드에 따른 컨트롤러 메서드 연결사용법: 메서드 위에 @GetMapping("/api") 등으로 사용@RequestParam설명 : HTTP 요청 파라미터를 메서드의 파라미터로..

정보처리기사 1과목 소프트웨어 설계

Part 1. 요구사항확인 Chapter 1. 현행시스템 파악과 분석운영체제와 DB시스템, 미들웨어 등 요구사항을 식별한다. 또한 하위시스템에서 어떤 기술 정보를 가지고 있는지 파악한다.=> 개발하려는 시스템의 개발 범위를 파악한다. 절차: 구성, 기능,인터페이스 파악 -> 아키텍처 및 SW구성단계 파악 -> HW,NETWORK파악 이를 기반으로 자료 수집을 하고 산출물(보고서)를 작성한다. ###이러한 상황에서 궁금증이 생긴다. 그러면 산출물은 어떻게 만들지...? 회사마다 각각 양식이 있겠지만 혹시몰라 구글링과 gpt에게 물어보았다. https://velog.io/@e_juhee/현행-시스템을-분석한-결과를-작성하는-분석-산출물-종류 현행 시스템을 분석한 결과를 작성하는 분석 산출물 종류현행 시스템 ..

코딩테스트-11404 파이썬

📢문제에 풀기 앞서서 코딩테스트를 문제를 풀어감에 있어서 문제 식별 문제 풀이 과정을 어떻게 할지, 코딩, 시간 복잡도, 공간복잡도 그리고 최적화가 가능한 방법이 있지 않을까에 대한 고찰 등으로 진행할 예정입니다. 이 문장은 모든 문제에 제일 상단에 위치할 예정입니다. # 손코딩# 1. 입력 처리# - 첫 줄: 도시 수 N# - 둘째 줄: 버스 수 M# - 이후 M줄: 출발 도시 a, 도착 도시 b, 비용 c## 2. 초기화# - 2차원 DP 테이블(dp[N+1][N+1]) 생성# → dp[i][j] = i에서 j로 가는 최소 비용# → 초기에는 i==j면 0, 나머지는 무한(inf)로 초기화# - 버스 정보 입력 시, 같은 a→b 경로가 여러 개일 수 있으..

코딩 테스트 12865번 - 파이썬

📢문제에 풀기 앞서서 코딩테스트를 문제를 풀어감에 있어서 문제 식별 문제 풀이 과정을 어떻게 할지, 코딩, 시간 복잡도, 공간복잡도 그리고 최적화가 가능한 방법이 있지 않을까에 대한 고찰 등으로 진행할 예정입니다. 이 문장은 모든 문제에 제일 상단에 위치할 예정입니다. 먼저 문제를 확인해보면 두가지 문제가 있다고 볼수있다. 먼저, 무게를 상한선을 지켜야 한다. 또한, 최대의 가치를 가져야 한다. 따라서이문제는 DP방식으로 사용해야한다. 2차배열로 사용해서 진행을 해보면 쉽게 해결될것이라고 생각한다. 먼저,초기 세팅을 해야하는 걸로 받는다 그리고 이에 대해 tuple로 이용해서 저옵들을 저장한다. 그리고 dp관련 2차배열을 만들고 이에 따라 2차배열로 dp이용 반복문을 만든다. n, k = map(i..

코딩 테스트 9251번 - 파이썬

📢문제에 풀기 앞서서 코딩테스트를 문제를 풀어감에 있어서 문제 식별 문제 풀이 과정을 어떻게 할지 중간 로그, 코딩, 시간 복잡도, 공간복잡도 그리고 최적화가 가능한 방법이 있지 않을까에 대한 고찰 등으로 진행할 예정입니다. 이 문장은 모든 문제에 제일 상단에 위치할 예정입니다. 먼저 문제 9251번은 보면 https://www.acmicpc.net/problem/9251 알수있다 전형적인 LCS문제이다. 이것에 대한 것으로 나는 여러가지가 있지만 DP동적 프로그램 방식이 가장 효율적이라고 생각했다. 왜냐하면 각 입력값에 대한 처리를 위해서 반복이 필수적이며 최적 부분을 찾아내야 하기 때문이다. 암기한내용 ㅎㅎ 그러면 다음으로 넘어가 보자 1. 일단 각 항목에 대한 내용을 가져와야 할것이다. Ja..

알고리즘 - 자료구조

배열과 리스트배열은 메모리의 연속공간에 값이 채워져있는 형태의 자료구조이며 인덱스를 통해 참조 하고 자료형의 값만 저장함.단, 배열의 크기는 선언시에만 할수있음. 수정불가 리스트값과 포인터를 묶은 노드를 이용해서 연결한 자료구조 인덱스가 없어 헤더 부터 순서대로 접근해야 함.속도가 느림 단, 삽입 삭제가 빠름 또한, 선언시에 크기를 정하지 않아 가변성있는 데이터는 유동적으로 사용가능함. 구간 합사용하기 위해서 먼저 합배열을 구해야 함. 일정범위의 합을 구하는 시간 복잡도가 감소함. public class PrefixSumExample { public static void main(String[] args) { // 원본 배열 int[] arr = {3, 2, 4, 5, 1}..

러닝 스파크 1일차 - 스파크의 이해

스파크 어플리케이션의 개념  spark Session : 스파크 코어 기능과 상호작용할수있는 진입점을 제공함. api로 프로그램이할수있도록 제공하는 객체 스프링에서 controller를 담당하는 것이다. job : 스파크 엑션에 대한 응답으로 생성되는 여러 태스크로 이루어진 병렬 연산        모든 스파크 연산이 하나의 스테이징 안에서 실행될수 없음 따라서 여러 스테이지로 나눠저야함. stage : 각 잡은 스테이지라 불리는 서로 의존성을 가지는 다수의 태스크 모음  task : 스파크 이그제큐터로 보내지는 작업 실행의 가장 기본적인 단위           트랜스 포메이션은 불변성의 특징을 가진 원본 데이터를 수정하지 않고 하나의 스파크 데이터 프레임을 새로운 데이            터 프레임으로 ..

빅데이터 공부 2025.02.17