정보처리기사 24년도 3회 & 2회

이주원·2025년 6월 19일

컴퓨터언어

목록 보기
36/50

제발 따게해주세요 책도 샀어요

열심히할께요


24년도 3회

항목설명
new 키워드Java에서 힙(heap) 메모리에 새로운 객체를 생성
배열 인수 전달배열 이름을 인수로 지정하면, 배열의 시작 주소가 전달됨 (C/C++ 개념)
A.equals(B)두 문자열 내용이 같은지 비교함 (참/거짓 반환)
for(String z : x)x에서 문자열 요소들을 하나씩 z에 담아 반복
sum(lst[::2])Python 문법: 리스트에서 2칸 간격으로 슬라이싱하여 합산
예: [6,5,4,3,2,1]6 + 4 + 2 = 12
GROUP BY project_id HAVING count(*) < 2project_id 기준 그룹화 후 2개 미만인 그룹만 추출
WHERE p.project in 20project_id20인 데이터만 조회
FROM employee AS e JOIN project AS p ON e.project_id = p.project_idemployeeprojectproject_id 기준으로 JOIN
LRU가장 오래 사용하지 않은 데이터를 우선적으로 교체하는 캐시 알고리즘
b = 100.0Python에서 실수형 자료형 할당
연관 관계두 사물이 지속적으로 관련되어 있을 때, UML에서 실선으로 표현
일반화 관계구체적인(하위) → 일반적인(상위) 속이 빈 삼각 화살표로 표현
의존 관계필요 시 한 객체가 다른 객체에 일시적으로 의존, 점선 화살표로 표현
class D extends BD 클래스가 B 클래스를 상속받음
B a = new D();B 타입 참조 변수에 D 객체 생성 → 업캐스팅 발생
형변환 메커니즘업캐스팅 후, 자식 클래스에서 오버라이딩된 메서드만 영향
static void func() throws Exception메서드에서 예외를 발생시킬 수 있음을 선언
NullPointerExceptionnull을 참조하려 할 때 발생하는 예외
try → catch → finally예외 처리 순서: 시도 → 예외 발생 시 처리 → 마무리 작업
제네릭 & 타입소거컴파일 시점에만 적용되고, 런타임에는 Object로 소거
오버로딩이름이 같지만 매개변수의 타입이나 개수가 다른 여러 메서드 정의

용어설명
스머핑 (Smurfing)ICMP Echo Request를 이용해 공격 대상에게 대량의 트래픽을 유발하는 DDoS 공격 기법 중 하나
VPN (Virtual Private Network)공용 인터넷을 통해 사설 네트워크에 안전하게 접속하게 해주는 기술, 암호화된 터널로 데이터 전송
행위 패턴 (Behavioral Pattern)객체지향 설계 패턴 중 하나로, 객체 간의 상호작용과 책임 분배 방식을 정의하는 패턴 (예: 옵저버, 전략, 상태 등)
커버리지 (Coverage)소프트웨어 테스트에서 코드가 얼마나 테스트되었는지를 측정
ㅂ(전체/문장), ㄹ(조건식/분기), ㄷ(개별/조건) 등으로 구분
객체 (Entity)데이터베이스 또는 시스템 설계에서 속성과 식별자를 가진 독립적인 개체 (ex: 사용자, 제품 등)
애드혹 네트워크 (Ad-hoc Network)중앙 서버 없이 디바이스들끼리 직접 연결되어 통신하는 네트워크, 주로 무선 환경에서 사용됨 (예: 군사, 재난 구조 등)

✅ 애자일(Agile) 대표 개발 모형 정리표

이름주요 특징핵심 개념 및 방식
스크럼 (Scrum)가장 널리 사용되는 애자일 방식- 정해진 기간(스프린트) 동안 개발 진행
- 스크럼 마스터, PO(Product Owner), 개발팀 역할 분담
- 매일 스탠드업 미팅, 백로그 기반 개발
XP (Extreme Programming)코드 품질 중심, 개발자 친화- 테스트 주도 개발(TDD)
- 쌍 프로그래밍(Pair Programming)
- 지속적인 통합(CI)
- 고객과의 긴밀한 협력 및 빠른 피드백
칸반 (Kanban)작업 흐름 시각화에 초점- 작업 항목을 보드에 카드 형태로 시각화
- 작업 제한(WIP Limit) 설정
- 흐름 기반의 지속적 개선 및 유연한 업무 처리
Lean (린 개발)낭비 제거, 효율 극대화- 불필요한 활동 제거
- 빠른 피드백 & 지속적 개선
- **가치 흐름(Value Stream)**에 집중한 경량 개발 방식
FDD (Feature-Driven Development)기능 단위 개발 중심- 기능 중심의 반복적 개발
- 도메인 모델링 강조
- 5단계 프로세스 (모델링 → 기능 목록 작성 → 기능 계획 → 설계 → 구현)

비기능 요구사항 - 품질 요구사항

