전체 글
-
테스트 커버리지? 코드 커버리지란?테스트코드(Test Code) 2022. 3. 7. 11:56
Test Coverage / Code Coverage란? 많은 서비스 기업에서는 테스트 코드의 중요성을 인지하고 코드 커버리지를 최대한 유지 및 지속, 상승시키면서 개발을 하려고 노력합니다. 테스트 커버리지/코드 커버리지란 시스템 또는 소프트웨어의 테스트를 논할 때 얼마나 테스트가 충분한가를 나타낸 것입니다. 테스트를 진행하였을 때 '코드 자체가 얼마나 실행되었느냐'는 것으로 수치를 통해 확인할 수 있습니다. 코드 커버리지는 어떤 기준으로 측정할까? 소스 코드 기반으로 수행되는 화이트 박스 테스트를 통해 측정됩니다. 화이트 박스 테스트란? - 응용 프로그램의 내부 구조와 동작을 검사하는 테스트 방식 - 개발자 간점의 단위 테스트 방법 블랙박스 테스트란? - 소프트웨어의 내부 구조나 동작 원리를 모르는 상..
-
1225. [S/W 문제해결 기본] 7일차 - 암호생성기알고리즘/SW Expert Academy 2022. 3. 7. 00:01
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14uWl6AF0CFAYD SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 해석 8자리의 숫자를 입력받습니다. 첫 번째 숫자를 1 감소한 뒤, 맨 뒤로 보냅니다. 그다음 첫 번째 주는 +1을 더한 수를 감소한 뒤 맨 뒤로 보냅니다. 이 사이클은 5가 감소할 때까지만 반복합니다. 반복 수행 시 뒤로 이동한 후 해당 숫자가 0보다 작거나 0인 경우에 반복이 종료되며 해당 숫자 배열이 암호가 됩니다. 문제 풀이 전 설계 반복과 종료 시점이 문제에 적절하게 명시되어있기 때문..
-
[백준] 10830번 : 행렬 제곱 - 자바(JAVA)알고리즘/백준 2022. 3. 6. 00:01
https://www.acmicpc.net/problem/10830 10830번: 행렬 제곱 크기가 N*N인 행렬 A가 주어진다. 이때, A의 B제곱을 구하는 프로그램을 작성하시오. 수가 매우 커질 수 있으니, A^B의 각 원소를 1,000으로 나눈 나머지를 출력한다. www.acmicpc.net 문제 해석 크기가 N*N인 행렬 A가 주어진다. 이때 A의 B제곱을 구하는 프로그램을 작성하라. 수가 매우 커질 수 있으므로 A^B의 각 원소를 1,000으로 나눈 나머지를 출력한다. 입력 첫째 줄에 행렬의 크기 N과 B가 주어진다. 둘째 줄부터 N개의 줄에 행렬의 각 원소가 주어진다. 제약조건 2 ≤ N ≤ 5 1 ≤ B ≤ 100,000,000,000 행렬의 각 원소는 1,000보다 작거나 같은 자연수 또는..
-
AWS RDS vs EC2 차이점AWS 2022. 3. 5. 20:19
AWS RDS란? Amazon Relational Database Service의 약자로써 Amazon RDS라고 불립니다. 클라우드에서 관계형 데이터베이스를 간편하게 설정, 운영 및 확장할 수 있습니다. 데이버베이스 인스턴스라고 불리는 가상 데이터베이스 환경을 제공합니다. Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, SQL Server등 익숙한 데이버베이스 엔진을 선택할 수 있습니다. RDS는 관계형 데이터베이스를 지원하지만 다음와 같은 다양한 데이터베이스를 선택하여 사용할 수 있습니다. AWS EC2란? Amazon Elastic Compute Cloud의 약자로써 Amazon EC2라고 불립니다. 클라우드에서 확장 가능 컴퓨팅 용량을 제..
-
MSA 아키텍쳐란?MSA & 쿠버네티스(Kubernetes) - k8s 2022. 3. 5. 15:59
모놀리식 아키텍처 (Monolithic Architecture) Monolithic은 사전적 의미로 단단히 짜여 하나로 되어 있는, 돌덩이 하나의 라는 의미를 가집니다. 기존에 우리가 사용하던 전통적인 방식의 개발 방법을 모놀리식 아키텍처라고 불립니다. 아래의 그림처럼 한 덩어리의 구조라고 볼 수 있습니다. 핵심 비즈니스 로직이 하나의 돌덩이처럼 뭉쳐있습니다. 장점 1. 어떤 기능이던지 개발되어있는 환경이 같아서 복잡하지 않습니다. 2. 쉽게 고가용성 서버 환경을 만들 수 있습니다. (같은 애플리케이션을 하나 더 생성) 3. End-to-End 테스트가 용이합니다. ( MSA의 경우 테스트에 필요한 서비스들을 모두 동작시켜야 함) 단점 1. 한 프로젝트가 너무 커지게 되면 애플리케이션의 구동 시간이 증가..
-
[백준] 2493 : 탑 - 자바(JAVA)알고리즘/백준 2022. 3. 5. 00:01
https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net 문제 해석 서로 다른 탑을 수평 직선의 왼쪽부터 오른쪽 방향으로 차례로 세운다. 각 탑의 꼭대기에 레이저 송신기를 설치하였다. 모든 탑의 레이저 송신기는 레이저 신호를 지표면과 평행하게 수평 직선의 왼쪽 방향으로 발사하고, 탑의 기둥 모두에는 레이저 신호를 수신하는 장치가 설치되어 있습니다. 예를 들어 높이가 6, 9, 5, 7, 4인 다섯 개의 탑이 수평 직선에 일렬로 서 있고, 모든 탑에서는..
-
Redis란?CS/데이터베이스 2022. 3. 4. 10:47
Redis란? 공식 홈페이지의 소개글을 요약해 보겠습니다 Redis는 데이터베이스, cache 및 message broker 로서 이용되는 오픈 소스입니다. set, string, hash, list, sorted set 등의 다양한 데이터 구조를 제공합니다. message broker란? 송신자로부터 전달받은 메시지를 수신자로 전달해주는 중간 역할을 수행합니다. 애플리케이션, 시스템, 서비스가 서로 통신하고 정보를 교환할 수 있도록 합니다. 네트워크 지연 문제가 발생해도 시스템이 계속 작동될 수 있도록 보장합니다. Redis는 (Remote dictionary server)의 약자로써 외부로부터 dictonary 자료구조(HashMap과 같은 Key-Value)를 사용하는 서버라는 것을 알 수 있습니다..
-
[Error] Using tabs can lead to unpredictable resultSpring Framework 2022. 3. 4. 01:53
application.yml 파일을 작성할 때 tab을 이용하여 들여쓰기를 할 경우 에러가 발생합니다. Window -> Preferences -> General -> Editors -> Text Editors -> Insert spaces for tabs 선택 그러면 에러는 해결됩니다. 또한 yml 파일 작성시 주의사항이 탭을 적절하게 넣지않으려 오류를 뱉기때문에 depth를 잘 고려해서 작성해야합니다! 출처 https://velog.io/@yeoro/Error-Using-tabs-can-lead-to-unpredictable-results [Error] Using tabs can lead to unpredictable results YAML 파일에서 tab 사용시 발생하는 에러 velog.io