IT/정보처리기사

[정보처리기사 실기] 초압축 개념정리-2

크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널 2023. 9. 2. 16:22
반응형

[정보처리기사 실기] 초압축 개념정리-2

 

 

 

필자는 '[정보처리기사 실기] 수제비 2022 회차별 최종정리 시리즈'를 다 완벽히 외우고 시험을 치러 갔다. 결과는 합격!

하지만 이 7개 시리즈도 외울 시간이 정말정말 없는 분들을 위해 초압축 버전을 다시 준비했다.

비록 60점으로 합격했지만, 직장인 등 시간이 없는 분들은 이 시리즈만이라도 제발 다 외우고 시험치러가보자!!

반응형

 

 
 
 

 

 

 

 

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-1

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-2

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-3

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-4

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-5

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-6

[정보처리기사 실기] 수제비 2022 회차별 최종 정리-7

 

 

 

위 시리즈를 공부할 시간이 없다면?

 

 


반응형

 

<DL제어기법> : 회흐오

  • 회선제어(Circuit Control) : 데이터 동시 전송시 충돌 제어 - ENQ/ACK기법, 풀링기법
  • 흐름제어(Flow Control) : 전송되는 데이터 양 제어 - Stop&Wait기법, Sliding Window기법
  • 오류제어(Error Control) : 전송오류 발생시 복구 제어 - FEC(전진오류수정)기법, BEC(후진오류수정)기법

 

<SQL 명령>

  • DDL(Data Definition Lang) - 크드얼트 :: Create, Drop(Table), Alter(Table), Truncate(Table)
  • DML(Data Manipulation Lang) - 인셀딜업 :: Insert(Into, 튜플추가), Select, Delete(From, 튜플삭제), Update(Set, 튜플변경)
  • DCL(Data Control Lang) - 그리 :: Grant, Revoke
  • TCL(Tx Control Lang) - 커롤첵 :: Commit, Rollback, Checkpoint

 

  • 권한부여 - 그온투
  • 권한부여 & 권한권한부여 - 그온투윗옵

        Grant all on Student to SHMOON with Grant option;

  • 권한회수 - 리온프
  • 부여된 옵션까지 권한회수 - 리온프캐콘

        Revoke Delete On Score from Dooum cascade constraints;

  • 뷰생성 - 크뷰애셀

        Create view 사원뷰 as select 사번, 이름 from 사원 where 성별 = ‘M';

  • 뷰삭제 - 드뷰
  • 데이터추가(삽) - 인인밸

        Insert Into 학생 Values('202101','임꺽정‘,’프로그래밍‘,’010-1234-5678‘);

        Insert Into 급여(부서명, 직책, 급여) Values('마케팅부‘,’부장‘,’100‘);

  • 데이터삭제(삭) - 딜프웨

        delete from 학생 where 수강과목 = ‘유체역학’;

  • 데이터변경(갱) - 업셋웨

        Update 학생 set 상태=‘매국노’ where 이름=‘이광수’;

        Update 급여 Set 호봉=15 where 이름=‘홍길동’ ;

  • 모든데이터삭제 -(DDL) 트테 /(DML) 딜프
  • 인덱스생성 - 크인온

        Create Index 학번인덱스 on 학생(학번);

  • 중복제거 - 셀디프(Select Distinct From)

        Select 학년 Distinct from R1;

반응형

 

  • 테이블삭제 - 드테캐(Cascade : 링크된 데이터 다 삭제, Restrict : 링크된 테이블이면 삭제 명령 취소)
  • 컬럼추가(삽) - 얼테애(where절은 select에서만 쓸 수 있음)
  • 중복값 입력 금지 - Alter Table 학생 add 전화번호 VARCHAR(11) UNIQUE;
  • 연차에는 NULL 입력 금지 - Alter Table 급여 Add 연차 INTEGER NOT NULL;

주의: where : IS NULL/IS NOT NULL이고 Alter : NULL/NOT NULL

  • 성별에는 M과 F만 입력 가능 - Alter Table 학생 Add 성별 CHAR(1) CHECK(성별 IN('M', 'F'));
  • 컬럼삭제(삭) - 얼테드

        Alter Table 직원 Drop 고과;

  • 컬럼속성변경(갱) - 얼테모
  • PK지정 - Alter Table 부서 Modify 부서번호 Integer Primary Key;
  • Grade Number(1)에 NULL대신 기본값 1지정 - Alter Table 부서 Modify Grade Number(1) Default 1;
  • 1,1,3,4 랭크 : 랜오(오)

        Select 이름, 수학, rank() over(Order by 수학 DESC) as 등수 from 점수 order by 수학 DESC;

  • 1,1,2,3 랭크 : 덴랜오(오) :: 더 자세히 본다는 뜻

        Select 이름, 수학, dense_rank() over(Order by 수학 DESC) as 등수 from 점수 order by 수학 DESC;

  • 부서별로 각각 랭크 : 랜오(파오)

        Select 부서,이름,Rank() Over(Partition by 부서, Order by 연봉 DESC) as 순위 from 급여 Order by 부서 DESC, 연봉 DESC;

  • A∪B(중복제외) - A Union B
  • A+B(중복허용) - A Union All B
  • A∩B - A Intersect B
  • A-B - A Minus B
  • 조건으로 그룹묶기(급여 6000 넘는 부서 출력)

        select 부서, sum(급여) as 급여합계 from 급여 group by 부서 having 급여합계 >= 6000;

반응형

 

 

<그룹함수>

  • 그바그 : 학년, 반 독립적으로 :: 1, 2, -1, -2 평균점수 출력

        select 학년, AVG(점수) as 점수 from 점수 group by grouping sets(학년, );

  • 그바롤 : 학년(기준), 반 모든 조합으로(기준은 안없어짐) :: 1-1, 1-2, 1, 2-1, 2-2, 2, 전체평균 점수 출력

        select 학년, , AVG(점수) as 점수 from 점수 group by rollup(학년, );

  • 그바큐 : 학년, 반 기준없이 진짜 모든 조합으로 :: -1, -2, 1-1, 1-2, 1, 2-1, 2-2, 2, 전체평균 점수 출력

        select 학년, , AVG(점수) as 점수 from 점수 group by cube(학년, );

  • 필기가 NULL이거나 0점인 수험자명 출력

        select 수험자명 from 정처기 where 필기 IS NULL or 필기 = 0;

  • Select Count(국어+영어) from 성적에서 국어, 영어에 NULL이 있다면? - 교집합이므로 어느 한쪽에라도 NULL 있으면 카운트 안함
  • Select AVG(국어) from 성적에서 3개 레코드인 국어에 NULL 1개 있다면? - 분모/분자에 모두 카운트하지 않음
반응형

 

<화이트박스테스트> : 소스코드 내부를 테스트(개발과정 테스트) :: 구결조 조변다 기제데

  • 구문 커버리지(=문장) : 모든 구문박스 체크
  • 결정 커버리지(=선택=분기) : 모든 IF(A&B)의 T/F 체크
  • 조건 커버리지 : 모든 IF(A&B)에서 A,B의 T/F 체크
  • 조건/결정 커버리지 : 조건+결정 중 한번만 T/F 체크
  • 변경 조건/결정 커버리지 : 모든 조건/결정 중 일부 샘플만 T/F 체크
  • 다중 조건 커버리지 : 모든 조건/결정 T/F 체크
  • 기본 경로 커버리지(=경로) : 모든 라인 체크
  • 제어흐름 테스트 : 내부로직 제어흐름 테스트 -> 그래프로 출력
  • 데이터흐름 테스트 : 내부로직 데이터흐름 테스트 -> 그래프로 출력
반응형

 

<블랙박스 테스트> : TC를 만들어 명세서대로 출력값 나오는지 테스트(개발결과 테스트) :: 동경결상유분페원비

  • 동등분할 테스트 : 데이터 영역을 유사도메인으로 묶고 대푯값만 테스트(무효값도 넣어야함)
  • 경계값분석 테스트 : 동등분할 후 본인값+경계값 테스트(무효값도 넣어야함)
  • 결정테이블 테스트 : 조건+행위로 테이블 만들어 테스트
  • 상태전이 테스트 : 이벤트에 의해 상태가 변화는 놈들만 테스트
  • 유스케이스 테스트 : 실제 프로세스 흐름대로 테스트케이스 설계 및 수행
  • 분류트리 테스트 : 트리구조로 만들어 테스트케이스 설계 및 수행
  • 페어와이즈 테스트 : 데이터값을 모두 최소 1번 만나도록 짝(Pair)를 만들어 테스트(모든 조합을 해도 테스트세트가 작은 경우 수행)
  • 원인-결과그래프 테스트 : 그래프 분석하여 인풋대비 아웃풋 영향성 큰놈들만 테스트
  • 비교 테스트 : 모든 프로그램 버전에 동일 인풋, 동일 아웃풋 나오는지 테스트
반응형

 

<UML 다이어그램> : 정동기

1) UML 정의

  • Unified Modeling Language :: 객체지향SW 개발 시 모델링기술+방법론을 통합하여 만든 표준화된 언어

2) UML 구성요소 : 사관다

  • 사물(Thing) : 주재를 나타내는 추상적인 개념
  • 관계(Relationship) : 사물간의 관계를 표현
  • 다이어그램(Diagram) : 사물과 관계를 모아 그림으로 표현

3) UML 관계

  • Aggregation(◇) - ASSY ⊂ INSTL 관계(상위)
  • Composition(◆) - Detail ⊂ ASSY 관계(하위)

