디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

Ada에서의 객체(Object)란 무엇인가?

나르시갤로그로 이동합니다. 2025.10.15 01:37:36
조회 115 추천 0 댓글 0
														

Ada에서의 객체(Object)란 무엇인가?

[cite_start]Ada에서 객체(Object) 실행 시점(run time)에 생성되며 특정 타입의 값을 가지는 실체(entity)를 의미합니다[cite: 38, 216]. [cite_start]컴파일 시점에 선언된 타입과 상수에 대한 정의가 실행 시점에 구체화(elaboration)되면서, 값을 저장하고 프로그램의 상태를 구성하는 메모리 공간상의 실체가 바로 객체입니다[cite: 36].

쉽게 말해, 프로그램이 동작하는 동안 데이터를 담는 변수, 상수, 매개변수 등을 포괄하는 개념입니다.

객체의 생성

[cite_start]객체는 다음과 같은 과정을 통해 생성되고 초기화될 수 있습니다[cite: 217]: * 선언문의 구체화(elaboration) * 할당자(allocator)의 평가(evaluation) * 애그리게이트(aggregate)의 평가 * 함수 호출(function call)의 평가 * 복사에 의한 매개변수 전달

객체의 분류: 상수와 변수

[cite_start]모든 객체는 상수 객체(constant object) 또는 가변 객체(variable object)로 분류됩니다[cite: 230]. * [cite_start]**가변 객체 (Variable Object)**: 할당문을 통해 값을 갱신할 수 있는 객체입니다[cite: 239]. [cite_start]일반적으로 constant 키워드 없이 선언된 객체나 in out, out 모드의 형식 매개변수 등이 해당됩니다[cite: 241, 242]. * [cite_start]**상수 객체 (Constant Object)**: 초기화된 이후에는 그 값을 수정할 수 없는 객체입니다[cite: 235]. [cite_start]constant 키워드와 함께 선언됩니다[cite: 284].

Ada 언어에서 객체로 간주되는 것들

RM-03.TXT에서는 다음과 같은 항목들을 객체로 명시하고 있습니다. 이는 단순 변수 선언뿐만 아니라 다양한 언어 구성 요소가 실행 시점에는 객체로 취급됨을 보여줍니다.

  • [cite_start]object_declaration에 의해 선언된 실체 [cite: 219]
  • [cite_start]서브프로그램, 엔트리, 제네릭 서브프로그램의 형식 매개변수(formal parameter) [cite: 220]
  • 제네릭 형식 객체(generic formal object)
  • [cite_start]루프 매개변수(loop parameter) [cite: 221]
  • 반복 컴포넌트 연관(iterated_component_association)의 인덱스 매개변수
  • [cite_start]청크 명세(chunk_specification)의 청크 매개변수 [cite: 222]
  • [cite_start]예외 핸들러(exception_handler)의 선택 매개변수(choice parameter) [cite: 223]
  • [cite_start]엔트리 본문(entry_body)의 엔트리 인덱스(entry index) [cite: 224]
  • [cite_start]객체에 대한 접근(access-to-object) 값의 역참조(dereferencing) 결과 [cite: 225]
  • [cite_start]함수의 반환 객체(return object) [cite: 226]
  • [cite_start]애그리게이트(aggregate)를 평가한 결과 [cite: 227]
  • [cite_start]다른 객체의 컴포넌트, 슬라이스, 뷰 변환(view conversion) [cite: 229]
  • [cite_start]피연산자가 객체를 나타내는 값 변환(value conversion) 또는 한정 표현식(qualified_expression) [cite: 228]

객체의 주요 속성

  • [cite_start]**값 (Value)**: 모든 객체는 특정 타입에 속하는 값을 포함합니다[cite: 216]. [cite_start]객체의 값을 읽는다는 것은 객체의 일부 또는 전체의 값을 평가하는 것을 의미합니다[cite: 238].
  • 명목 서브타입과 실제 서브타입 (Nominal and Actual Subtype):
    • [cite_start]객체의 뷰(view)에는 명목 서브타입(nominal subtype)이 연관됩니다[cite: 251]. 이는 선언문에 명시된 서브타입입니다.
    • [cite_start]객체가 실제로 가지는 실제 서브타입(actual subtype)은 명목 서브타입보다 더 제한적일 수 있습니다[cite: 253]. [cite_start]예를 들어, 비제약 배열 타입(unconstrained array)으로 선언된 객체(명목 서브타입)는 초기값에 의해 그 경계가 정해진 제약된 객체(실제 서브타입)가 됩니다[cite: 297].

요약하자면, Ada의 객체는 특정 타입과 값을 가지는 실행 시점의 실체로서, 변수, 상수, 매개변수 등 프로그램의 상태를 구성하는 광범위한 대상을 포함하는 개념입니다.


