본문 바로가기

분류 전체보기62

[Programming Language] 2. 변수, 바인딩, 영역 직전글 2023.07.07 - [Language] - [Programming Language] 1. 서론 ● 변수 (Variable) 컴퓨터 메모리 셀이나 셀들의 모임에 대한 추상화. 흔히 메모리 위치에 대한 이름으로 생각하지만, 변수는 이름 외에도 몇 가지 속성을 더 가짐. (총 6개의 속성을 다룰 예정) 1. 이름 변수의 가장 기본적인 속성으로, 어떤 개체를 식별하기 위해 사용되는 문자열임. 식별자(Identifier)라는 용어와 혼용되어 사용됨. ㄴ 형식 길이 제한 : 언어 마다 제한하는 경우도 있고 안하는 경우도 있음. 표기법 : 낙타 표기법(myVariable), 스네이크 표기법(my_variable) 등 다양한 방법이 존재함. 대소문자 구분 : 많은 언어에서 대소문자를 구분함.(== 다르게 인.. 2023. 7. 9.
[Programming Language] 1. 서론 ● 들어가기 전 블로거 한마디 과목은 프로그래밍 언어 설계 및 구현시 고려되어야 하는 사항과 그에 따른 언어별 특징 등을 배우는 과목입니다. 각종 언어들에 대한 예제 코드가 나오지만, 그에 대한 문법적인 설명은 따로 제공하지 않으므로, 기본적인 문법, 특히 C, Python, Java 세 언어의 기본문법은 알고 보시는게 좋습니다. ● 컴퓨터 구조가 언어 설계에 미친 영향 현대의 컴퓨터 구조는 모두 폰 노이만 구조에 기반함. - 폰 노이만 구조 데이터와 프로그램이 모두 동일한 기억 장소에 저장됨 명령어를 실행하는 CPU는 기억 장소로부터 떨어져 있음. 명령어와 데이터는 CPU에 전달되어야 하고, 연산 결과는 다시 기억 장소로 전달되어야 함. (인출-실행 사이클, 해당 과정에서 Program Counter,.. 2023. 7. 7.
컨테이너 관련 개념 정리 컨테이너의 정의 컨테이너 기술은 소프트웨어를 실행하기 위한 가상화 기술이다. 컨테이너는 애플리케이션과 그 애플리케이션을 실행하는 데 필요한 모든 종속성 및 구성 요소를 포함하는 완전한 실행 환경을 제공한다. 이러한 컨테이너는 가볍고 이식성이 높으며, 동일한 환경에서 안정적으로 실행될 수 있도록 도와준다. 컨테이너 기술의 핵심은 컨테이너화된 애플리케이션을 호스트 운영 체제로부터 격리하는 것이다. 이를 통해 서로 다른 애플리케이션과 시스템 간의 충돌을 방지하고, 하나의 시스템에서 여러 개의 컨테이너를 실행할 수 있다. 가장 인기 있는 컨테이너 기술 중 하나는 Docker로, 컨테이너를 만들고 실행하며 관리하는 데 사용되는 플랫폼이다. Docker는 애플리케이션 및 해당 종속성을 이미지로 패키징하여 컨테이너로.. 2023. 6. 28.
가상화 개념 정리 가상화(Virtualization) 하드웨어 리소스를 가상적으로 분리하여 여러 개의 가상 환경을 생성하고 관리하는 기술. 실제 하드웨어를 물리적으로 분리하거나 수정하지 않고도 가상의 리소스를 제공함으로써 리소스의 효율성, 이용률, 유연성을 향상시킬 수 있다. => 쉽게 말해서, 하드웨어 하나를 가상으로(소프트웨어를 통해) 나눠서 여러 대처럼 사용하게 하는 기술이다. 한 하드웨어가 구동될 때 한 환경만 실행된다면 남는 리소스가 생기기 마련인데, 이를 쪼개서 다른 환경을 운영하는데 사용하면 자연스레 효율성, 이용률이 올라가게 된다. (ex. 컴퓨터 한 대 + 리눅스 한 개 → 컴퓨터 한 대 + 리눅스 두 개 이상) 가상화의 주요 용도 및 효과 서버 가상화(Server Virtualization): 단일 물리.. 2023. 6. 28.
[DB] Ch05. 관계 대수와 관계 해석 (2) 2. 관계 해석 관계 해석은 원하는 정보가 무엇이라는 것만 선언하는 비절차적인 특성을 가지고 있음. 수학의 프레디킷 해석에 기반을 두고 있으며, 프레디킷이라 하는 것은 실행 결과가 반드시 참 또는 거짓이 되는 함수를 말함. 관계 해석에는 '튜플 관계 해석'과 '도메인 관계 해석'이 있고, 표현 방법의 차이는 있지만 표현 능력은 동등함. 2.1. 튜플 관계 해석 '튜플 해석'이라고도 함. 원하는 릴레이션을 튜플 해석식으로 정의하는 표기법. 2.1.1. 튜플 변수 '범위 변수'라고도 함. 지정된 릴레이션의 튜플을 하나 씩 값으로 취할 수 있는 변수임. 선언은 R(t)의 형식으로 하는데, t가 R의 튜플 변수이고 취하는 값의 범위는 릴레이션 R의 튜플로 한정한다는 것을 명세한다는 뜻임. 이때 R(t)를 튜플 .. 2023. 4. 14.
[DB] Ch05. 관계 대수와 관계 해석 (1) 관계 데이터 모델에서의 릴레이션을 조직하기 위한 연산에는 '관계 대수'와 '관계 해석'이라는 두 가지 타입의 정형어가 있음. 데이터 획득 절차에 대해 얼마나 자세히 명세해야 되느냐에 따라 '절차 언어'와 '비 절차 언어'로 구분할 수 있음. 이런 면에서 볼 때 관계 대수는 절차 언어이고, 관계 해석은 비 절차 언어임. 둘은 데이터 언어의 표현력이나 기능면에서 동등함. 데이터 언어가 있을 때 이 언어로써 관계 해석이 표현할 수 있는 모든 질의를 표현할 수 있을 때 그 언어를 '관계적 완전'하다고 함. 1. 관계 대수 릴레이션을 처리하기 위한 연산의 집합으로, 각 연산의 피연산자가 모두 릴레이션이고, 연산 결과 또한 릴레이션임. 관계 대수 연산은 두 그룹으로 나누어 설명 가능하며, 첫 번째 그룹은 일반 집합.. 2023. 4. 13.