728x90 Spring40 moa(1) Main DB H2 Database(2.2.224) Web Server(WS) Apache Web Application Server(WAS) Tomcat 10 Language Java 17 Framework Spring Boot 3(3.2.2) Server local → EC2 || Virtual Machine Data Crawling BS4, playwright Language Python 3.10 Test Stress Tester nGrinder Code Test JUnit5 Monitor APM Scouter 부하테스트를 통한 성능 개선 보고서를 만들려한다. JPA를 사용한 게시판과 데이터를 수집하여 클라이언트 요청에 응답하는 기본이 되는 형태의 미니프로젝트이다 우선 시큐리티를 제외하고 회원과 게시.. 2024. 2. 15. 프로젝트 준비 https://youtu.be/FbLjQjuTkVA?si=1hiA7kbM-UoNEr3o Spring Framework에 대한 이해 간단한 쇼핑몰 프로젝트 수준 포트폴리오 인층 체계와 최소한의 보안 상식 지식기반 사용자 인증(ID, PW) 전형적인 게시판은 참고자료 없이 개발가능 지식기반 사용자 *인증, 파일 첨부 가능한 게시판, 글작성(open editor) 댓글 + 대댓글, 좋아요 / 싫어요 계정에 다른 접근 통제 * 인증 방법: 소재, 생체, 위치(QR: 출석인증), 지식 객관적 기준에 따른 성능 증명 실험을 위한 쇼핑몰 시스템 구축 자신이 개발한 산출물 3-Tier 구조를 설치 기능요건 정의 및 테스트 결과서 작성 요구사항 정의, 기능구격, 테스트 방법 및 결과 부하생성 시스템 및 APM(Appli.. 2024. 2. 7. 좋은 객체 지향 설계 5가지 원칙(SOLID) 로버트 마틴의 5가지 원칙 SRP(single responsibility principle) OCP(open/closed principle) LSP(Liskov substitution principle) ISP(Interface segregation principle) DIP(Dependency inversion principle) 1. SRP 단일 책임 원칙 한 클래스는 하나의 책임만 가져야 한다. 클래스를 변경했을 때 파급 효과가 적어야 한다. 따라서 책임은 클래스 변경 시 다른 영향이 없을 만큼 하나의 클래스로 만들어야 한다는 의미이다 2. OCP 개방-폐쇄 원칙 확장에는 열려 있으나 변경에는 닫혀 있어야 한다. 언뜻 보면 다형성을 의미하는 듯 하나 아래 사진을 보면 원칙에 어긋난다는 것을 알 수 .. 2024. 1. 13. 스프링의 핵심 스프링은 자바 언어 기반의 프레임워크 자바 언어의 특징은 객체 지향 스프링은 객체 지향 언어의 강력한 특징을 살린 프레임워크 스프링은 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와줌 객체 지향 특징 추상화 캡슐화 상속 다형성 객체지향 프로그래밍 명령어의 목록이 아닌 독립된 단위, 객체들의 모임으로 파악하고자 하는 것 유연하고 변경이 용이 레고 블록 조립하듯이 컴포넌트를 쉽고 유연하게 변경하면서 개발하기 위해 다형성 운전자 역할, 자동자 역할이 있을 때 운전자는 자동차가 바뀌어도 운전을 할 수 있다. 클라이언트는 프로그램의 내부가 바뀌더라도 사용가능하다 새로운 기능이 나와도 클라이언트를 바꾸지 않아도 된다 역할과 구현을 분리 역할과 구현으로 구분하면 세상이 단순해지고, 유연해지며 변경도 편리하다 클라.. 2024. 1. 13. 스프링 가볍게 느껴보자 (4) 이번 내용을 정리하면서 구체적으로 DB접근 기술에 대해 구분지어 보며 직접 코드로 차이점을 느껴 볼 수 있었다. 가장 인상 깊었던 것은 테스트코드를 간단하게라도 사용해 볼 수 있어 프로젝트 참여시 큰 도움이 될 것이라는 확신을 느꼈다. 굉장히 유용하며 프로그램을 재실행 하거나 DB를 임의로 변경하면서 주먹구구로 하지 않아도 되어 정말 만족스럽다. 구글 트렌드에서 확인한 자료이다 JPA에 대한 관심이 높다는 것을 단번에 알 수 있다. JPA가 결코 신기술이 아니며 중요한 분야로 자리 잡힌 만큼 탄탄히 공부해서 높은 활용도를 가져야 한다 스프링 가볍게 느껴보자 (1) 스프링 가볍게 느껴보자 (1) 회원가입과 가입된 회원조회를 위한 간단한 사이트를 만들어보자 목적은 3가지로 MVC 패턴의 흐름 파악 스프링 빈.. 2024. 1. 13. 스프링 가볍게 느껴보자 (3) 마지막으로 AOP에 대해서 가볍게 알아보자 해당 사진은 서비스 기능 중 join() 함수를 실행 한 결과다 두번째 파트에서 DB기술을 변경하면서 마지막에 사용했던 JPA를 사용했을 때의 모습이다. 당연하게도 필수적인 핵심 기능이기에 어떻게 동작하고 원하는 결과가 나오는지 검증해야한다. 이때 해당 메소드가 동작하는데 시간이 얼마나 걸리는지 동시에 확인하려면 부가적인 코드를 입력해야 할것이다 또 다른 모든 메소드에 대해서도 공통으로 동작시간을 확인하고 싶다면 모든 메소드에 추가적인 코드를 작성해야한다. 핵심 관심 사항 외에 공통 관심 사항을 확인하기 위해 탄생한 개념이 AOP다 이 두개의 관심 사항을 따로 분리하여 관리하지만 동시에 확인할 수 있도록 만들어 보자 @Aspect @Component public.. 2024. 1. 11. 이전 1 2 3 4 5 ··· 7 다음