본문 바로가기

분류 전체보기

(35)
Hirello KPT 회고 Keep:지속적인 소통, 질의응답, 토론, 문제를 포기하지 않고 해결하려는 자세,날이 갈수록 의견을 말하기 편해졌는데, 이는 서로의 배려가 있었기에 가능한 일이었던 듯..어려워도, 아파도 하려고 했던 그 의지,깃 컨벤션을 통해 충돌을 최소화하는 법,생성자나, 메서드 방식의 컨벤션(설계도의 양식의 통일화) Problem:테스트 코드 부족, 프론트엔드 구현 실패, 미약한 깃 컨벤션 적용,코드리뷰와 머지를 한 사람만 맡다보니 하염없이 기다려야 했던 점,issue 가 세분화 되지 않아서 충돌을 겪음,중간의 역할분담의 부재( ex . 기본 CRUD 구현 후의 역할이 애매 했다.),한 사람에 업무과중으로 인해 부담감과 프로젝트의 지체,프론트를 꺼려하는 성향,얄팍한 프론트 지식,주말엔 쉬고 싶은 안타까운 체력 Try..
심화 프로젝트 : Trello(Hirello) S.A 1. 프로젝트 제목/간단 설명Hirello는 B10조 만의 칸반 보드로 Trello를 를 차용하여 만들었습니다칸반 보드: 협업 툴로 팀의 업무를 시각화한 프로젝트 관리의 한 형태입니다. 팀이 프로젝트를 시작할 때, 누가 어떤 업무를 담당하는지, 업무가 어떤 단계인지, 업무의 마감이 잘 되는지 파악할 수 있도록 업무를 간단하게 시각화하는 방법이 필요하기 때문에 칸반보드를 활용하면 효율적인 프로젝트 관리가 가능합니다.   2. 와이어프레임   3. ERD  4. API 명세서https://www.notion.so/teamsparta/cd06868efd764873a2358db78e84a3c8?v=a3f37944219d46dfbe647cb4d0c639d8&pvs=4 API 명세서 | NotionBuilt wit..
#32 Mockito Mockito는 Java 개발에서 널리 사용되는 목(mock) 객체 프레임워크로, 단위 테스트를 작성할 때 실제 객체를 사용하지 않고 목 객체를 만들어 사용함으로써 테스트를 보다 쉽게 수행할 수 있게 해줍니다. Mockito를 사용하면 의존성을 분리하여 테스트할 수 있고, 테스트 시 외부 시스템이나 복잡한 객체와의 상호작용을 모방할 수 있습니다 public class UserService { public String getUserGreeting(Long userId) { // 실제 구현에서는 데이터베이스나 다른 서비스 호출을 할 수 있음 if (userId == 1L) { return "Hello, User 1!"; } else { ..
#31 단위 테스트와 통합 테스트 단위 테스트(Unit Test)단위 테스트는 애플리케이션의 작은 단위(보통 메서드 또는 클래스)를 독립적으로 테스트하는 것을 말합니다. 단위 테스트의 주요 목표는 코드의 특정 부분이 예상대로 작동하는지 확인하는 것입니다. 단위 테스트를 작성할 때는 테스트 대상 코드의 외부 의존성을 최소화하는 것이 중요합니다. 이를 위해 Mock 객체를 자주 사용합니다.   장점빠른 실행 속도문제 발생 지점이 명확하게 드러남코드 변경 시 빠른 피드백 제공주요 라이브러리 및 도구JUnit: 가장 많이 사용되는 테스트 프레임워크Mockito: Mock 객체를 쉽게 만들고 사용할 수 있도록 도와주는 라이브러리@Servicepublic class CalculatorService { public int add(int a, i..
#30 AOP Aspect-Oriented Programming (AOP, 관점 지향 프로그래밍)은 소프트웨어 개발의 주요 관심사를 모듈화하는 프로그래밍 패러다임입니다. 주 관심사 외의 횡단 관심사(로깅, 보안, 트랜잭션 관리 등)를 효과적으로 분리하여 코드의 중복을 줄이고 유지보수성을 높이는 데 중점을 둡니다.   AOP의 기본 개념 횡단 관심사(Cross-Cutting Concerns):애플리케이션의 핵심 로직에 영향을 주지 않으면서 여러 모듈에 공통적으로 적용되는 기능입니다. 예를 들어, 로깅, 보안, 트랜잭션 관리 등이 있습니다.Aspect:횡단 관심사를 모듈화한 것입니다. Aspect는 Advice와 Pointcut을 포함합니다.Advice:실제로 수행되는 코드를 의미합니다. Advice는 특정 시점에 실행될..
#29 @ComponentScan 과 빈의 스코프 @ComponentScan@ComponentScan은 Spring이 특정 패키지에서 @Component, @Service, @Repository, @Controller 등의 애노테이션이 붙은 클래스를 자동으로 검색하고, 빈으로 등록하도록 지시하는 애노테이션입니다. 이를 통해 개발자는 일일이 빈을 설정 파일에 등록하지 않고도 자동으로 스캔되어 빈으로 관리됩니다. @Configuration@ComponentScan(basePackages = "com.example.myapp")public class AppConfig {}이렇게 설정하면, com.example.myapp 패키지 및 그 하위 패키지에서 @Component, @Service, @Repository, @Controller 애노테이션이 붙은 모든 클..
#28 KPT 회고 정리 Keep: 초반 회의 때 원활한 소통과 적극적인 자세로 다른 팀들보다 빠른 역할 분담, 와이어프레임이나 erd 작성이 순조로웠던 점이 좋았습니다 Problem: 초반에 진행은 빨라서 좋았으나 필수 요구사항 밖에 하지못하는 아쉬움이 있습니다또 깃허브에서 풀리퀘스트를 머지하지 않고 팀원들의 브랜치의 코드를 복사 붙여넣기를 통한 병합에서 특정 팀원의 코드 누락이 발생한 것이 문제였습니다  Try: 진행이 더디지 않게 원활히 되기 위해 일정과 휴일을 모두 파악해 주어진 시간에 가능한 요구사항들을 구현해내는 것이 좋겠다고 생각합니다수동 머지 부분은 팀원과 상의 후 머지하는 사람을 정하고 깃허브로 풀리퀘리스트를 머지하면서 충돌을 해결하여 다른 팀원의 코드 누락을 최소화 하는게 좋을것 같습니다
#27 Refresh Token "Refresh Token(리프레시 토큰)"은 OAuth 2.0 프로토콜에서 사용되는 보안 관련 개념 중 하나입니다. 주로 웹 애플리케이션 또는 모바일 애플리케이션과 같은 클라이언트가 서버로부터 인증 및 액세스 토큰을 요청할 때 사용됩니다. 이 토큰은 보통 액세스 토큰의 유효기간이 만료되었을 때 새로운 액세스 토큰을 발급받기 위해 사용됩니다.  리프레시 토큰의 역할액세스 토큰 갱신: 리프레시 토큰을 사용하여 만료된 액세스 토큰을 새로 발급받을 수 있습니다.사용자 인증: 클라이언트가 서버로부터 새로운 액세스 토큰을 요청할 때, 사용자의 인증 상태를 확인합니다.보안 강화: 리프레시 토큰은 짧은 유효기간을 가지지 않아서, 만약 리프레시 토큰이 유출되더라도 공격자가 액세스를 계속해서 요청하는 것을 방지할 수 있..