
쉽게 원형 통을 생각하면된다. 원형통에 어떤 물체를 넣게 되면, 제일 위에 있는 물체부터 차례대로 꺼내야 제일 바닥에 있던 물체를 꺼낼 수 있다.이를 LIFO(Last in First Out) 후입선출 구조 라고 한다.주요 메서드push 데이터 삽입pop 마지막에 삽입

응용 소프트웨어를 제어하는 컴퓨터 프로그래밍 언어, 기존에 이미 존재하는 소프트웨어(APP)을 제어하기 위해 사용함. source code 한줄씩 읽어가며 명령을 처리하는 프로그래밍 언어로 번역과 실행이 동시에 이루어짐. 명령자체의 속도가 컴파일러 언어보다 느림.ex)

객체란..? 객체는 영어로 object. 즉, 세상에 존재하는 어떠한 물건, 혹은 생명체라고 생각하면 편하다. 프로그램에서의 객체는 하나의 기본 단위라고 생각할 수 있다. 프로그램을 단순히 데이터, 데이터에 대한 처리 방법으로 나누는 것이 아닌, 객체라는 기본 단위로

우리가 일상생활에서 흔히 사용하는 숫자 사이에 연산자를 넣는 식을 중위표기법이라고 한다. ex) $1+8\\times9$와 같은 경우가 있다. 후위표기법은 컴퓨터가 연산을 하기 쉽게 수식을 표현하는 것으로 연산자가 피연산자의 뒤에 위치한다. 앞선 예시를 후위표기법으로

옛날 타자기로 글을 쓸 땐, 줄을 바꿔가며 타이핑을 했어야한다. 우리가 컴퓨터를 쓰며 당연시 여기는 줄바뀜에는 사실 2가지 동작이 포함되어있다. 키보드에서 거의 사용하지 않는 Home키 한번 쯤 본 적 있을 것이다. 글을 쓰다가 Home키를 누르게 되면 누를 때의 라인

우리가 사용하는 10진수는 $10^n$에 해당하는 수를 기준으로 자릿수가 증가하지만, 컴퓨터는 0,1로 된 기계어를 사용한다. 10진수를 2진수로 변환하는 방법에 대해서 알아보자. 간단한 정수부터 예시로 생각해보자, $32\_{10}$는 수의 이진 표현은 $100000

필자는 Window 11 운영체제를 사용하고 있는 중이다. linux 쉘 스크립트 및 명령어에 대해서 공부하고자 Ubuntu를 통해 Window에서 linux를 사용하였고 환경 설정 과정을 정리했다.WSL은 Windows 운영체제에서 linux kernel과 linux

방향키 통해서 커서 이동dd : 현재 위치한 줄 삭제i : INSERT 모드로 변경x : 커서가 위치한 곳 글자 1개 삭제yy : 현재 줄을 복사 (ctrl + c)p : 현재 커서가 있는 줄 바로 아래에 붙여넣기k,j,l,h : ↑ ,↓ ,→ ,←자유롭게 파일 수정

shell은 운영체제에서 사용자가 입력하는 명령을 읽고 해석해 대신 실행해주는 프로그램이다.쉽게 사용자의 명령어를 해석해 OS가 이해할 수 있게 번역해주는 명령어 해석기이다.대표적인 Linux 운영체제의 shell에는 bash가 있다.https://minkwo

위의 사진을 클릭하면 Windows용 OpenSSH 설치를 할 수 있다. client와 server버전 모두 설치가 가능하다. 필자는 접속하려는 server pc와 접속하는 client pc 모두 window 운영체제였기 때문에 window용으로 설치했다.일단 아래의

디스크에 저장된 정적인 상태의 실행가능한 파일(명령어들의 집합)메모리 로드 전아직 실행되기 전ex) .exe .py .class .js 파일프로그램이 실행되어 돌아가고 있는 동적인 상태의 프로그램OS가 메모리에 프로그램 적재각 프로세스는 고유한(독립된) 메모리 공간(c

런타임은 프로그램이 실행되는 시간이나 실행 중인 상태를 의미한다.우리가 작성하는 프로그램은 컴파일 된 후 실행된다이 실행되는 시점을 런타임이라고 한다.런타임 환경은 프로그램이 실행될 수 있는 실행 기반, 시스템, 도구를 모두 포함한 개념이다.코드가 동작하기 위해 필요한

Program 설계시 문제를 객체 간 상호 관계로 해결해 만든 protocolclass 1개에 무조건 1개의 인스턴스만 사용하는 디자인 패턴으로, 여러 모듈이 무조건 한개의 인스턴스를 공유한다. (동일한 힙 메모리 공간을 가리킴)DB 연결을 관리하는 객체를 싱글톤으로