
1. TDD&클린아키텍쳐- 5주 동안 진행 2. 대용량 트래픽 & 데이터 처리 3. 장애 대응 프로젝트를 보내줄 거고,그걸 진행하면 됌 서버는 직접 구축해서 진행하게 될 것 이다.------TDD는 왜 중요한가- 이 전에는 완벽한 설계를 통해서 피처개발에 집중했다면, 장애가 날 수 있음을 인정하고장애를 허용하는 방법론이 제시가 된다. 유지보수시 대응이 가능할 방법 - 프로그램이 복잡해짐으로 디도스공격, 유저가 어떻게 사용할지가 예측이 안되기 때문 - 기존 찍어내기 식의 개발로는 소프트웨어의 품질을 올릴 수 없다.- 장애의 시그널을 찍을 수 없었기 때문에, 테스트가 필요해 진다. - 테스트코드와 테스트드리븐는 다른 것 - 현업에서 TDD란? -백엔드 개발자로서 요구사항을 분석하고 올바르게 완성하기..
1. 지금까지의 회고- 먹고 살길을 찾아 우연히 유튜브를 통해 첫 개발을 시작했었다. 1달 간의 독학과 함께 6개월간 학원을 통해 웹 개발 기술을 알게 되었다. 개발자 호황기였던 상황 덕분에 쉽게 입사를 하게되었고, 2년 9개월간 근무를 했었다. 하지만 마땅한 사수가 없어 혼자 고군분투 해야했던 전 직장이었다. 그 기간 동안으로 인해 개발에 대한 궁금증이 머리 속에 꽉차게 되었다. 그리고 인터넷 강의 등을 듣고 홀로 포트폴리오가 될만한 사이트를 개발하며 지내왔다. 2. 향해 플러스 참여 계기- 전 직장에서 혼자 개발을 하는 것에는 큰 장점이 있었다. 고객사와의 개발미팅, 서버 배포, 웹 취약점 등 한 홈페이지를 구축하고 운영하는 데에 대한 프로세스를 모두 격을 수 있었다. 하지만 단점은 내가 잘하고 있는..
script> $(document).ready(function () { $('td').filter(function (index, selector) { if (index % 2 == 0) { $(selector).css('background-color', 'red'); } }); });/script> 필터는 셀렉터를 가져올 수 있음, 순서에 따라 조건을 넣어서 사용 할 수 있다. 필터 메서드의 메서드 체이닝(Chaining)여러 필터 메서드를 사용하는데에 있어서..
1. 요구사항 정의서에서 기술 도출예를 들어 로그인 기능을 만든다고 한다면- 회원가입 시에 데이터를 DB에 저장한다. ㄴ 1번 예외는 회원 ID의 Duplicate 예외를 체크해야한다. ㄴ 2번 예외로 제대로 데이터가 저장되었는지 select로 확인한다. 총 1번과 2번의 테스트가 필요할 것이다. 2. 위의 기능을 테스트하기 위해 테스트코드를 작성한다.주의점은 테스트 코드를 먼저 만들어야하며, Dto 혹은 로직을 먼저 만들어선 안된다. 늘 끝에서 먼저 생각해야한다.책의 내용을 정리해서 말하자면 그 이유는 중심에 있다고본다. 예외사항을 고려해서 실패 코드를 먼저 작성해야한다. 그렇게 예외를 던지는 값부터 거꾸로 올라가서 테스트하는데에 필요한 클래스, 메서드, 변수 등을 고민하며 테스트를 진행해야한다. ..

회사 프로젝트 중에 전자정부프레임워크에서 Spring boot로 마이그레이션을 한다고 한다. 아마 설계는 내가 진행하지 않겠지만, 일단 환경 자체는 알아야 할 것 같아서 셋팅을 진행했다. 보통 spring boot환경에서는 front는 SPA를 api통신해서 사용하거나 thymleaf를 사용하는데 고객사의 제작비 절감..?으로 인해 기존 jsp를 그대로 가져가게 되었다. 처음보는 환경이라 어떤 설정이 필요한지 진행했다.Spring Boot에서 JSP 사용1. Spring boot 프로젝트 generatehttps://start.spring.io/ 평소와 같이 start.spring.io에서 boot를 생성 해주었다. jdk17, Maven, war로 설정해주었다. 일단 기본으로 받고 dependency를..
일단 boot를 받는 것을 똑같다. https://start.spring.io/ 여기에서 Maven과 War 설정으로 받아준다. application.propertiesspring.mvc.view.prefix=/WEB-INF/views/spring.mvc.view.suffix=.jsp pom.xml 추가 jstl jstl 1.2 org.apache.tomcat.embed tomcat-embed-jasper tomcat-embed-jasper를 사용하지 않으면 jsp가 돌아가지 않는 현상이 보였다.스프링 부트의 내장 톰캣이 JSP를 지원하도록 해주는 의존성이라고 한다.Tomcat의 내장 JSP 컴파일러인 Jasper를 사용할 수 있도록 한다.
암호 강도 측정 기능을 TDD로 구현했을 때의 순서는 다음과 같았다. 1. 모든 규칙을 충족하는 암호 강도는 '강함' - 아무 것도 걸지 않고 그대로 보내버린다.2. 길이만 8글자 미만이고 나머지 규칙은 충족하는 암호의 강도는 '보통' - 8글자 미만 if문을 짜고 보통을 리턴한다.3. 숫자를 포함하지 않고 나머지 규칙은 충족하는 암호의 강도는 '보통' - 숫자 포함if문을 짜고 보통을 리턴한다.4. 값이 없는 암호의 강도는 '유효하지 않음' - 값이 없으면 잘못된 값으로 리턴한다.5. 대문자를 포함하지 않고 나머지 규칙은 충족하는 경우 - 대문자 관련 if문을 짜고 위 두개의 이프문을 사용하거나 변수로 결과값을 넣어 사용한다.6. 길이가 8글자 이상인 규칙만 충족하는 경우 - 2번의 반대값으로 이프문을..

1. 만들 기능에 대해 설계를 고민한다. 2. 과정1 을 수행하며 구현에 대해 고민한다. 3. 기능에 대한 구현을 완료한 것 같으면 기능을 테스트한다. 이 과정에서 원하는대로 동작하지 않거나 문제가 발생하면 과정2에서 작성한 코드를 디버깅하면서 원인을 찾는다. Maven org.junit.jupiter junit-jupiter-engine 5.5.0 test 위 상황의 문제점- 과정2에서 한 번에 작성한 코드가 많으면 디버깅 시간이 길어진다. 디버깅, 로그 메시지 추가 등 코드를 한줄씩 따라가며 원인을 찾아야했다.- A가 공통을 만들면 B가 가져다 쓰면서 테스트하는 경우도 있다(B가 잘..
- Total
- Today
- Yesterday
- ArgumentResolver
- hypertexttransferprotocol
- React
- 향해99
- 로그인
- react실행
- thymleaf
- JPA
- 백엔드 개발자 공부
- reject
- 향해플러스
- 예외처리
- 항해99
- rejectValue
- BindingResult
- 컨트
- 백엔드 개발자 역량
- Java
- 항해플러스
- exception
- filter
- 스프링공부
- jpa api
- SpringBoot
- 스프링부트
- 인터셉터
- 향해플러스백엔드
- Intercepter
- 리터럴
- HTTP
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |