Project 7

스프링 NEWSFEED 협업 프로젝트

GitHub - sparta-sixsense/newsfeedContribute to sparta-sixsense/newsfeed development by creating an account on GitHub.github.com    KEEP📌 현재 만족하고 계속 이어가고 싶은 = 유지할 부분나를 위한 커밋이 아니라 팀원을 위한 커밋을 하기 위해 메시지 내용을 어떻게 쓸 지 고민해프로젝트를 진행하면서 활용하면 좋을 것 같은 다양한 로직과 기술을 사용하고 공유함 (코드 컨벤션, 소스패키지 구조 시각화 등)정규표현식과 regxp 를 사용해 입력패턴을 적용해 봄팀의 분위기를 긍정적으로 이끌어가기 위해 노력함 깃 컨벤션을 미리 정해놓은 부분이 좋았음코드의 안정성을 위해 공통 기능을 우선적으로 준비하고 프로젝트..

Project/Spring 2024.12.27

일정표를 만들어 보자! 업데이트!

트러블 슈팅1. 배경웹 개발 숙련에 입문하였다.사용 기술은 jpa와 쿠키,세션이 추가되었다.웹 개발의 기초에서 진행하였던 일정표 프로젝트를 개량하는 것이 발제였다. 2. 발단처음은 아니였던 만큼 머리속에 웹 개발의 전재라인이 떠올랐던 점이 크게 작용했다.확실히 저번보다는 편하게 진행이 가능했다는 점이 조금은 성장했다는 것을 느낄 수 있었다.하지만 문제가 없지는 않았다.프론트와 함께 쓰는것을 목표로 했다보니, 자연스럽게 프로젝트도 프론트를 구성했었는데, 튜터님의 조언이 백엔드에 치중해서 코드를 작성해보라는 내용이 있다는 것을 너무 늦게 파악했다..코드적인 문제로는, 중간에 프론트에서 데이터를 한번에 2가지 servlet으로 전송하려했는데 그게 좀처람 잘 되지 않았다.그 외에도 세션을 사용하려다가 생기는 오..

Project/Spring 2024.12.19

일정표를 만들어 보자!

트러블 슈팅1. 배경드디어 웹 개발의 기초에 입문하였다.사용 기술은 spring, jsp, jdbc, mysql이다.웹 개발의 기초를 위한 일정표를 만드는 발제를 진행하였다.2. 발단처음부터 끝까지 문제가 상당히 많았다.데이터의 타입 정의는 문제가 없었다예외처리에서 예외처리가 무한으로 재귀되는 문제가 있어 확인해 보았다.매핑 형식에 대한 오류가 등장하였다.데이터 로드 형식, 범위에 대한 문제가 발생하였다.SQL문의 경우 오랜만에 사용하다보니, 조금 익숙한 감이 떨어졌다.3. 전개&위기1. Service이 파트는 단순히 클라이언트의 요청을 처리하는 파트였어서 큰 문제는 없었다.다만 지금 보니 파일이나 폴더명이 service로 되어있어야했다.2. exception위와 같이 대분의 오류를 판단하고 메시지 형태..

Project/Spring 2024.12.09

[JAVA] 키오스크

트러블 슈팅 1. 배경전에 했던 과제를 반복해서 좀더 현업에서 진행하는 것과 같은 형식의 코딩을 진행하였다.기본적으로 자바 기능을 재 학습하는 목적으로 사용된 프로젝트였다.2. 발단기본적으로 눈에 띄는 에러는 없었다.다만 코드가 요구사항이 길어짐으로서 복잡해지는 점이 문제가 되었다.3. 전개 기본적으로 코드가 길어지고 클래스가 늘면서 위와 같이 한 폴더에 7개의 파일이 생성되게 되었다.많은 수는 아닐지 모르지만 가장 중요한 점은, 이 파일이 100개가 넘어가면 한 폴더에서 다 처리하기엔 가시성이 너무 떨어질 수 있다는 점이다.두번째는 코드의 조건문의 형식으로 인해 가시성이 많이 떨어져 보인다.실제로 객체 지향적인 코딩을 진행했지만, 이것만으로는 부족한지 내용에 수정이 필요해 보인다. 4. 위기역시 폴더를..

Project/JAVA 2024.11.26

[ Spring ] 쇼핑몰 프로젝트 회고

★요구사항 분석과 기초 설계의 중요성코드가 정말 길어지고 나니, 처음에 설계를 잘못했을 때 너무너무 큰 대가를 치르게 되었다.맨 처음에 요구사항을 정확히 분석하고 완전한 설계를 해두어야 추후 문제가 없다.백엔드 프로젝트의 준비물자바, 스프링, JPA, 서버 사이드 템플릿(Thymeleaf), DB백엔드 프로젝트의 구성resources : 프론트엔드 + 애플리케이션 설정 파일Java : 백엔드 전반엔티티( Entity) & 빈(Bean)1. 엔티티(Entity)정의: 엔티티는 주로 데이터베이스 테이블에 매핑되는 객체입니다. 데이터베이스에서 특정 테이블과 일대일 매핑을 하여, 해당 테이블의 데이터를 객체로 다룰 수 있게 해줍니다.용도: 엔티티는 주로 **JPA(Java Persistence API)**와 함..

Project/Spring 2024.11.25

[DE] 고객 행동 분석을 통한 맞춤형 마케팅 전략 수립

프로젝트 구상  목표여러 출처에서 수집한 고객 데이터를 기반으로 행동 패턴을 분석하여 개인 맞춤형 마케팅 전략을 수립합니다. 이 프로젝트는 데이터 레이크, 웨어하우스, 데이터 마트, 그리고 시각화 도구를 통합하여 최적의 분석 환경을 구축하고자 합니다.기술 스택데이터 레이크: AWS S3 (원시 데이터를 저장)데이터 웨어하우스: AWS Redshift (정제된 데이터를 효율적으로 쿼리하고 분석)데이터 마트: Redshift 기반 데이터 마트 (자주 사용하는 고객 세그먼트 데이터를 저장)데이터 처리: Apache Spark (데이터 레이크의 원본 데이터를 전처리하고 정제)시각화 도구: Apache Superset, Tableau (분석 결과를 시각화하여 대시보드 형태로 제공)구현 단계데이터 수집 및 저장고객..

Project/DE 2024.11.16

[JAVA] 계산기를 만들어보자!

요구사항 정의 및 설계요구사항 정의어떤 계산기 기능이 필요한지 명확히 합니다.예를 들어, 기본적인 사칙연산(덧셈, 뺄셈, 곱셈, 나눗셈), 괄호 사용, 제곱근, 제곱 등.사용자 인터페이스 방식 결정 : 콘솔 기반인지, GUI(그래픽 사용자 인터페이스) 기반인지.예외 처리 : 0으로 나누기와 같은 오류를 어떻게 처리할지 결정합니다.설계클래스 다이어그램: 계산기에 필요한 클래스를 설계합니다. 예를 들어, Calculator, Operation, Parser 등이 될 수 있습니다.기능 분해: 주요 기능을 메소드로 분리합니다. 예를 들어, add(), subtract(), multiply(), divide(), evaluateExpression() 등.데이터 흐름 설계: 데이터가 클래스 간에 어떻게 흐를지를 결..

Project/JAVA 2024.11.13