분류 전체보기92 [협업 가이드] FExBE 개발 협업 일반적으로 뭐부터 해야 하지?언제 뭘 해야 하는 거지?처음 프로젝트를 진행할 당시 해당 부분을 모르는 상태로 시작하여 많이 어려웠던 기억이 있습니다. 이에 대해 언제 무엇을 하는지와 그 예시 및 양식들을 정리하여 글을 씁니다.아기사자 여러분들의 협업에 도움이 되시길 바랍니다.(아래 양식이 정답이 아닐 수 있습니다. 개발자마다, PM마다 작업 스타일이 다르기에 그저 참고용으로 봐주시면 좋을 것 같습니다.) 프론트가 해야 할 일들은 크게 3가지가 있습니다.UI 담당자와 페이지 요소 관련 논의API 명세서 업데이트 = 페이지 별 프론트 담당자 작성 및 개발 현황 업데이트개발연동 = 백엔드는 배포 후 거진 끝입니다. 이후 프론트가 연동해 보고, 배포하여 다시 연동 테스트를 하면 MVP 개발 단계는 끝이 납니다.. 2026. 5. 20. [SpringBoot] 자동 배포 2026 최종본 (Docker + GitHub Actions) 보호되어 있는 글 입니다. 2026. 5. 14. [SpringBoot] 2026 CRUD 서비스 로직 한동안 개발 작업보단 개발 공부에 조금 집중했었다.그러다 오랜만에 멋쟁이사자처럼 운영진 동료의 CRUD 코드를 보았는데, 조금 놀랐다.엇..? 저거 왜 쓰지? 저게 뭐지? 하는 모르는 코드 패턴이었다. 그 중 하나가 from이었고, map의 활용이었다.이왕 이렇게 모르는 부분이 생긴 김에 오랜만에 실습을 해보자 싶기도 하고, 멋사 아기사자분들이 참고하시길 바라며 이 글을 남긴다. 크게 서비스 코드와 DTO 중 하나로 구성했다. 서비스 코드에선 다양한 방식의 CRUD를, DTO에선 from으로 DTOEntity 변화에 집중해 보길 바란다. 아래 코드는 직접 실습을 마친 코드이기에 오류는 없다.다만, 코드 트랜드 변화를 기록하고 싶어서 작성하는 지금이기에컨트롤러는 큰 변화를 체감하지 못해서 업로드하지 않았다.. 2026. 5. 4. [SpringBoot] Builder Pattern (빌더 패턴) 우리는 데이터를 한번에 담아서 보낼 때 정해진 클래스의 객체를 생성해 객체 내부에 담게 된다.객체를 한 번에 생성하지 않고, 값을 단계적으로 담아 마지막에 build()로 객체를 만드는 패턴이 바로 빌더 패턴이다. @Builderpublic class User { private String email; private String role;} 위 코드를 작성하게 되면 실제론 아래와 같이 코드가 작동한다. public class User { private String email; private String role; User(String email, String role){ this.email = email; this.role = role; } .. 2026. 5. 1. [Springboot] entity <-> DTO 변환 방법 변환 방식 요약 방식변환 책임핵심 코드추천1. Dto 내부 메서드Dtodto.toEntity() / ResponseDto.from(entity)소~중형 ✅2. Entity 내부 메서드Entityentity.toDto() / Item.from(dto)거의 안 씀 ❌3. Service 직접 변환Service빌더/생성자 직접 호출소형 단순용4. Mapper 클래스 (수동)Mappermapper.toEntity(dto)중~대형 ✅5. MapStruct (자동생성)컴파일 자동@Mapper 인터페이스만 선언대형 강추 ✅6. ModelMapper (리플렉션)런타임 자동modelMapper.map(dto, Item.class)느려서 비추package com.example.demo.dto;// ==============.. 2026. 4. 30. [Spring Boot] Service 파일 CRUD 일반적인 로직을 짤 때 다음과 같은 기본 과정을 우선 떠올린다.Controller 요청 → Repository 호출 → Entity 저장/조회/수정/삭제 → DTO 반환 여기서 Repository와 Entity 는 기능 집합 라이브러리와 객체의 개념으로 이해했다.그렇기에 우린 이 기능과 객체를 활용할 코드 파일을 만들어야 한다.그것이 Service 파일이다. 우리는 서비스 파일에서 흔히 로직, 알고리즘이라 부르는 코드를 주로 작성한다.단순히 데이터를 DB에 삽입(Create)하고, 읽고(Read), 수정(Update)하고, 삭제(Delete)하는 것을 넘어 읽은 데이터를 활용해 작업하여 DB에 삽입하거나 기존 DB의 데이터에서 수정한다. 결국엔 백엔드는 데이터를 다루고 관리하는 일을 한다. 우선 가장 기.. 2026. 4. 29. 운영체제 중간 필기 보호되어 있는 글 입니다. 2026. 4. 21. CNN의 정의와 문제점 CNN 구조는 이미지와 같은 공간 구조 데이터를 처리하기 위한 신경망 구조이다.일반 신경망인 MLP는 입력을 1차원으로 펼쳐서 처리하지만CNN은 이미지의 형태인 2D 구조를 유지하면서 처리한다. CNN에 관해 기억할 핵심 개념은 3개이다.1. Local Receptive Field (지역 연결)→ 전체가 아니라 “부분”만 본다2. Weight Sharing (가중치 공유)→ 같은 필터를 전체 이미지에 적용3. Feature Map→ conv 결과로 나온 특징 지도 다만 이렇게 말하면 조금 갑작스럽기에 CNN 모델의 알고리즘 구조 참고하면 좋다.이미지 → Conv → ReLU → Pool → Conv → ReLU → Pool → Flatten → FC → Output 위 구조를 이해하기 위해 필요한 용어.. 2026. 3. 27. 기획 디자이너를 위한 IT 개발 프로젝트 안내서 1 우선 본문을 작성하기 전,멋쟁이사자처럼 가톨릭대 14기 분들은 잘 모르실 이야기로 시작하고자 합니다. 13기에서 전 백엔드 운영진으로 활동했지만 저의 첫 해커톤은 기획과 PM이었습니다.당시 팀원분들은 감사하게도 해커톤이 처음인 저를 많이 배려해 주시고, 도와주셨기에 무사히 마칠 수 있었습니다.그러나 이후에 백엔드 개발자로의 활동이 많아지면서 해커톤이 처음인 많은 기획자와 디자이너 분들이 무엇을 해야 할지, 서로 하는 용어가 무슨 말인지 서로 이해를 못 하는 경우가 잦았습니다. 그동안은 제가 소속된 팀이면, 저에게 첫 해커톤 팀원분들이 주셨던 배려를 제가 전달하고자 노력했습니다.그러던 중 멋사 가대의 대표로 모든 구성원을 챙기고 싶었고,최근 고생해 주시는 디자인 파트장님께 조금의 도움을 드리고자 이 글을 .. 2026. 3. 13. [딥러닝 파이토치 교과서 1장] 머신러닝과 딥러닝 1. 기본 개념 인공지능이란,인간의 지능을 모방한 것 그러한 인공지능의 구현 방법은 크게 머신러닝과 딥러닝으로 나뉜다.정확히는 인공지능이라는 큰 범주에 머신러닝이 속해 있고, 머신러닝에 딥러닝이 속해 있다.(인공지능 > 머신러닝 > 딥러닝) 2. 머신러닝과 딥러닝의 구분둘 다 학습 모델을 제공하여 데이터를 분류한다는 점에서 같지만, 접근 방식에서 차이가 있다. 머신러닝 -> 주어진 데이터를 인간이 먼저 처리(전처리)한다.-> 범용적인 목적을 위해 제작되었고, 데이터 특징을 스스로 추출하지 못한다.그렇기에 추출과정을 인간이 처리해 주어야 한다.즉, 데이터(혹은 이미지) 특성을 컴퓨터(기계)에 인식시키고 학습시켜 문제를 해결한다. 딥러닝-> 인간이 처리해야 하는 부분까지 신경망이 처리한다.즉, 대량의 데이터.. 2026. 3. 5. Port 8080 is already in use 서버 개발에서 런이 실패하면 프롬프트를 확인하게 되는데APPLICATION FAILED TO START 이런 문구가 나오면 그 아래를 자세히 살펴본다. 그 때, Port 8080 is already in use 라는 오류 문구가 나오면 다음과 같이 해결하면 된다. 1. CMD 관리자 모드를 틀고, 아래와 같이 입력한다.netstat -ano | findstr :80802. netstat -ano | findstr :8080 netstat -ano | findstr :8080 그러면 아래와 같이 프롬프트에 뜬다TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 12345여기서 맨 뒤에 있는 12345가 바로 PID (프로세스 ID) 이다.이 PID를.. 2026. 3. 4. [2][Stage 0] 인터럽트(Interrupt)와 폴링(Polling)의 차이를 CPU 동작 관점에서 설명하라. + 비동기 이벤트 인터럽트(Interrupt)는 실행 중에 새로운 실행 거리가 생긴 상황을 이야기한다. "야 비켜와 CPU야 이거 먼저 처리해라!!" 이렇게 키보드, 네트워크 카드, 디스크가 CPU에게 직접 신호를 보낸다. 그럼 CPU는 1. 하던 일을 멈춘다2. 상태를 저장한다 (레지스터 or 스택)3. 급한 일을 처리한다4. 다시 돌아간다 폴링(Polling)은 다른 개체에서 CPU한테 물어보는 것이 아니라 CPU가 계속 물어보는 것이다. " 얘들아 왔어? 할 일 있어? 없어? 나 그대로 실행한다~" 조금 헷갈린 부분은 인터럽트와 폴링은 “방법”이고,“CPU가 하던 일을 멈추고 외부 사건을 처리해야 하는 상황” 자체를 부르는 용어가 아니었다. 이러한 상황 자체는 이벤트 혹은 비동기 이벤트라고 부른다. 비동기 이벤트,.. 2026. 1. 15. 이전 1 2 3 4 ··· 8 다음