분류 전체보기(81)
-
객체지향 설계 원칙, 함수종속관계 단답형
Q. 객체지향 설계 원칙이다. 다음 용어를 작성하시오.(A) 한 클래스는 하나의 책임만 가져야 한다.(B) 소프트웨어 요소는 확장에는 열려있으나 변경에는 닫혀 있어야 한다.(C) 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 서브타입(하위클래스)은 어디서나 자신의 기반타입(상위클래스) 인스턴스로 바꿀 수 있어야 한다.(D) 특정 클라이언트를 위한 인터페이스 여러 개가 범용 인터페이스 하나보다 낫다.(E) 추상화에 의존해야지, 구체화에 의존하면 안된다. 더보기(A) 단일책임원칙 (SRP)(B) 개방폐쇄원칙 (OCP)(C) 리스코프 치환 원칙 (LSP)(D) 인터페이스 분리 원칙 (ISP)(E) 의존관계 역전 원칙 (DIP)Q. 입력값, 실행조건, 기대 결과 등의 집합을 나타내는 용어는?더보기테스트..
2024.10.16 -
정보처리기사 실기 응집도/결합도, 럼바우 객체지향 분석기법, 트랜잭션 단답형 문제 총정리
Q) 소프트웨어 패키징이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다. 모듈화는 모듈 간 ( 1)의 최소화와 모듈 내 요소들의 ( 2)를 최대화 하는 것이 목표이다. 알맞은 용어를 쓰시오.더보기1) 결합도 (Coupling)2) 응집도 (Cohesion)Q) 결합도를 낮은 순으로 작성하시오.더보기자료결합도 (Data Coupling)스탬프결합도 (Stamp Coupling)제어결합도 (Control Coupling)외부결합도 (External Coupling)공유결합도 (Common Coupling)내용결합도 (Content Coupling)Q) 응집도를 낮은 순으로 작성하시오.더보기우연적응집도 (Coincident..
2024.10.15 -
Ch04. 스트림 소개
스트림 소개거의 모든 자바 애플리케이션은 컬렉션을 만들고 처리하는 과정을 포함합니다. 대부분의 프로그래밍 작업에 사용되며, 컬렉션으로 데이터를 그룹화하고 처리할 수 있습니다. 비즈니스 로직상 컬렉션에 대해 특정 카테고리로 그룹화 하던가, 특정 키워드를 사용하여 원하는 결과를 찾는 연산을 요구하는 작업이 있을 수 있습니다. 대부분 데이터베이스에서는 선언형으로 이와 같은 연산을 표현할 수 있습니다. 예를 들어 ‘SELECT name FROM cars WHERE price 이처럼 자동차의 속성을 이용하여 어떻게 필터링 할 것인지는 구현할 필요가 없습니다. 어떻게 구현해야 할지 명시할 필요가 없고 구현은 자동으로 제공됩니다. 컬렉션으로도 이와 비슷한 기능을 만들 수 있지 않을까? 많은 요소를 포함하는 커다란 ..
2024.06.25 -
MSA환경에서 세션관리하기(Feat. Redis session clustering)
단일 서버에서 세션을 관리한다면 아무런 문제가 없겠지만, 보통 스케일 아웃 등을 통해 분산된 서버 환경에서 세션을 관리할 때 세션 불일치 문제가 발생할 수 있다.이러한 문제를 해결하기 위해 Session Clustering, Sticky Session, Redis Session Clustering 등이 존재한다.Sticky Session세션을 사용해 트래픽을 분산하는 기능으로, 특정 세션의 요청을 최초 처리한 서버로만 전송하는 것을 의미한다.예를 들어 회원 1이 서버A에서 세션을 생성한다면, 이후 회원1이 보내는 모든 요청은 서버A로만 전송하게 된다.이러한 Sticky Session은 아래와 같은 단점이 존재한다.동일한 세션은 동일한 서버로만 전송하기 때문에 특정 서버에 요청이 몰려 과부하가 발생할 수 ..
2024.06.19 -
Ch02. 람다식 표현
기본람다식을 사용하려면, 메소드를 하나(=추상메소드) 가진 인터페이스가 필요하다.A인터페이스를 구현한 클래스를 통해, A인터페이스 객체를 생성할 수 있다.A인터페이스를 구현한 클래스를 만들지 않고도, 익명내부클래스를 통해 A인터페이스 객체를 생성할 수 있다.람다표현식으로도 A인터페이스 객체를 생성할 수 있다.A a3 = () -> { System.out.println("난 람다식이네!"); }아래 코드는 모두 동일한 결과를 갖는다.a1.m();a2.m();a3.m();추상 메소드는 총 4가지의 종류를 갖는다. 즉, 람다식으로 사용할 수 있는 메소드의 형태는 총 4가지이다.람다식을 통해 위 4가지 인터페이스에 대한 객체를 모두 생성해보자.첫번째 경우(파라미터가 없고, 구현 부분이 한줄인 경우), 아래처럼 ..
2024.06.18 -
법인/통합계정/본인인증 로그인
참조자료https://yozm.wishket.com/magazine/detail/2488/https://faq.portone.io/3df572fb-7ab6-4933-a383-3741efb0aa4dhttps://zhfvkq.tistory.com/100CI (88Byte의 Hash처리된 값)온라인에서 개인식별을 위해 주민번호에 기반하여 생성된 온라인 주민번호로, 필요한 경우 서로 연계가 가능하다.공인인증서나 휴대폰 인증 등을 통해 최초 발급 후에는 해당 CI를 이용해 본인임을 증명하게 된다.주민번호를 단방향 암호화하여 생성된다.DI (66byte)사이트별 개인 고유 식별키주민번호와 각 웹사이트의 식별번호를 가지고 생성하는 방식특정 유저가 가입한 이력이 있는지 등을 확인하기 위한 정보중복 가입을 방지하기 위해..
2024.06.18