전체 글

공부한 내용을 정리합니다
Programming/C

C언어 기초개념정리(5) 매크로, 구조체

매크로 반복적인 일들을 쉽게 하기 위해 만들어 놓은 것. 함수 한번 호출하면 사라져버린다 매크로 전처리기에서 처리한다 (#이 붙는다) 따라서 모든 프로그램에 공통적으로 들어가게 할 수 있다 1. 변수처럼 선언 #define N 10 앞으로 나오는 모든 N은 10으로 치환할 거다 2. 함수처럼 선언 #define SQR(X) X*X 앞으로 나오는 모든 X라는 인자를 받게 되면 X*X를 수행할 거다 EX #define N 10 #define SQR(X) X*X SQR(N); // = SQR(10); -> 10*10 -> 100을 출력 SQR(N+2); // X = N+2 -> 10+2*12+2 -> 32 ⭐ SQR(N); 모든N은 10이므로 SQR(10); 10*10 100을 출력 SQR(N+2); X = ..

Programming/C

C언어 기초개념정리(4) 함수, Static 변수, 재귀함수

함수 구조 반환타입 함수명(인자들) { 수행할 작업1 수행할 작업2 } 반환타입 : 어떤 형태로 반환할거냐 void 타입 반환타입이 없는, 하지 않아도 되는 것 함수 선언과 사용 int sum(int a, int b) { //정수 a,b를 받는 함수 sum 선언 int c = a + b // c에 저장 return c; // 리턴값 int c } int data = sum(10,20); // 10,20을 sum함수에 넘겨준다. 30을 리턴시켜주어 30을 데이터 값에 넣어준다 printf("%d", data); // 30 EX #include void swap(int a, int b){ int temp; temp = a; a = b; b = temp; // 전역, 정적변수 빼고는 폐기됨 } int main..

Programming/C

C언어 기초개념정리(3) 조건문, 반복문, 배열, 포인터

조건문 1) If if( 조건1 ) { 조건1이 만족할 때의 처리; //나머지는 수행 안 한다 } else if( 조건2 ){ 조건2가 만족할 때의 처리; } else{ 모든 조건이 아닐 때의 처리 } 2) Switch문 (제어문) 여러 개 중에 하나를 선택하는 것 ex. 자판기버튼을 생각하면 된다! 버튼을 누르면 입력값에 맞는 걸 결과로 받게 된다. 주의할 건 브레이크문! int a=0, b=1; switch(a) { case 0 : printf("%d\\n", b++); break; case 1 : printf("%d\\n", ++b); break; default : printf("%d\\n", b); break; } a에 0, b에 1가 들어있는 정수 선언 switch문을 a를 가지고 수행한다 a는..

Programming/C

C언어 기초개념정리(2) 출력 형식, 진법 변환

📌 출력 형식 출력 변환기호 %d ⭐ 부호 있는 10진수 출력 정수 or 문자(아스키코드) %f 고정 소수점으로 출력 실수 %c 문자 출력 문자 하나 %s 문자열 출력 (주소값을 받으면 해당 주소부터 쭉 출력) 문자열 %x 16진수 출력 정수 %o 8진수 출력 정수 출력함수는 인자값이 무조건 있어야 한다. printf("값1 : %d, 값2 : %d", 10, 5); // 값1 : 10, 값2 : 5 printf("값 : %c", 65); // 값 : A printf("값 : %c", 'A'); // 값 : A printf("값 : %s", "안녕하세요."); // 값 : 안녕하세요. // %s는 포인터 값에 쓰인다. printf("값 : %x", 34); // 16진수 printf("값 : %c", )..

Programming/C

C언어 기초개념정리(1) 변수, 연산자, 비트연산자

정보처리기사 공부하면서 정리한 내용입니다. C언어의 컴파일 과정 .c → 전처리기 → .i 전처리 구문을 처리하는 과정 ex. .c 파일로 코드를 짤 때. 맨 위에 #include 를 넣는것. 여기에 printf 등의 많이 쓰는 함수가 들어있다. 이걸 내가 만든 것과 합쳐주는 것이 전처리기의 역할. .i → 컴파일러 .s 고수준 언어를 저수준 언어로 변환하는 것. (번역) 기계어와 가장 가까운 형태의 언어로 바꿔준다. .s → 어셈블러 → .o 완전히 기계어로 바꾸어 준다. .o → 링커 → .exe 여러 개의 오브젝트 파일을 합치거나, 라이브러리를 합치는 역할. 변수 변수 생성 규칙 및 특징 사용 불가 예약어(키워드) 공백 포함 언더바 이외의 특수문자 제한 첫 글자는 영문과 언더바(_)만 대소문자를 구..

Programming/Front-end

JS / =, ==, ===의 차이

if (true) { //body } else { //else body } ()안의 조건이 true면 body를 실행한다. false라면 else body를 실행한다. operater && : and || : or === : equal (유형 및 값까지 전부 같다) = : a = b는 하나의 value를 할당한다는 뜻이다. == : 서로 다른 유형의 두 변수의 값을 비교할 수 있다 !== : not equal (유형 및 값까지 전부 다르다) != : == 처럼 유형이 달라도 비교할 수 있다. example const age = parseInt(prompt("how old are you?")); if (isNaN(age) || age < 0) { console.log("Please enter a real ..

Software Engineering/SDLC

보안 설계 및 구현

정보처리기사 필기 준비하며 정리한 내용입니다. SW개발 보안 설계 정보 보안 관리 기술 정보보안의 3요소 기밀성 무결성 가용성 AAA ⭐ 인증 Authentication 신원 검증, 로그인 등 권한 부여 Authorization 계정 관리 Accounting 인증 제도 ISMS 정보보호 관리체계 인증 회사의 종합적인 체계에 대한 인증제도 PIMS 개인정보 관리체계 지금은 사용하지 않는다 ISMS-P 정보보호 및 개인정보보호 관리체계 인증 Secure SDLC SDLC 소프트웨어 생명주기 방법론 ⭐ CLAPS SDLC의 초기 단계에서 보안 강화하려고 개발된 방법론 현재 운용 중인 시스템에 적합 MS-SDL Seven Touchpoints 소프트웨어 보안 모범사례를 SDLC에 통합한 방법론 모든 산출물에 위..

Software Engineering/SDLC

네트워크, SW, HW 구축 관리

정보처리기사 필기 준비하며 정리한 내용입니다. 네트워크 구축 절차 요구사항 정의 기본 설계 상세 설계 구축 테스트 운용 네트워크 토폴로지 계층형 상위부터 트리형태 버스형 장애 시 전체 마비 성형 star ⭐ 중앙 장애시 전체 마비 링형 저렴. 충돌 없음. 구성변경 힘듦 장애 발생시 전체 마비 망형 mesh 전체가 그물로 얽힌 형태 회선수 : n(n-1) / 2 각 장치당 포트 수 : n-1 자기 빼고라서 📌네트워크 장비 백본 백본 네트워크 대규모 패킷 통신망 백본 스위치 모든 패킷이 지나간다. 네트워크 중심에 위치 종류 L2 스위치 : 더미가 아닌 허브(스위치) L3 스위치 : 라우터 L4 스위치 : 포트 기반. 로드 밸런싱. 전송 계층에서 운용됨. L7 스위치 : 전 계층. 방화벽 역할. 보안장비에 주..

Software Engineering/SDLC

소프트웨어 개발 방법론, 비용&일정, 테일러링

정보처리기사 필기 준비하며 정리한 내용입니다. 소프트웨어 공학 품질 높은 소프트웨어를 개발하기 위한 학문 소프트웨어 공학의 3R 역공학 Reverse Engineering 기본에 개발된 시스템을 CASE 도구를 이용해 문서로 추출. 개발단계를 역으로 올라가는 것 재공학 Re-engineering 기존 시스템 재구성 + 이기종에서 사용할 수 있도록 변환. 예방 보수와 관련됨 유지 운영. 유지보수성 향상 과정 ⭐ 분석 → 재구성 → 역공학 → 이관(마이그레이션) 재사용 Reuse 이미 개발된, 잘 만들어진 소프트웨어 전체 또는 일부분 다시 사용 범위 함수와 객체 컴포넌트 애플리케이션 방법 합성Composition 중심 : 블록(모듈)을 끼워맞춰서 생성Generation 중심 : 추상화 형태로 쓰여진 명세를 ..