
안녕하세요, 공부하는 감자입니다 🥔
정처기 실기 출제기준은 2025.1.1~2029.12.31 적용분이 그대로 유지되고 있는데, 막상 최근 회차를 풀어보면 분위기가 조금씩 달라지고 있어요. Python 비중이 올라오고, SQL은 다중 서브쿼리가 등장하고, 디자인 패턴과 테스트 커버리지는 단답형 단골로 굳어졌습니다.
2025년 1회 합격률이 15%대까지 떨어진 걸 보면 "기출만 돌리면 된다"는 접근은 위험하다는 게 제 생각이에요. 이 글은 제가 공부하며 정리한 영역별 핵심을 압축한 버전입니다.
출제 영역 구조 — 12개 항목, 사실상 3덩어리
출제기준에는 요구사항 확인부터 제품 SW 패키징까지 12개 세부항목이 있지만, 실제 시험지는 이렇게 묶여서 나옵니다.
| 덩어리 | 출제 형태 | 대략 배점 |
|---|---|---|
| 코드 (프로그래밍 언어 활용) | C·Java·Python 출력값 쓰기 | 35점 |
| 데이터 (SQL·데이터 입출력) | SELECT·DDL·정규화 | 15점 |
| 이론·용어 (나머지 10개 영역) | 단답형 개념 쓰기 | 50점 |
이론·용어가 50점이라는 게 의외의 포인트예요.
코드가 어렵게 나온 회차에도 이론에서 40점 이상 끌어오면 합격선 60점이 보입니다.
코드 영역 — 언어별 출제 포인트
C — 구조체 포인터가 단골
포인터는 매 회차 고정이고, 요즘은 구조체 포인터에 배열을 섞는 형태가 자주 보여요.
#include <stdio.h>
struct Item { int w, h; };
int main() {
struct Item box[2] = {{5, 6}, {7, 8}};
struct Item *p = box;
printf("%d ", p->w); // 5
printf("%d ", (p + 1)->h); // 8
printf("%d", (*(p + 1)).w); // 7
return 0;
}
p->w와 (*p).w가 같은 표현이라는 것, 그리고 p + 1이 구조체 크기만큼 점프해 다음 원소를 가리킨다는 것만 붙잡으면 됩니다. 화살표 연산자와 *의 우선순위에서 헷갈리면 한 문제가 통째로 날아가요.
비트 연산도 챙겨두세요. a << n은 a × 2^n, a & 1은 홀짝 판별이라는 감각이 있으면 시험장에서 계산이 빨라집니다.
Java — 상속과 캐스팅 묶음
추상 메서드 + instanceof + 캐스팅을 한 문제에 엮는 패턴이 반복 출제됐어요.
abstract class Shape {
abstract void draw();
void label() { System.out.print("Shape "); }
}
class Circle extends Shape {
void draw() { System.out.print("Circle "); }
void spin() { System.out.print("Spin "); }
}
public class Main {
public static void main(String[] args) {
Shape s = new Circle();
s.label(); // Shape
s.draw(); // Circle
// s.spin(); // 컴파일 에러 — Shape에 spin 없음
if (s instanceof Circle) ((Circle) s).spin(); // Spin
}
}
출력은 Shape Circle Spin입니다. 함정은 세 군데예요.
참조 타입에 없는 메서드 호출은 컴파일 에러, 오버라이딩된 메서드는 자식 것이 실행, 자식 전용 메서드는 캐스팅 후에만 호출 가능.
Python — 2026년 들어 비중 상승
2025년엔 1문제 수준이던 Python이 최근엔 3문제까지 늘었다는 후기가 많습니다. 슬라이싱·딕셔너리·컴프리헨션이 핵심이에요.
b = [10, 20, 30, 40, 50, 60]
print(b[1:5:2]) # [20, 40]
print(b[::-2]) # [60, 40, 20]
m = {"x": 1, "y": 2}
print(m.get("z", -1)) # -1
m.setdefault("z", 7)
print(m["z"]) # 7
vals = [2, 3, 4, 5, 6]
print([v * v for v in vals if v % 2 == 0]) # [4, 16, 36]
- 슬라이싱 stop은 미포함, step이 음수면 역방향
get(key, default)는 없으면 default를 돌려줄 뿐 딕셔너리를 바꾸지 않음setdefault는 없을 때만 넣고, 있으면 기존 값 유지
머리로만 돌리면 꼭 틀리는 게 음수 스텝 슬라이싱이에요. 이것만 따로 서너 개 손으로 풀어보세요.
SQL — 분류표와 상관 서브쿼리
명령어 분류는 단답 단골입니다. 특히 TRUNCATE가 DML처럼 보이지만 DDL이라는 점.
| 분류 | 명령어 |
|---|---|
| DDL | CREATE, ALTER, DROP, TRUNCATE, RENAME |
| DML | SELECT, INSERT, UPDATE, DELETE |
| DCL | GRANT, REVOKE |
| TCL | COMMIT, ROLLBACK, SAVEPOINT |
최근 SELECT 문제는 상관 서브쿼리가 자주 끼어요.
-- 소속 팀 평균 점수보다 높은 선수 조회
SELECT s.player_name, s.score, s.team_id
FROM stats s
WHERE s.score > (
SELECT AVG(score)
FROM stats
WHERE team_id = s.team_id
)
ORDER BY s.team_id, s.score DESC;
바깥 쿼리의 행마다 안쪽이 한 번씩 실행되는 구조가 상관 서브쿼리입니다. IN, EXISTS, ANY, ALL도 단답으로 나와요.
실행 순서는 FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY. WHERE는 그룹화 전, HAVING은 그룹화 후 필터고 집계함수는 HAVING에서만 씁니다.
정규화는 한 줄로: 1NF 원자값 → 2NF 부분함수종속 제거 → 3NF 이행함수종속 제거 → BCNF 모든 결정자가 후보키.
단답형 빅3 — 보안·패턴·테스트
암호화 매칭
알고리즘 이름을 주고 분류를 묻는 매칭형이 기본이에요. 세 갈래만 잡으면 됩니다.
| 구분 | 알고리즘 | 특징 |
|---|---|---|
| 대칭키 | AES, SEED, ARIA, 3DES | 키 1개 공유, 빠름, 대량 암호화 |
| 비대칭키 | RSA, ECC, Diffie-Hellman | 공개키/개인키, 키 교환·전자서명 |
| 해시 | SHA-256, SHA-3 | 단방향, 무결성·패스워드 |
ECC는 "RSA보다 짧은 키로 같은 보안 강도"가 출제 포인트고, SHA-256은 블록체인·인증서 키워드와 같이 나옵니다. 공격 기법은 SQL Injection(PreparedStatement로 대응), XSS(출력 인코딩), CSRF(토큰·SameSite 쿠키)까지가 기본 세트예요.
PreparedStatement가 왜 SQLi를 막는지는 서술형으로도 나오는데, "SQL과 파라미터를 분리해 입력값이 실행되지 않고 데이터로만 취급된다"가 답의 뼈대입니다.
디자인 패턴
매 회차 1~2문제, 설명 주고 이름 쓰기 방식이 고정이에요. 키워드 네 개만 우선 잡으세요.
"교체할 수 있다"는 Strategy, "하나만 존재"는 Singleton, "변경을 통지"는 Observer, "인터페이스 변환"은 Adapter.
생성(Singleton·Factory Method·Builder·Prototype·Abstract Factory) / 구조(Adapter·Proxy·Decorator·Facade) / 행위(Observer·Strategy·Template Method·Command·Iterator) 분류까지 묶어두면 분류 문제도 커버됩니다.
테스트 커버리지
커버리지는 약한 기준부터 강한 기준 순으로 정리해두면 헷갈리지 않아요.
| 커버리지 | 기준 | 강도 |
|---|---|---|
| 구문 | 모든 문장 1회 이상 실행 | 약함 |
| 분기 | 모든 분기 T/F 각 1회 | 중간 |
| 조건 | 개별 조건이 T/F 모두 | 중간 |
| MC/DC | 각 조건이 독립적으로 결과에 영향 | 가장 강함 |
MC/DC는 항공·의료처럼 고신뢰성 SW에 적용되는 기준이고 최근 단답 빈도가 올라왔어요. 블랙박스(동등분할·경계값·결정 테이블)와 화이트박스(기초 경로·제어 흐름)의 구분도 같이 챙기세요.
제가 자주 틀렸던 지점들
- Java 문자열 비교 —
==는 참조 비교,.equals()가 값 비교. 상수 풀 때문에==가 true처럼 보이는 함정 주의 - Python
b = a는 복사가 아니라 같은 리스트 참조. 복사는a[:]또는list(a) - SQL
WHERE col = NULL은 항상 거짓 —IS NULL만 정답 - "이행함수종속 제거"는 3NF, "결정자가 후보키"는 BCNF — 단계 혼동이 제일 흔한 실점
- "객체를 하나만"이라고 무조건 Singleton이 아니에요. 생성 과정 제어가 핵심이면 Factory 계열일 수 있으니 지문 끝까지 읽기
시험장 시간 배분
20문제 180분 기준으로 저는 이렇게 움직였어요. 처음 10분은 전체를 훑으며 쉬운 단답에 표시만 하고, 첫 1시간에 단답·이론을 털어 40점 이상을 깔아둡니다.
집중력이 좋은 중반에 SQL과 Java·C 코드를 배치하고, Python과 복잡한 구조체는 후반으로. 마지막 20분은 무조건 검토인데, 특히 단답형 철자를 봐야 해요.
"오버라이딩"을 "오버로딩"으로 쓰면 0점입니다.
개념이 한 바퀴 돌았다면 이제 문제에 부딪힐 차례인데, 저는 문어CBT에서 실기 모의고사를 무료로 돌리면서 어느 덩어리가 약한지 확인했어요. 코드에서 10분 넘게 막히면 과감히 넘기고 단답 두세 개를 더 맞히는 쪽이 수익률이 좋다는 것, 마지막으로 한 번 더 강조하고 마칩니다.
SQLD·정처기·컴활·ADsP 무료 CBT 모의고사
기출 변형 문제, 자동 채점, 회차별 실력 추적까지 가입 없이 바로 풀어보세요.
sqldpass.com
'자격증 > 정보처리기사 실기' 카테고리의 다른 글
| 정처기 실기 합격률 18%, 2026년 1회에 무슨 일이 있었나 (2회 대비 포인트) (0) | 2026.06.12 |
|---|---|
| 정처기 실기 채점 기준과 영역별 배점 — 떨어지는 사람들의 공통 실수 (0) | 2026.06.12 |
| 정처기 실기 6주 공부 계획표 — 2026년 2회 시험 역산 플랜 (0) | 2026.06.12 |
| 정처기 실기 합격률, 몇 회차에 응시해야 유리할까 (2020~2025 데이터) (0) | 2026.06.12 |
| 정처기 실기 신기술 용어, 다섯 묶음이면 끝 (클라우드·컨테이너·AI·블록체인·빅데이터) (0) | 2026.06.12 |