항목설명
가용성 (Availability)시스템이 장애 없이 지속적으로 서비스할 수 있는 능력
정합성 (Consistency)데이터 간에 모순이 없이 일관된 상태를 유지하는 성질
상호 호환성 (Interoperability)다른 시스템, 기기, 소프트웨어와 연동/호환이 가능한 능력
대응성 (Responsiveness)사용자 요청에 대해 빠르고 적절하게 반응하는 능력
이식성 (Portability)다른 환경에서도 쉽게 설치 및 실행할 수 있는 능력
확장성 (Scalability)사용자 증가나 데이터 증가에 따라 확장 가능한 구조를 갖춘 정도
보안성 (Security)데이터 보호, 접근 통제, 위변조 방지 등 보안 기능의 적절성

24년도 2회

개념설명
배열 인수 전달배열 이름을 인수로 지정하면 배열의 시작 주소가 전달됨 (C/C++)
f-string 포맷f"문자열{표현식}" 형태로, 문자열 내 중괄호 안의 표현식을 평가한 결과를 삽입 (Python)
인터페이스 메서드인터페이스에 선언된 메서드는 본문 없는 추상 메서드이며, 자식 클래스에서 반드시 재정의해야 함
추상 메서드의 의무추상 메서드는 자식 클래스가 구현해야 하는 의무이며, 미구현 시 컴파일 오류 발생
인터페이스 다형성자식 클래스는 동일한 추상 메서드명을 각기 다른 기능으로 재정의할 수 있음
boolean[] seen = new boolean[256]256개의 논리형 배열 선언, 각 요소는 true 또는 false, 기본값은 false
char c = str.charAt(index);문자열 strindex번째 문자를 문자형 변수 c에 저장
재귀 함수의 리턴재귀 함수에서 return제어를 호출한 지점으로 복귀시킴
seen[c] 예시c = 'a'일 때, 아스키 코드 97이므로 seen[97] 확인 가능
int arr[3][3] = {...}3행 3열의 2차원 정수 배열 선언 및 초기화
int* parr[2] = {arr[1], arr[2]}두 개의 포인터를 담는 배열 선언, 각각 arr[1], arr[2]의 시작 주소 저장
2차원 배열 주소2차원 배열에서 배열명은 첫 번째 행의 시작 주소를 의미
**parr 의미*parrparr[0], **parrparr[0][0]을 의미함
SQL: INSERT 구문INSERT INTO ... SELECT ... FROM ... WHERE : 조건에 맞는 데이터를 다른 테이블에서 삽입
SQL: UPDATE 구문UPDATE ... SET ... WHERE : 조건에 따라 기존 데이터 수정
SRT 스케줄링남은 실행 시간이 가장 짧은 프로세스에게 CPU를 할당하는 선점형 스케줄링 기법
SRT 대기시간 계산대기시간 = 완료시간 - 도착시간 - 실행시간
RIP 프로토콜홉 수(라우터 수)가 가장 적은 경로를 최적 경로로 선택하는 거리 벡터 라우팅 프로토콜

개념설명
반정규화 (Denormalization)데이터베이스의 성능 향상을 위해 정규화된 테이블을 일부러 통합하거나 중복 데이터를 허용하여 구조를 단순화하는 것
IPsec (IP Security)IP 계층에서 데이터의 무결성, 인증, 암호화 등을 제공하는 보안 프로토콜
VPN에서도 사용됨
Virtual Circuit (가상 회선)실제 물리적 회선 없이도 논리적으로 연결된 연결지향형 네트워크 통신 방식
→ 예: ATM, 프레임 릴레이
Iterator (반복자)컬렉션 객체의 요소들을 하나씩 순차적으로 접근할 수 있도록 도와주는 객체
hasNext(), next() 등의 메서드 사용

유형설명
순차적 응집도 (Sequential Cohesion)모듈 내의 한 작업의 출력이 바로 다음 작업의 입력으로 전달되는 경우. 작업이 순차적으로 연결됨
절차적 응집도 (Procedural Cohesion)여러 기능이 하나의 모듈 안에 있지만, 일정한 절차나 순서에 따라 실행될 때의 응집도
출력·입력 관계는 약하고 순서 중심
제어 결합도 (Control Coupling)어떤 모듈이 다른 모듈의 내부 제어 흐름에 영향을 주는 제어 신호를 전달하는 결합도
권리 전도가 발생할 수 있음 (하위 모듈이 상위 모듈의 흐름을 제어)

구분응집도 (Cohesion)결합도 (Coupling)
기준모듈 내부의 구성 요소들 간의 관계모듈 간의 의존 관계
의미모듈 안의 기능들이 얼마나 연관되어 있는가모듈이 다른 모듈에 얼마나 연결되어 있는가
이상적인 상태높을수록 좋음 (기능이 하나로 뭉쳐 있음)낮을수록 좋음 (독립적이고 영향이 적음)
목표관련 있는 기능들만 묶기불필요한 연결을 최소화하기
비유잘 정돈된 책장 (주제별 정리됨)서로 선이 꼬여 있는 전선 (엉켜 있으면 곤란)
핵심 키워드연관성, 통일성의존성, 독립성
좋은 상태하나의 모듈이 하나의 책임만 갖는 것모듈이 다른 모듈 없이도 작동 가능
profile
뭐가될지 모름

0개의 댓글