본문 바로가기

백엔드154

정보처리기사 - 22년 1회 기출문제 오답노트 - 2편 정보처리기사 - 22년 1회 기출문제 오답노트🗂️ 목차1. 소프트웨어 설계2. 소프트웨어 개발3. 데이터베이스 구축4. 프로그래밍 언어 활용5. 정보시스템 구축 관리 🚩 점수계산 각 과목 20문제씩, 총 5과목 100문제이며, 문제당 1점으로 계산.howtomakecode.tistory.com 🗂️ 목차1. 소프트웨어 설계2. 소프트웨어 개발3. 데이터베이스 구축4. 프로그래밍 언어 활용5. 정보시스템 구축 관리 🚩 점수계산 각 과목 20문제씩, 총 5과목 100문제이며, 문제당 1점으로 계산.총점: 18 + 13 + 16 + 12 + 16 = 75점※ 합격 기준은 보통 과락 없이 60점 이상, 즉 각 과목 8점 이상이며 전체 60점 이상.⭐3. 데이터베이스 구축 (16/20)📌[43] 어떤 릴.. 2025. 5. 7.
정보처리기사 - 22년 1회 기출문제 오답노트 - 1편 🗂️ 목차1. 소프트웨어 설계2. 소프트웨어 개발3. 데이터베이스 구축4. 프로그래밍 언어 활용5. 정보시스템 구축 관리 🚩 점수계산 각 과목 20문제씩, 총 5과목 100문제이며, 문제당 1점으로 계산.총점: 18 + 13 + 15 + 12 + 16 = 74점※ 합격 기준은 보통 과락 없이 60점 이상, 즉 각 과목 8점 이상이며 전체 60점 이상. ⭐1. 소프트웨어 설계 (18/20) 📌[05] 설계 기법 중 하향식 설계 방법과 상향식 설계 방법에 대한 비교 설명으로 가장 옳지 않은 것은?- 문제 유형 : 하향식 설계 방법 vs 상향식 설계 방법 - 내 답안 : 하향식 설계에서 레벨이 낮은 데이터 구조의 세부 사항은 설계 초기 단계에서 필요하다.- 정답 : 상향식 설계에서는 인터페이스가 이미.. 2025. 5. 5.
IPv4 vs IPv6 비교 ⭐ IPv4 vs IPv6 항목IPv4IPv6주소 길이8비트 씩 4부분, 32비트 (약 43억 개 주소)8비트 씩 6부분, 128비트 (사실상 무한대의 주소 공간)주소 표기법10진수 4개 (예: 192.168.0.1)16진수 8쌍 (예: 2001:0db8::1)주소 고갈 문제주소 부족으로 NAT 사용넓은 주소 공간으로 NAT 불필요보안 기능선택적 (IPSec 별도 설정 필요)기본적으로 IPSec 지원브로드캐스트지원미지원 (멀티캐스트 및 애니캐스트 사용)헤더 구조복잡하고 가변적단순하고 고정적도입 시기1981년1998년도입 이유초기 인터넷 통신용주소 고갈 문제 해결 및 보안, 효율성 개선 목적 ⭐ IPv4 클래스 범위 표 클래스주소 범위 시작 주소 범위 끝시작주소(10진)끝주소(10진)용도A0.0.0.01.. 2025. 5. 4.
페이지 교체 알고리즘(FIFO) 와 스래싱(THRASHING) ⭐ 페이지 교체 알고리즘 - FIFO🔸 동작 방식페이지 요청: CPU가 특정 페이지를 요청.페이지 폴트 확인: 해당 페이지가 메모리에 없으면 페이지 폴트 발생.프레임 공간 확인:프레임에 빈 자리가 있으면 그냥 페이지 삽입.없으면 가장 먼저 들어온(오래된) 페이지를 제거.새 페이지 적재: 빈 자리 또는 제거된 자리에 새 페이지 삽입.🔸 용어 설명📘 1. 페이지(Page)프로세스의 가상 메모리를 일정한 크기로 나눈 단위예: 프로세스가 100KB를 요구하면 4KB 단위로 나누어 25개 페이지로 관리CPU는 가상 주소 = 페이지 번호 + 오프셋 형태로 접근함📗 2. 프레임(Frame)실제 메모리(RAM)를 페이지와 같은 크기로 나눈 단위페이지는 프레임에 적재됨 (1:1 매핑)물리 주소는 프레임 번호 + .. 2025. 5. 4.
파이썬 vs 자바 차이점 ⭐ 기본적인 차이점 항목파이썬자바언어 철학간결함, 가독성 ("There should be one obvious way to do it")엄격한 명시성, 객체지향 중심타입 시스템동적 타이핑 (런타임 타입 결정)정적 타이핑 (컴파일 시 타입 결정)실행 방식인터프리터 방식 (CPython, PVM)JVM 위에서 바이트코드 실행코드 작성량코드 간결함, 빠른 개발코드 장황하지만 명확한 구조화메모리 관리자동 가비지 컬렉션 + 레퍼런스 카운팅JVM 기반 가비지 컬렉션멀티스레딩GIL(Global Interpreter Lock) 존재, 병렬에 제한멀티스레딩 최적화 (JVM 수준)플랫폼 의존성인터프리터 설치 필요JVM이 설치된 환경이면 어디서나 실행주 사용 분야스크립트, 웹, 데이터 분석, AI엔터프라이즈 웹, 안드로이드.. 2025. 5. 4.
자바 2차원 배열에 대한 고찰... ⭐ 2차원 배열이란?2차원 배열은 **표처럼 행(Row)과 열(Column)**로 구성된 배열입니다. ⭐ 2차원 배열 초기화int a[2][3] = {{11,22,33},{44,55,66}};-> 2개의 행과 3개의 열을 갖는 정수형 배열 ⭐ 2차원 배열 인덱스a[0][0]a[0][1] a[0][2] 112233445566 a[1][0] a[1][1] a[1][2] ⭐ 2차원 배열의 메모리 배치 - 배열은 행과 열 구조로 작성되지만, 실제 메모리에는 선형(1차원) 형태로 순차 저장된다. - 행 우선(Row-major Order)으로 저장됨✅ 1. C언어 vs Java 2차원 배열의 차이항목C언어JAVA선언 방식int arr[2][3];int[][] arr = new int[2][3];자료구조진짜 .. 2025. 5. 4.
자바 연산자 우선순위 우선순위 높은 순 -> 낮은 순 정리 암기 문장 (축약): 괄단산시비논삼대 괄호 → 단항 → 산술 → 시프트 → 비교 → 논리 → 삼항 → 대입 ⭐ 연산자 우선순위 계산 예제 문제 : (a + b) * c 30 && true ? 100 : 200;1. 괄호: (a + b) → 152. 산술: step1 * c → 303. 시프트: step2 30 → true5. 논리: step4 && true → true6. 삼항: step5 ? 100 : 200 → 1007. 대입: result = 100Process finished with exit code 0 2025. 5. 4.
비트연산자 <<, >> 사용이유 및 계산법 ⭐ 시프트연산 쓰는 이유a * 2 → 곱셈 연산 (산술 연산, 계산 복잡도 높음)a 비트 이동만 하므로 훨씬 빠르고 가벼움⭐ 실제 속도 차이 옛날 CPU곱셈은 복잡한 연산, 시프트는 단순함현대 CPU차이 없음컴파일러와 하드웨어가 모두 최적화됨고성능 코드의도 표현 + 미세 최적화⭐ 시프트연산 공식a → a의 비트를 n칸 왼쪽으로 이동,→ 2ⁿ을 곱한 효과a >> n→ a의 비트를 n칸 오른쪽으로 이동,→ 2ⁿ으로 나눈 몫 (정수 나눗셈) 👀자바 성능 테스트 실행하였으나 JVM 내부 요인으로 인해 오히려 시프트 연산 속도가 더 느리게 나옴 현대 CPU 기준 (25.05.04) *와 ⭐ 왼쪽 시프트 int a = 3; // 0000 0011 (2진수)int b = a ⭐ 오른쪽 시프트 >>int .. 2025. 5. 4.
C언어 vs Java 자료형 상세 비교 ⭐ C언어 자료형구분자료형바이트 수값의 범위정수형short2 byte-32,768 ~ 32,767정수형int4 byte-2,147,483,648 ~ 2,147,483,647정수형long4 byte-2,147,483,648 ~ 2,147,483,647정수형long long8 byte약 ±9×10¹⁸실수형float4 byte±3.4×10³⁸ (정밀도 낮음)실수형double8 byte±1.7×10³⁰⁸ (정밀도 높음)문자형char1 byte-128 ~ 127 (ASCII 문자) ⭐ Java 자료형구분자료형바이트 수값의 범위정수형byte1 byte-128 ~ 127정수형short2 byte-32,768 ~ 32,767정수형int4 byte-2,147,483,648 ~ 2,147,483,647정수형long8 by.. 2025. 5. 4.
윈도우 운영체제 기본 명령어 🚩기본 명령어ASSOC파일 확장명 연결을 보여주거나 수정합니다.ATTRIB파일 속성을 표시하거나 바꿉니다.BREAK확장된 CTRL+C 검사를 설정하거나 지웁니다.BCDEDIT부팅 로딩을 제어하기 위해 부팅 데이터베이스에서 속성을 설정합니다.CACLS파일의 ACL(액세스 제어 목록)을 표시하거나 수정합니다.CALL한 일괄 프로그램에서 다른 일괄 프로그램을 호출합니다.CD현재 디렉터리 이름을 보여주거나 바꿉니다.CHCP활성화된 코드 페이지의 번호를 표시하거나 설정합니다.CHDIR현재 디렉터리 이름을 보여주거나 바꿉니다.CHKDSK디스크를 검사하고 상태 보고서를 표시합니다.CHKNTFS부팅 시 디스크 확인을 표시하거나 변경합니다.CLS화면을 지웁니다.CMDWindows 명령 인터프리터의 새 인스턴스를 시작합.. 2025. 5. 1.
Django가 자동으로 검사해주는 것들(유용한 tip!) 1. 폼 필드 기반 유효성 검사from django import formsclass MyForm(forms.Form): email = forms.EmailField(required=True) age = forms.IntegerField(min_value=0)필드 타입자동 검사EmailField이메일 형식 자동 검사 (abc@xyz.com)URLFieldhttp(s):// 포함한 유효한 URL인지IntegerField(min_value=...)최소/최대값 검사CharField(max_length=...)길이 초과 검사DateField날짜 형식 자동 파싱ChoiceField(choices=...)정의된 값 이외의 값 거부2. 모델 필드 제약 검사class User(models.Model): .. 2025. 4. 25.
인텔리제이로 Django/Python 개발환경 세팅하기 (윈도우) STEP1. 개발환경 WindowDjangoPythonPowershellIntelliJ 로컬에 파이썬, 인텔리제이가 우선 설치되어있어야 합니다. 인텔리제이에서 파이썬 쓰는 법은 다음 게시글을 참조해주세요. STEP2. 가상환경 세팅python -m venv venvvenv라는 가상환경 폴더가 생성됩니다.가상환경을 사용하면 전역 파이썬 환경에 영향을 주지 않고 독립적인 개발이 가능합니다. STEP3. 가상환경 활성화 Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass.\venv\Scripts\Activate.ps1정상적으로 활성화되면 프롬프트 앞에 (venv)가 붙습니다. STEP4. Django 설치 pip install djangopython -m .. 2025. 4. 16.
[JAVA의 정석] Chapter16_연습문제 [16-1] ip주소가 192.168.10.100이고 서브넷 마스크(subnet mask)가 255.255.255.0일 때, 네트워크 주소와 호스트 주소를 계산하여 화면에 출력하는 프로그램을 작성하시오. 단, 비트연산자를 사용해서 계산해야 한다. 네트워크 주소 : 192.169.10.0.호스트 주소 : 0.0.0.100. 답public class Exercise16_1 { public static void main(String[] args) { byte[] ip = { (byte) 192, (byte) 168, (byte) 10, (byte) 100 }; byte[] subnet = { (byte) 255, (byte) 255, (byte) 255, (byte) 0 }; byte[] nwAddres.. 2024. 12. 15.
[JAVA의 정석] Chapter15_연습문제 [15-1] 커맨드라인으로부터 파일명과 숫자를 입력받아서, 입력받은 파일의 내용의 처음부터 입력받은 숫자만큼의 라인을 출력하는 프로그램(FileHead.java)을 작성하라.[Hint] BufferedReader의 readLine( )을 사용하라. C:\jdk1.8\work\ch15>java FileHead 10 USAGE: java FileHead 10 FILENAME  C:\jdk1.8\work\ch15>java FileHead 10 aaa aaa은/는 디렉토리이거나, 존재하지 않는 파일입니다.  C:\jdk1.8\work\ch15>java FileHead 10 FileHead.java 1:import java.io.*; 2: 3:class FileHead 4:{ 5: public static voi.. 2024. 12. 15.
[JAVA의 정석] Chapter14_연습문제 [14-1] 메서드를 람다식으로 변환하여 아래의 표를 완성하시오.대표사진 삭제 사진 설명을 입력하세요.답0열 선택0열 다음에 열 추가1열 선택1열 다음에 열 추가0행 선택0행 다음에 행 추가1행 선택1행 다음에 행 추가2행 선택2행 다음에 행 추가3행 선택3행 다음에 행 추가4행 선택4행 다음에 행 추가5행 선택5행 다음에 행 추가6행 선택6행 다음에 행 추가셀 전체 선택열 너비 조절행 높이 조절 메서드람다식 int max(int a, int b) {return a > b ? a : b;} (int a, int b) -> a > b ? a : bint printVar(String name, int i) {System.out.println(name+"="+i);} (String name, int i) ->.. 2024. 12. 15.
[JAVA의 정석] Chapter13_연습문제 [13-1] 쓰레드를 구현하는 방법에는 Thread 클래스로부터 상속받는 것과 Runnable 인터페이스를 구현하는 것 두 가지가 있는데, 다음의 코드는 Thread클래스를 상속받아서 쓰레드를 구현한 것이다. 이 코드를 Runnable 인터페이스를 구현하도록 변경하시오.class Exercise13_1 { public static void main(String args[]) { Thread1 th1 = new Thread1(); th1.start(); }}class Thread1 extends Thread { public void run() { for (int i = 0; i  답public class Exercise13_1 { public static void main(String args[.. 2024. 12. 15.
[JAVA의 정석] Chapter12_연습문제 [12-1] 클래스 Box 가 다음과 같이 정의되어 있을 때, 다음 중 오류가 발생하는 문장은?경고가 발생하는 문장은?class Exercise12_1 { public static void main(String[] args) { }}class Box{ T item; void setItem(T item){this.item = item;} T getItem(){return item;}} a. Box b = new Box( );b. Box b = (Object)new Box( );c. new Box( ).setItem(new Object( ));d. new Box( ).setItem("ABC");  답a,b,ca. Box b = new Box( ); -> Box를 Bo.. 2024. 12. 15.
반응형