2023. 6. 21. 09:42ㆍ자격증/정보처리기사
정보처리기사 접수를 했는데 당장 다다음 주다. 아무튼 시험 보긴 해야 하니까 공부.
오늘은 이렇게 2022년 4월 정처기로 노베이스 스타트를 했다. 모르는게 엄청 많았다.
#include <stdio.h>
int x = 5;
char c = 'A';
float f = 3.14;
#반복문
int x = 10;
if (x > 0) {
printf("x is positive");
} else if (x < 0) {
printf("x is negative");
} else {
printf("x is zero");
}
#for문
for (int i = 0; i < 5; i++) {
printf("%d\n", i);
}
int i = 0;
while (i < 5) {
printf("%d\n", i);
i++;
}
#함수 정의
int add(int a, int b) {
return a + b;
}
int result = add(3, 4);
printf("Result: %d\n", result);
stdio.h는 standard input and output. 표준 입출력. .h는 헤더 파일의 확장자이다.
printf, scanf, fopen, fclose, fgets, fputs 등과 같은 표준 입출력 함수들이 선언되어 있고
표준 입력(stdin), 표준 출력(stdout), 표준 오류(stderr)에 대한 매크로 상수도 정의되어 있다.
c언어는 파이썬과 다르게 이렇게 타입을 앞에 적어줘야 한다.
if문 같은 경우는 자바랑 똑같은 것 같다. 대신 println인가? 이거 말고 printf를 사용한다.
int i = 10;
float f = 3.14;
char c = 'A';
char str[] = "Hello";
printf("%d\n", i); // 10 출력
printf("%f\n", f); // 3.140000 출력
printf("%c\n", c); // A 출력
printf("%s\n", str); // Hello 출력
printf("%x\n", i); // a 출력 (10을 16진수로 표현)
printf("%o\n", i); // 12 출력 (10을 8진수로 표현)
printf("%e\n", f); // 3.140000e+00 출력 (지수 표기법으로 출력)
c언어의 형식 지정자. d는 decimal(10진법). 아마 자바에서 봤던 기억이 있다. f는 플롯인 것이고, c는 단일 문자, s는 문자열 등이 있다.
UML 다이어그램 : 소프트웨어 시스템을 시각적으로 표현하고 문서화하기 위한 모델링 언어이다.(클래스 다이어그램, 시퀀스 다이어그램, 액티비티 다이어그램, 상태 다이어그램(State Diagram), 컴포넌트 다이어그램, 패키지 다이어그램,Package Diagram, State Transition Diagram, Deployment Diagram,순차 다이어그램) 등이 있다.
https://blog.naver.com/chltjdkkk/222521219991
메시지 지향 미들웨어(Message-Oriented Middelware) : 카프카나 레빗MQ 같은 것을 생각하면 된다. 독집적인 애플리케이션이고 메시지 큐를 활용한다. 서로 다른 어플 간 통신을 비동기 방식으로 지원한다. 대기열 큐로 메시지가 저장되어 안정적으로 응답하게끔 도와준다.
익스트림 프로그래밍 : 애자일 방법론의 일종. 구조적 방법론과 반대.(구조적 방법론은 폭포수 모형, 나선형 모형, 등이 있음.) 상식적인 원리와 경험을 살려 개발한다. 구체적인 실천방법을 정의하는데 개발 문서보다는 코드에 집중한다.
순차 다이어그램.
유스케이스 : 시스템 액터는 다른 프로젝트에서 이미 개발되어 사용되고 있고, 본 시스템과 데이터를 주고받으며 서로 연동되는 시스템이다.
액터가 인식할 수 없는 시스템 내부의 기능을 하나의 유스케이스로 파악하면 안된다.
오버로딩 vs 오버라이딩.
오버로딩은 같은 이름의 메소드를 중복해서 정의한다.
오버라이딩은 상속관계에서 슈퍼클래스 안의 메소드가 있을 때 자식 클래스에서 재정의하는 것.
Component :
GoF : 원래는 4명의 갱단이라는 뜻인데, 객체지향을 이야기하는 것이라고 생각하면 됨. 4명의 디자인패턴 저자를 따서 만듬.
생성패턴 : 객체 생성과 관련된 문제와 그에 대한 솔루션을 다룬다. 객체 생성을 캡슐화하고 유연성과 재사용성을 높이는 방법에 초점을 맞춘다.
- Builder
- Abstract Factory
- Factory Method
- ProtoType
- Singletone
구조패턴 : 클래스와 객체를 조합해 더 큰 구조를 형성하고 인터페이스를 통해 서로 다른 코드들이 상호작용할 수 있게 함. (확장성)
- Adapter(어댑터)
- Bridge(브리지)
- Composite(컴포지트)
- Decorator(데코레이터)
- Facade(퍼사드)
- Flyweight(플라이웨이트)
- Proxy(프록시)
행위패턴 : 객체들 사이의 상호작용과 알고리즘 분배와 관련된 문제와 그에 대한 솔루션을 다룬다. 객체들 사이의 효율적인 통신과 역할 분담, 알고리즘의 유연한 변경을 지원한다.
- Chain of Responsibility(책임 연쇄)
- Command(커맨드)
- Interpreter(인터프리터)
- Iterator(이터레이터)
- Mediator(미디에이터)
- Memento(메멘토)
- Observer(옵서버)
- State(상태)
- Strategy(전략)
- Template Method(템플릿 메서드)
- Visitor(방문자)
UI의 종류
GUI : 마우스로 선태갛여 작업하는 그래픽 환경.
CLI(Command Line) : 텍스트 형태 인터페이스.
NUI(Natural User) : 사용자의 말이나 행동으로 기기 조작.
VUI(Voice User) : 사람의 음성으로
OUI(Organic User) : 모든 사물과 사용자 간의 상호작용.
1~3과목을 풀어보니 10~13개 정도 맞는 것 같아서 4,5는 내일 싹 풀어보고 한 번에 정리하기로 했다.
목표는 평균 15개는 맞춰야 안정권이다. 3년 전에 데인 적이 있으니까.. 화이팅하자.
'자격증 > 정보처리기사' 카테고리의 다른 글
정보처리기사 공부하기 6일차. 2022년 1회. 5과목 공부 - 개조졌다. (0) | 2023.07.05 |
---|---|
정보처리기사 공부하기 5일차. 4과목 내가 모르는 것 개념 및 문제 해석. (0) | 2023.07.03 |
정보처리기사 공부하기 4일차. 4과목 내가 모르는 것 개념 및 문제 해석. (0) | 2023.07.02 |
정보처리기사 공부하기 3일차. 2과목 문제풀이 공부. (0) | 2023.06.27 |
정보처리기사 공부하기 2일차. 2과목 문제풀이 공부. (0) | 2023.06.22 |