4) 정적다이어그램 : 객체(클래스)의 구조적 관계 표현 D

  • 클래스다이어그램 : 클래스간 관계표현 D((클속메접)클래스/속성/메서드(연산)/접근제어자,(-):Private::클래스 내부접근,(+):Public::클래스 외부 접근,(#):Protected::동일패키지/파생클래스 접근,(~):Default::동일패키지 접근)
  • 객체다이어그램 : 객체간 관계 표현 D
  • 컴포넌트다이어그램 : 컴포넌트간 의존관계표현 D
  • 배치다이어그램 : 컴포넌트 등 물리요소의 위치(배치구조) 표현 D
  • 복합체구조다이어그램 : 컴포넌트, 클래스가 복합구조를 갖는 경우, 그 내부 구조 표현 D
  • 패키지다이어그램 : 패키지간 관계표현 D(여기서 패키지는 클래스 등 모델요소를 그룹화한 것)->Streotype사용

5) 동적다이어그램 : 객체(클래스)의 상호작용 표현 D

  • 시퀀스다이어그램 : 객체/클래스의 상호작용을 시계열메시지로 표현한 D((객생실메)객체/생명선/실행/메시지)
  • 스테이트머신다이어그램 : 객체/클래스의 상태변화를 표현한 D
  • 콜라보레이션다이어그램 : 객체/클래스의 상호작용을 시계열메시지+연관관계로 표현한 D
  • 인터랙티브오버뷰다이어그램 : 조건문에 따라 다르게 처리되는 제어흐름을 표현한 D
  • 타이밍다이어그램 : 시간의 흐름에 따라 객체/클래스의 상태변화를 표현한 D

6) 기능적다이어그램 : 기능수행절차를 표현한 D

  • 유즈케이스다이어그램 :(정적) 사용자관점에서 시스템을 표현한 D
  • 액티비티다이어그램 :(동적) 기능수행관점에서 실제 기능을 수행하듯 처리를 표현한 D
반응형

 

<디자인패턴> : 생구행

1) 생성패턴 :(추빌팩프싱) 객체를 만드는 방법 예제

  • 추상팩토리(Abstract Factory): 서로 연관있는 객체들을 그룹화/추상화 하는 방법 예제
  • 빌 Builder : 인스턴스들을 합쳐 객체를 만드는 방법 예제
  • 팩 Factory Method : 상위클래스=인터페이스정의, 하위클래스=인스턴스 생성으로 업무분장하는 방법 예제
  • 프 Prototype : 원본객체를 복제하여 객체 생성하는 방법 예제
  • 싱 Singleton : 전역변수 안쓰고 참조객체를 만들어 다른 객체에서 사용하는 방법 예제

2) 구조패턴 :(데브프플어퍼컴) 클래스(객체)를 조합해 더 큰 구조를 만드는 방법 예제

  • 데 Decorator : 클래스에 객체들을 합치는 방법 예제
  • 브 Bridge: 독립적인 클래스들을 서로 연결하는 방법 예제
  • 프 Proxy : 가상 객체를 만들어 정보은닉하는 방법 예제
  • 플 Flyweight : 가상 인스턴스를 만들어 메모리 절감하는 방법 예제
  • 어 Adapter : 기존에 만들어진 클래스를 재사용하는 방법 예제
  • 퍼 Facade : 빌딩 외벽을 고치듯 보다 쉬운 인터페이스를 제공하여 시스템의 복잡도/결합도를 낮추는 방법 예제
  • 컴 Composite : 객체 관계를 트리구조로 바꾸어 계층구조를 단순화하는 방법 예제

3) 행위패턴 :(비스옵템체스메이커) 클래스(객체)의 상호작용하는 방법 예제

  • 비 Visitor : 메서드가 클래스들을 "방문"하여 기능 수행
  • 스 State : 객체의 "상태"에 따라 다르게 작업 수행
  • 옵 Observer : 객체를 “지켜보다”가 객체의 상태가 달라지면 다른 객체들에게 알림
  • 템 Template Method : 소스코드 일부분을 “템플릿화(캡슐화)”하는 방법 예제
  • 체 Chain of Responsibility : 하드코딩된 정적“연결”처리를 동적“연결”처리로 바꾸는 방법 예제
  • 스 Strategy : 행위객체를 클래스로 캡슐화해 동적 행위하도록 “전략”을 바꾸는 방법 예제
  • 메 Memento : “작업취소(Undo)” 기능개발 예제
  • 이 Iterator : 내부구조를 노출하지 않고 내부구조 각 항목들을 “순차적(반복적)”으로 접근하는 방법 예제
  • 커 Command : 기능이나 “명령”을 캡슐화해 재사용 가능한 클래스로 만드는 방법 예제
반응형