무지개곰
article thumbnail
[CS] 자료구조란 무엇인가? (배열, 리스트, 스택, 큐, 트리, 그래프)
Computer Science 2023. 6. 20. 11:40

자료구조는 데이터를 효율적으로 저장하고 조작하기 위한 방법이나 구조를 의미합니다. 대표적인 자료구조로 배열, 리스트, 스택, 큐, 트리, 그래프 등이 있으며, 각각의 자료구조는 특정한 작업을 수행하는데 적합한 기능과 효율성을 제공합니다. java를 기반으로 알아보도록 하겠습니다. 목차 배열 (Array) 리스트 (Linked List) 스택 (Stack) 큐 (Queue) 트리 (Tree) 그래프 (Graph) 배열 (Array) 배열은 동일한 타입의 요소를 연속된 메모리 공간에 저장하는 자료구조입니다. 배열은 크기가 고정되어 있고 인덱스를 사용하여 요소에 접근할 수 있습니다. 배열은 빠른 접근 속도를 제공하며, 요소의 추가 및 삭제가 어렵습니다. 예시 int[] scores = new int[5]; /..

article thumbnail
[CS] 오버로딩과 오버라이딩의 차이점
Computer Science 2023. 6. 19. 23:32

오버로딩과 오버라이딩은 객체 지향 프로그래밍에서 다형성을 구현하기 위해 사용되는 개념입니다. 각각의 개념에 대하여 알아보고, 예시코드를 통해 차이점을 알아보겠습니다. 목차 오버로딩(Overloading)이란? 오버라이딩(Overriding)이란? 오버로딩(Overloading)이란? 오버로딩은 동일한 이름의 메서드를 여러 개 정의하는 것을 말합니다. 다만, 매개변수의 개수나 타입을 다르게 하여 서로 다른 버전의 메서드를 생성합니다. 이를 통해 같은 작업을 수행하는 메서드를 다양한 상황에 맞게 사용할 수 있습니다. 오버로딩의 특징 1. 메서드의 매개변수의 개수와 타입이 다르기 때문에, 같은 이름의 메서드가 여러 개 존재할 수 있습니다. 2. 오버로딩된 메서드는 매개변수의 개수와 타입에 따라 호출될 메서드가..

article thumbnail
[CS] 객체 지향 프로그래밍(OOP) (클래스, 객체, 캡슐화, 상속, 인터페이스)
Computer Science 2023. 6. 19. 12:12

객체 지향 프로그래밍(Object Oriented Programming, OOP)은 소프트웨어 개발 패러다임 중 하나로, 현실 세계의 사물과 개념을 소프트웨어 객체로 모델링하여 문제를 해결하는 방법입니다. 객체 지향 프로그래밍의 개념과 주요 용어에 대하여 알아보겠습니다. 설명은 java를 기준으로 하고 있습니다. 목차 객체지향 프로그래밍(OOP)이란? 클래스와 객체의 차이 캡슐화란? 상속이란? 추상 클래스와 인터페이스 객체지향 프로그래밍(OOP)이란? 프로그램을 독립적인 객체의 집합으로 구성하는 방법입니다. 각 객체는 데이터와 해당 데이터를 처리하는 메서드로 구성되며, 객체 간의 상호작용을 통해 프로그램이 동작합니다. 이는 현실 세계의 객체들의 관계와 유사하게 모델링 됩니다. 클래스와 객체의 차이 클래스..

article thumbnail
[BlockChain] hardhat이란? (설치, 컴파일, 테스트, 배포 방법)
BlockChain/BlockChain 2023. 6. 18. 13:35

contract를 배포하는 방법으로 remix를 사용하기도 하고 truffle을 사용하기도 합니다. 다양한 방법이 있지만 개발 환경 설정, 테스트 지원, 배포 및 자동화, 개발자 경험 등 다양한 측면에서 hardhat이 강력한 이더리움 개발 도구로 꼽히고 있습니다. 안정적이고 효율적인 contract를 배포하기 위한 hardhat에 대하여 알아보도록 하겠습니다. 목차 hardhat이란? hardhat 설치 개발 환경 설정 hardhat 실행 hardhat이란? hardhat은 이더리움 및 스마트 컨트랙트 개발을 위한 개발 도구와 환경입니다. 스마트 컨트랙트를 개발, 배포, 테스트하기 위한 기능을 제공합니다. 주요 기능으로 스마트 컨트랙트 컴파일, 로컬 개발 네트워크, 스마트 컨트랙트 테스트, 배포 및 인..