[Clean Architecture 정리] 20장. 업무 규칙
·
IT/architecture
20장 업무 규칙업무 규칙(Business Rules)은 사업적으로 수익을 얻거나 비용을 줄일 수 있는 규칙 또는 절차다.  더 엄밀하게 말하면 컴퓨터 상으로 구현했는지와 상관없이, 업무 규칙은 사업적으로 수익을 얻거나 비용을 줄일 수 있어야 한다. 심지어 사람이 수동으로 직접 수행하더라도 마찬가지다. 예를 들어, 대출에 N%의 이자를 부과한다는 사실은 은행이 돈을 버는 업무 규칙으로, 프로그램으로 이자를 계산하든 사람이 계산하든 상관없는 파트입니다.핵심 업무 규칙사업 자체에 핵심적이며, 규칙을 자동화하는 시스템이 없더라도 그대로 존재하는 규칙이다.핵심 업무 데이터( 대출 잔액, 이자율, 지급 일정) 핵심 업무 규칙이 요구하는 데이터. 시스템으로 자동화되지 않은 경우에도 존재하는 데이터이다.엔티티핵심 업..
[Clean Architecture 정리] 15장. 아키텍처
·
IT/architecture
15장 아키텍처란?아키텍처• 시스템을 구축하는 사람들이 만들어낸 시스템 형태• 컴포넌트 분활, 컴포넌트 배치, 컴포넌트 의사소통 방식에 따라 정해진다.• 아키텍처 주된 목적: 시스템 생명주기 지원(개발, 배포, 운영, 유지보수)• 동작(운영) 보다 배포, 유지보수, 계속되는 개발 과정에서 어려움을 겪는다.소프트웨어 아키텍트• 프로그래머(발생하는 문제를 경험해보지 않으면 다른 프로그래머를 지원하는 작업을 제대로 수행할 수 없다) + 팀원들의 생산성을 극대화할 수 있는 설계개발시스템 아키텍처는 개발팀이 시스템을 쉽게 개발할 수 있는 구조여야 한다. (수명↑ 건강 ↑)팀 구조가 다르다면 아키텍처 관련 결정에도 차이팀 구조가 작을 때 : 개발자 다섯명이, 모노리틱 시스템팀 구조가 클 때 : 일곱 명씩 구성된 총..
Jenkins을 이용하여 Docker Image를 ECR로 올리기 with Github, 퍼블릭 서브넷
·
IT/cloud
Docker in Docker (DinD) 방식으로 AWS ECR 활용하기DockerAgent 준비물Docker in Docker(DinD) 방식으로 에이전트를 실행하고 컨테이너를 동적으로 관리하기 위해 아래의 준비물이 필요합니다. 필수 준비물AWS Access KeyAWS IAM 권한AmazonEC2ContainerRegistryPowerUser 권한을 가진 IAM 사용자 생성AWS ECR (Elastic Container Registry) AWS ECR(Elastic Container Registry)에 repository 생성하기ECR (EC2 Container Registry)은 Docker Container의 이미지를 저장하는 Repository 서비스IAM 인증을 통해 이미지의 push / p..
[정보처리기사 실기] 2023년 3회 기출문제 풀이
·
자격증/정처기
정처기 23년 3회 기출문제 - 바로가기 1. 다음은 Java 코드로 작성한 프로그램이다. 올바른 출력 결과를 작성하시오.public class main{ public static void main(String[] args) { A b = new B(); b.paint(); b.draw(); }} class A { public void paint() { System.out.print("A"); draw(); } public void draw() { System.out.print("B"); draw(); }} class B extends A { public void paint() {..
[정보처리기사 실기] 2023년 2회 기출문제 풀이
·
자격증/정처기
정처기 실기 23년 2회 기출문제 - 바로가기 1. 다음은 C언어 코드의 문제이다. 다음의 조건에 맞도록 빈 괄호 안에 알맞은 코드를 작성하시오.int main(void) { int n[5]; int i; for (i = 0; i [조건]입력값이 54321일 경우 출력값이 43215로 출력되어야 한다.더보기정답: n[(i+1) % 5] C언어: 54321 → 43215 로 구현 - printf("%d ", ( n[(i+1)%5]) )); 2. 다음은 JAVA 코드 문제이다. 가지고 있는 돈이 총 4620원일 경우 1000원, 500원, 100원, 10원의 지폐 및 동전을 이용하여 보기의 조건에 맞춰 "최소한의 코드"를 작성해 빈 괄호 안을 채우시오.프로그래밍 - 4620원의 1000원..
[정보처리기사 실기] 2023년 1회 기출문제 풀이
·
자격증/정처기
정처기 실기 23년 1회 기출문제 - 바로가기 1. 아래 자바 코드에서 출력되는 값을 작성하시오.class Static{ public int a = 20; static int b = 0; }public class Test{ public static void main(String[] args) { int a = 10; Static.b = a; Static st = new Static(); System.out.println(Static.b++); System.out.println(st.b); System.out.println(a); System.out.print(st.a); }}더보기정답:101..
[정보처리기사 실기] 2022년 3회 기출문제 풀이
·
자격증/정처기
정처기 실기 22년 3회 기출문제 - 바로가기 1. 아래는 C언어의 2차원 배열 형태이다. 결과는 2차원 배열 형태로 출력된다. 출력값을 적으시오.void main{field {{0,1,0,1},{0,0,0,1},{1,1,1,0},{0,1,1,1}};mines {{0,0,0,0},{0,0,0,0},{0,0,0,0},{0,0,0,0}}; int w = 4, h = 4; for(y=0; y= 0 && i = 0 && j 더보기 정답:1132345335643553 fied 2차원배열 초기맵 에서 순차적으로 탐색하면서 1만나면calculate(w,h,j,i)로 범위( i,j가 0~3이 아니면 패스)에mines 상 하 좌 우 현재자리 대각선 에 +1 씩해줌 0101000111100111 y=0 x=1i=0,1..
[정보처리기사 실기] 2022년 2회 기출문제 풀이
·
자격증/정처기
정처기 실기 22년 2회 기출 문제 - 바로가기1. 다음은 관계 데이터 모델에 대한 설명이다. 괄호안에 들어가는 용어를 작성하시오.( 괄호 )은/는 관계 데이터의 연산을 표현하는 방법으로, 원하는 정보를 정의할 때는 계산 수식을 사용한다.수학의 predicate calculus에 기반을 두고 있으며, 관계 데이터 모델의 제안자인 codd가 수학에 가까운 기반을 두고 특별히 관계 데이터베이스를 위해 제안하여 탄생하였다.( 괄호 )은/는 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 지니며, 튜블( 괄호 )와/과 도메인 ( 괄호 )이/가 있다.더보기정답: 관계해석 대절해비관계대수 : 절차적언어, 원하는 것 + 얻는 방법 관계해석 : 비절차적언어, 원하는 것만, 수학적 2. 다음은 대칭 키 알고리즘에..
[정보처리기사 실기] 2022년 1회 기출문제 풀이
·
자격증/정처기
https://newbt.kr/시험/정보처리기사%20실기/2022년%201회 뉴비티 기출문제 문제은행 - 완전 새로운 CBT, iBT 문제풀이 시스템기사, 공무원, 공인중개사 등 로그인 필요 없는 수백가지 시험 기출문제 문제은행 시험 자격증 족보 2025년 최신newbt.kr 1. 다음 설명에 맞는 RAID 단계를 쓰시오ㅇ 두 개 이상의 하드디스크를 병렬로 연결해, 하나의 디스크처럼 이용하는 기술이다.ㅇ 스트라이프(Stripe) 방식으로 구현하여 I/O 속도가 빠르다.ㅇ 데이터를 블럭단위로 분할하고 나누어 저장하기 때문에 하나의 디스크에 문제가 생기면 데이터 사용이 불가능해진다.더보기정답: RAID-0 2. 다음은 로그 기반 회복기법에서 사용되는 명령어이다. 각 지문에 해당하는 명령을 적으시오.1. 오..
[정보처리기사 실기] 2021년 3회 기출문제 풀이
·
자격증/정처기
정처기 실기 21년 3회 - 바로가기 1. 다음 Java 코드에 대한 알맞는 출력값을 쓰시오.class Connection { private static Connection _inst = null; private int count = 0; static public Connection get() { if(_inst == null) { _inst = new Connection(); return _inst; } return _inst; } public void count() { count ++; } public int getCount() { return count; }}public class testcon { public static void ma..