추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이제는 의미 없어진 것 같은 시상식은? 운영자 25/12/01 - -
AD 루틴 ON! 운동 찐템! 지금 할인 중 운영자 25/11/27 - -
2901961 드래곤볼 볼때가 행복했던거같다 [14] 배구공(119.202) 11.10 121 2
2901960 나님 왤케 특별하실깡? [2] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 99 0
2901959 프로그래밍 갤러리에서 드물게 프로그래밍 이야기 하던 수재 [2] 발명도둑잡기(118.216) 11.10 128 0
2901958 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 94 0
2901957 근데 세상은 말이다. 추한 새끼가 이기는거 같아. [5] 프갤러(110.8) 11.10 122 0
2901956 러스트 못써서 타입스크립트를 러스트처럼 쓰는 중 프갤러(110.8) 11.10 84 0
2901955 너도 걍 나가라 병신아 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ [2] 루도그담당(58.239) 11.10 155 1
2901954 냥냥❤+ ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 82 0
2901952 자기한테 원한이 있어서 공격한다고 믿는건 무슨 병이지? [2] ㅇㅇ(211.234) 11.10 131 5
2901951 아니 얼마나 동우한테 처맞은게 서러웠으면 [1] 루도그담당(58.239) 11.10 131 1
2901950 내가 ㅆㅇㅆ한테 신고삭하면 뜬다고 알려줬는데 ㅇㅇ(211.234) 11.10 147 6
2901949 아 씨발 존나 추해서 배가 째지겠노 이기 ㅋㅋㅋㅋㅋㅋ 루도그담당(58.239) 11.10 59 0
2901948 존나 추하긴 하다 211.234 << ㅋㅋㅋㅋ [20] 루도그담당(58.239) 11.10 268 4
2901947 이제 고소드립칠 타이밍인데 [5] ㅇㅇ(211.234) 11.10 115 2
2901946 부산 서면 길거리 영상 [5] 배구공(119.202) 11.10 122 0
2901945 ㅆㅇㅆ 강박장애까지 있나보네 [2] ㅇㅇ(118.235) 11.10 155 6
2901943 따당이가 자꾸 원종이 그리워 하는 이유가 혹시.. [4] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 115 0
2901940 저 새끼 또 신고삭 때렸네 ㅋㅋㅋㅋㅋㅋ [1] ㅇㅇ(211.234) 11.10 102 6
2901937 구직급여 수급 도전 프갤러(42.18) 11.10 84 0
2901936 ㅆㅇㅆ가 계속 쳐맞아도 탈갤안하는 이유 분석 [1] ㅇㅇ(211.234) 11.10 128 7
2901935 추하다 동우야 [1] ㅇㅇ(106.101) 11.10 102 7
2901934 뭔 미련이 남아서 또 쳐기어오는거지 ㅋㅋ ㅇㅇ(118.235) 11.10 103 2
2901933 후우.. 논현으로 가야대는데 학동으로옴 ㅜ.ㅜ [7] 따당갤로그로 이동합니다. 11.10 165 0
2901931 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ [2] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 106 0
2901929 저 이사갑니다. 일단 목금 만안구 집 보러 가요. 부모님이랑 [2] 넥도리아's(220.74) 11.10 112 0
2901926 충격적임.. [1] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 74 0
2901925 에이도비 저새끼도 ㅆㅇㅆ임 [2] ㅇㅇ(117.111) 11.10 179 5
2901924 쌩 신입년 미쳤나 [2] 프갤러(125.143) 11.10 170 0
2901923 가장 싼 리눅스 보드는 안드로이드 TV 박스 [1] 발명도둑잡기(118.216) 11.10 119 0
2901922 석사 졸업도 아니고 수료는 뭐야 ㅋㅋ ㅇㅇ(121.140) 11.10 114 1
2901920 리눅스보드 개발해본사람 있냐? 깃깃갤로그로 이동합니다. 11.10 68 0
2901918 SSS급 devops랑 국평오 데브옵스 차이가 머임 프갤러(220.124) 11.10 99 0
2901915 ㅆㅇㅆ야 탈갤 좀 제발 해라 여기 너 원하는 사람 없어 [3] ㅇㅇ(106.101) 11.10 207 10
2901914 이시국에 퇴사하고 이직하는거 미친짓임?? [3] 프갤러(220.123) 11.10 181 0
2901912 나르시 [5] 배구공(119.202) 11.10 133 0
2901910 러스트 좋은데 왜 c cpp java c샵 node python 하냐고 [10] 프갤러(218.154) 11.10 163 0
2901909 이거 설계한 새끼 ㅁㅊ놈인가 ㄷㄷ [2] 에이도비갤로그로 이동합니다. 11.10 158 0
2901908 끄응.. ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 78 0
2901904 그레셤의 법칙은 더닝 크루거에 선행한다 [5] chironpractor갤로그로 이동합니다. 11.10 138 0
2901903 다들 광군제 때 뭐살 예정? [4] 에이도비갤로그로 이동합니다. 11.10 148 0
2901902 푸념. C++ 좋은데 왜 Java 하냐고. [4] 프갤러(59.16) 11.10 143 0
2901900 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥KiTTY냥덩♥갤로그로 이동합니다. 11.10 60 0
2901898 ㅆㅇㅆ 뒤지니까 클린해졌네 [1] ㅇㅇ(125.141) 11.10 187 8
2901897 니네 개발용 컴 데탑씀 맥북씀? [4] 프갤러(220.86) 11.10 160 0
2901895 근데 러스트 안빨면 저능아 정신병자 맞음 [1] 프갤러(218.154) 11.10 93 0
2901894 nvidia 젠슨황은 여름에도 가죽 자켓로 나타나나? 나르시갤로그로 이동합니다. 11.10 100 0
2901893 이새끼들 지들이 공무원인줄아나 [4] 개멍청한유라갤로그로 이동합니다. 11.10 135 0
2901892 '우연'을 과학으로 풀 수 있을까? 양자역학 가장 쉽게 설명해 드립니다 발명도둑잡기(118.216) 11.10 103 0
2901891 지의견하고 다르면 무조건 정병.스토커,차단 하는게 어이가 없음 [2] ㅇㅇ(121.140) 11.10 114 5
2901888 씨발힘들다 [7] 개멍청한유라갤로그로 이동합니다. 11.10 149 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2