※ 각 내용의 출처가 있는 경우, 관련 내용 안에 링크를 걸어 두었습니다.
💡 Java 출력값 구하기
연산자 ^ ➡ 배타적 OR
public class testco {
public static void main(String[] args) {
int a = 3, b = 4, c = 3, d = 5;
if((a == 2 | a == c) & !(c > d) & (1 == b ^ c != d)) {
a = b + c;
if(7 == b ^ c != a) {
System.out.println(a);
} else {
System.out.println(b);
}
} else {
a = c + d;
if(7 == c ^ d != a) {
System.out.println(a);
} else {
System.out.println(d);
}
}
}
}
- 여기서 첫 번째 if문은 TRUE
( a==2 | a==c ) 에서 a==c에서 일치
!( c>d ) & ( 1==b ^ c!=d ) 에서 c<d이고, c는 d와 같지 않다. - a 값은 b+c의 합으로 7로 대입
- 두 번째 if문에서 c는 a와 불일치 하므로 TRUE
- 결과적으로 System.out.println(a); ➡ 7을 출력한다.
💡 C 출력값 구하기
**arr 은 이중포인터로 *arr[0] 값을 가리키고 있으므로 12가 된다.
따라서 *arr[1] + **arr + 1 = 37
💡 SQL
CROSS JOIN은 m*n개의 열을 생성한다. 여기서, T2의 RULE 조건에 따른 s%로 시작하는 NAME이 2개, %t%로 중간에 trk 속한 NAME이 2개이므로 총 4개가 된다.
💡 파이썬 출력값
100과 200은 불일치하는 값이다. 따라서 False를 출력한다.
💡 UML 다이어그램
Use Case 다이어그램 - 요구 분석 과정에서 시스템과 외부와의 상호 작용을 묘사
Acitivy 다이어그램 - 업무의 흐름을 모델링하거나 객체의 생명주기를 표현
Sequence 다이어그램 - 객체 간의 메시지 전달을 시간적 흐름에서 분석
Collaboration 다이어그램 - 객체와 객체가 주고받는 메세지 중심의 작성
Class 다이어그램 - 시스템의 구조적 모습을 그림, 도메인 구조를 나타내어 도메인 안의 개념과 추상적인 개념을 기술, 속성과 메서드를 포함
Component 다이어그램 - 소프트웨어 구조를 그림
Deployment 다이어그램 - 기업 환경의 구성과 컴포넌트들 간의 관계를 그림
💡 객체지향 디자인패턴
생성패턴
- 빌더 Builder - 생성 단계를 캡슐화 해서 구축 공정을 동일하게 이용하도록 하는 패턴
- 프로토타입 Prototype - 기존 객체를 복제해서 새 객체를 생성할 수 있도록 하는 패턴
- 팩토리 메소드 Factory Method - 상위 클래스에서 객체를 생성하는 인터페이스를 정의하고 하위 클래스에서 인스턴스를 생성하는 패턴
- 추상 팩토리 Abstract Factory - 생성군들을 하나에 모아놓고 팩토리 중에서 선택하게 하는 패턴
- 싱글톤 Singgleton - 유일한 하나의 인스턴스를 보장하도록 하는 패턴
구조패턴
- 어댑터 Adapter - 인터페이스로 인해 함께 사용하지 못하는 클래스를 함께 사용하도록 하는 패턴
- 브릿지 Bridge - 추상과 구현을 분리해서 결합도를 낮춘 패턴
- 데코레이터 Decorator - 소스를 변경하지 않고 기능을 확장하는 패턴
- 퍼싸드 Facade - 하나의 인터페이스를 통해 느슨한 결합을 제공하는 패턴
- 플라이웨이트 Flyweight - 대량의 작은 객체들을 공유하는 패턴
- 프록시 Proxy - 대리인이 대신 그 일을 처리하는 패턴
- 컴포지트 Composite - 개별 객체와 복합 객체를 클라이언트에서 동일하게 사용하도록 하는 패턴
행위패턴
- 인터프리터 Interpreter - 언어 규칙 클래스를 이용하는 패턴
- 템플릿 메소드 Templete Method - 알고리즘 골격의 구조를 정의한 패턴
- Chain of Responsibility - 객체끼리 연결 고리를 만들어 내부적으로 전달하는 패턴
- 커멘드 Command - 요청 자체를 캡슐화해 파라미터로 넘기는 패턴
- Iterator - 내부 표현은 보여주지 않고 순회하는 패턴
- 중재자 Mediator - 객체 간 상호작용을 캡슐화한 패턴
- Memento - 상태 값을 미리 저장해두었다가 복구하는 패턴
- 옵저버 Observer - 상태가 변할 때 의존자들에게 알리고 자동으로 업데이트하는 패턴
- 상태 State - 객체 내부 상태에 따라서 행위를 변경하는 패턴
- 전략 Strategy - 다양한 알고리즘을 캡슐화해 알고리즘 대체가 가능하도록 하는 패턴
- 방문자 Visitor - 오퍼레이션을 별도의 클래스에 새롭게 정의한 패턴
💡 C 출력값
#include
struct jsu {
char nae[12];
int os, db, hab, hhab;
};
int main(){
struct jsu st[3] = {{"데이터1", 95, 88},
{"데이터2", 84, 91},
{"데이터3", 86, 75}};
struct jsu* p;
p = &st[0];
(p + 1)->hab = (p + 1)->os + (p + 2)->db;
(p + 1)->hhab = (p+1)->hab + p->os + p->db;
printf("%d\n", (p+1)->hab + (p+1)->hhab);
}
C의 출력값을 구하는 문제다.
여기서 main에 printf( ) 값을 보면, p는 st배열의 주소값을 나타내며, p+1이라고 표시된 것은 st[1]의 주소값을 가리킵니다.
(p + 1)->hab = (p + 1)->os + (p + 2)->db;
그러므로 먼저 (p+1)->hab 부분을 보면, st[1]의 주소값에서 os와 st[2]의 주소값에서 db가 가지는 값의 합입니다. 따라서, 84+75=159가 됩니다.
(p + 1)->hhab = (p+1)->hab + p->os + p->db;
이 부분에서 (p+1)->hab 값인 159와 st[0]의 주소값에서 os와 st[0]의 주소값에서 db가 가지는 값의 합을 의미합니다. 따라서, 159+95+88=342가 됩니다.
그래서 결과적으로 출력되는 값은 159+342=501입니다.
💡 파일구조 File Structure
파일구조는 파일을 구성하는 레코드들이 보조기억장치에 편성되는 방식으로 접근 방식에 따라 방식이 달라진다. 접근 방법중, 레코드들을 키-값 순으로 정렬하여 기록하고, 레코드의 키 항목만을 모은 인덱스을 구성하여 편성하는 방식이 있으며, 레코드를 참조할 때는 인덱스이 가르키는 주소를 사용하여 직접 참조할 수 있다. 파일 구조에는 순차 접근, 인덱스 접근, 해싱 접근이 있다.
💡 GUI
사용자가 그래픽을 통해 컴퓨터와 정보를 교환하는 환경을 말한다.
💡 소프트웨어 통합 테스트
상향식과 하향식으로 구분된다.
상향식은 하위 모듈에서 상위 모듈로 테스트를 진행하는 방식을 말한다. 테스트 드라이버를 사용해야 하며, 하위 모듈과 상위 모듈에 대한 인터페이스 역할을 하는 테스트스텁이 존재한다.
'자격증' 카테고리의 다른 글
[정보처리기사] 시험범위 마지막 복습 (0) | 2022.05.09 |
---|---|
[정보처리기사 실기] 2021년 2회 핵심내용 (1) (0) | 2022.04.14 |
[정보처리기사 실기] 2021년 3회 핵심내용 (1) (0) | 2022.04.12 |
[정보처리기사 실기] 프로토콜 (0) | 2022.03.27 |
[SQLD] 1. SQL 기본 (0) | 2021.11.18 |
- 호스팅영역
- AWS
- IT 5분 잡학사전
- 노마드코더
- SQLD
- 북클럽
- gradle
- 독서후기
- 개발도서
- ubuntu
- LifecycleException
- 배포
- java
- 실용주의프로그래머
- git연동
- 오늘의코딩
- putty
- intellij
- 기술블로그
- 노개북
- 정보처리기사 실기
- gradle build
- JIRA
- filezila
- 웹페이지만들기
- EC2
- jdbc
- 정보처리기사
- spring
- 정보처리기사 필기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |