분류 전체보기 213

자료구조 선형구조

자료구조 (Data Structure) : 데이터를 효율적으로 저장하고, 관리하며사용할 수 있도록 조직화한 방법이나 체계를 의미한다. 자료구조는 프로그래밍에서 데이터를 처리하고 알고리즘을 설계하는데 핵심적인 역할을 한다.  *효율적인 프로그램을 작성할 때 가장 우선적인 고려사항은 저장 공간의 효율성과 실행시간의 신속성이다. 자료구조는 프로그램에서 사용하기 위한 자료를 기억장치의 공간 내에 저장하는 방법과 저장된 그룹 내에 존재하는 자료 간의 관계, 처리 방법 들을 연구 분석하는 것을 말한다.  선형 구조(Linear Structure) 종류   배열 (Array) : *배열은 동일한 자료형의 데이터들이 같은 크기로 나열되어 순서를 갖고 있는 집합이다배열은 정적인 자료 구조로 기억장소의 추가가 어렵고, 데..

카테고리 없음 2024.12.18

싱글톤(Singleton) 패턴

싱글톤(Singleton) 패턴 소프트웨어 디자인 패턴 중 하나로, 특정 클래스의 인스턴스를 단 하나만 생성하고, 그 인스턴스에 대한 전역적인 접근점을 제공하는 방식이다.  싱글톤 패턴 특징 특정 클래스의 인스턴스가 실행 중 하나만 생성되도록 보장전역적으로 접근할 수 있도록 인스턴스의 참조를 제공한다클래스 외부에서 객체를 직접 생성할 수 없도록 제어한다싱글톤 패턴을 사용하는 이유 - 객체를 여러 번 생성하지 않고, 필요한 경우 동일한 인스턴스를 재사용하므로 메모리와 자원을 절약한다- 여러 클래스나 모듈에서 데이터를 공유하거나 조작할 때 사용한다- 전역적으로 공유되는 인스턴스를 통해 애플리케이션의 일관성을 유지 public class Singleton { private static Singleton ins..

카테고리 없음 2024.12.17

class와 instance

클래스(Class)를 비유로 설명을 하자면 자동차라는클래스는 자동차가 가져야할 속성과 기능을 정의한 추상적인 개념이다 class Car {String color; // 속성int speed; void drive() { // 기능System.out.println("The car is driving.");}}  인스턴스(Instance)는 클래스를 기반으로 만들어진 실제 객체이다. "빨간색 자동차"와 "파란색 자동차" 같은 구체적인 것들이 인스턴스이다 public static void main(String[] args) {Car redCar = new Car(); // redCar는 Car 클래스의 인스턴스redCar.color = "Red"; // 인스턴스 속성 설정 redCar.drive(); // 인스..

카테고리 없음 2024.12.16

static

static은 프로그래밍에서 정적이라는 의미를 가지고 있다. 주로 java와 같은 객체지향 언어에서 사용이 된다.static 키워드는 변수, 메서드 블록 또는 내부 클래스에 적용될 수 있다  static 변수 (정적 변수)클래스에 소속된 변수이며, 클래스의 모든 인스턴스에서 공유된다.객체를 생성하지 않고도 클래스 이름을 통해서 접근이 가능하다메모리 공간은 프로그램 실행 시 한 번만 할당이 된다  class MyClass {     static int count = 0;     MyClass() {         count++;     } } public class Main {     public static void main(String[] args) {         new MyClass();     ..

카테고리 없음 2024.12.15

변수

변수(Variable) : 컴퓨터가 명령을 처리하는 도중 발생하는 값을 저장하기 위한 공간으로, 변할 수 있는 값을 의미한다. 변수는 저장하는 값에 따라서 정수형, 실수형, 문자형 등으로 구분된다.  변수명 작성 규칙 : 영문자, 숫자, _(under bar)로 시작해야 하며, 숫자는 올 수 없다.첫 글자는 영문자나 _로 시작해야하며, 숫자는 올 수 없다글자 수에 제한이 없다공백은 사용할 수 없다대/소문자를 구분한다 예약어를 변수명으로 사용할 수는 없다. 변수 선언 시 문장 끝에 반드시 세미콜(;)을 붙여야 한다. 예약어란 어떠한 정해진 기능을 수행하도록 정해진 단어이다변수 이름이나 혹은 다른 목적으로는 사용이 불가하다 상수란 ? :변수는 프로그램을 실행하는 도중 발생한 값을 저장하기 위한 공간이다 변수..

카테고리 없음 2024.12.14

블록체인

블록체인 Block : 데이터를 담는 단위로, 각각의 블록에는 거래 정보, 타임스탬프, 이전 블록의 해시 등이 포함된다.  Chain : 블록들이 순차적으로 연결되어 있으며, 이를 통해 데이터가 조작되지 않도록 보장한다.  블록체인의 작동원리 :  거래발생 : 사용자가 데이터를 블록체인 네트워크에 등록한다. 검증 : 네트워크의 참여자(노드)가 거래의 유효성을 확인한다블록 생성 : 검증된 거래가 블록에 추가되고, 새 블록이 이전 블록에 연결된다. 블록 전파 : 새로 생성된 블록이 네트워크 전체에 전파되어 동기화된다. 블록체인의 특징 : 탈중앙화 : 중앙 서버나 관리자 없이, 네트워크의 모든 참여자가 데이터를 공유한다. 투명성 : 모든 거래가 기록이 공개되어 누구나 열람할 수 있다. 변조 방지 : 블록에 한..

카테고리 없음 2024.12.13

SW관련 용어

인공지능 (Artification Intelligence):인간의 두뇌와 같이 컴퓨터 스스로 추론, 학습, 판단 등 인간지능적인 작업을 수행하는 시스템이다 뉴럴링크(Neuralink) : 사람의 뇌와 컴퓨터를 결합하는 기술을 개발하기 위해 설립한 회사이다작은 전극을 뇌에 이식함으로써 생각을 업로드하고 다운로드하는 것을 목표로 삼고 있는 회사이다 딥 러닝(Deep Learning) :인간의 두뇌를 모델로 만들어진 인공 신경망을 기반으로 하는 기계 학습 기술이다마치 사람처럼 스스로 학습할 수 있고 많은 데이터를 정형화하지 않고도 스스로 필요한데이터를 수집하고 분석하여 고속으로 처리할 수 있다 매시업(Mashup) : 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어나 서비스, 데이터베이스등을 만드..

카테고리 없음 2024.12.12

TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)

TCP (Transmission Control Protocol) 특징 :  연결 지향적 : 데이터를 주고받기 전에 송신자와 수신자 간에 연결을 설정한다.신뢰성 : 데이터가 정확히 도착하도록 보장하며, 손실된 데이터는 다시 전송(retransmission) 된다오류 검출 및 복구 : 데이터가 손상되었거나 손실된 경우 이를 감지하고 복구한다. 데이터 흐름 제어 : 데이터의 전송 속도를 제어하여 수신자가 처리 가능한 속도로 데이터를 전달한다. 순서 보장 : 데이터 패킷이 전송된 순서대로 수신자에게 전달된다.  TCP 장점 : 신뢰성이 높아 정확한 전송이 필요할 때 적합하다. 파일 전송, 이메일, 웹 브라우징 등에서 이용된다 TCP 단점 :연결 설정 및 관리로 인해 오버헤드(부하)가 높고 속도가 상대적으로 느리..

카테고리 없음 2024.12.11

통신 프로토콜(Communication Protocol)

통신 프로토콜(Communication Protocol)은 서로 다른 기기들 간의 데이터 교환을 정확하고 원활하게 수행할 수 있도록 표준화한 통신 규약이다.  통신을 제어하기 위한 표준 규칙과 절차의 집합으로 하드웨어와 소프트웨어, 문서를 모두 규정함   프로토콜( Protocol )이란 ? :컴퓨터와 컴퓨터 사이, 또는 한 장치와 다른 장치 사이에서 데이터를 원활히 주고받기 위하여 약속한 여러 가지 규약(規約). 이 규약에는 신호 송신의 순서, 데이터의 표현법, 오류 검출법 따위가 있다.  통신 프로토콜의 기본 요소 : 구문(Syntax) : 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨 등을 규정한다의미(Semanics) : 두 기기 간의 효울적이고 정확한 정보 전송을 위한 협조 사항과 오류 관..

카테고리 없음 2024.12.10

스케줄링(Scheduling)

스케줄링은 운영체제에서 시스템 자원, 특히 CPU같은 프로세서 자원을 효율적으로 할당하고 관리하는 과정이다  스케줄링의 목적 -CPU 자원의 효율적인 사용 : CPU가 유휴 상태로 남지 않도록 하여 시스템 자원의 활용도를 높인다. -응답 시간 단축 : 사용자에게 더 빠른 응답을 제공하여 시스템 사용 경험을 개선한다-공정한 자원 배분 시스템 자원을 공평하게 사용할 수 있도록 하여 특정 프로세스가 자원을 독점하지 않도록 한다 스케줄링 알고리즘 :  선점형 스케줄링 (Preemptive Scheduling) : 하나의 프로세슥 CPU를 할당 받아 실행하고 있을 때 우선순위가 높은 다른 프로세스가 CPU를 강제로 뺴앗아 사용할 수 있는 스케줄링 기법이다 종류로는 Roun Robin, SRT, 선점 우선순위, 다..

카테고리 없음 2024.12.09