오크(프로그래밍 언어)

Oak (programming language)

오크는 제임스 고슬링이 1989년 썬 마이크로시스템스셋톱박스 프로젝트를 위해 만든 단종된 프로그래밍 언어다. 그 언어는 후에 자바로 진화했다.

오크라는 이름은 고슬링이 그의 사무실 밖에 서 있는 참나무의 이름을 따서 사용했다.

역사

듀크, 나중에 자바 마스코트가 될 오크의 스마트 에이전트

1995년 선 마이크로시스템스는 차세대 스마트 가전 프로그래밍을 위한 신기술 개발을 시도하고 있었는데 선은 이를 새로운 주요 기회로 기대했다.

팀은 원래 C++의 사용을 고려했지만, 몇 가지 이유로 이 아이디어를 거절했다(자바 역사 참조).

처음에 고슬링은 C++를 수정하고 연장하려고 시도했지만 곧 그의 사무실 바로 밖에 서 있는 나무 뒤에 그린이라는 새로운 플랫폼과 완전히 새로운 언어를 만드는 것에 찬성하여 그것을 포기했다.[1]

1992년 여름까지, 그들은 그린 OS, 오크 언어, 도서관, 하드웨어를 포함한 새로운 플랫폼의 일부를 시연할 수 있었다. 1992년 9월 3일에 시연된 그들의 첫 번째 시도는 그래픽 인터페이스인 Star7이라는[1] PDA 기기와 사용자를 돕기 위한 스마트 에이전트인 "Duke"가 있는 PDA 기기 제작에 초점을 맞췄다.

오크는 상표권 검색 결과 오크오크 테크놀로지에 의해 사용되었다는 것이 밝혀지면서 1994년 자바로 이름이 바뀌었다.[2] 자바 1.0은 마침내 1996년에 선적되었다.[3]

자바와의 차이점

오크(Oak)는 자바 1.0이 나중으로 된 것의 기초가 되었지만, 다음과 같은 차이점도 있었다.[4][5] Oak 사양에는 몇 가지 개념이 계획되었지만 시간 제약 때문에 원래 언어로 구현되지 않았다.

다른 개념은 Java와 다르거나 나중에 개선되었다.[4]

  • 추상적방법은 C++와 같이 정의되었다.
  • Oak 기본 액세스 수준은 Java의 (기본) 패키지 개인 액세스 수준과 동일하지만, "개인 액세스"라고 불렸다. 오크에게는 자바와 동등한 것이 없었다. private 접속 수식어

그리고 마침내 몇 가지 개념은 나중에 스크래핑되었다.

  • 모든 예외는 확인되지 않았다.
  • 비동기 예외를 신호하지 않는 코드를 쓰는 것은 비보호 키워드에 의해 가능했다.
  • 계약에 의한 설계에 대한 약간의 지원이 있었다.[8] Oak는 클래스 변수가 제약될 수 있고 클래스의 모든 공개 및 보호 방법의 출입 시 제약이 적용된다는 주장을 가지고 있었다. 방법에는 또한 고유의 사전 조건사후 조건도 있을 수 있는데, 이 조건들은 계승되었지만 하위 클래스에서는 다시 정의할 수 없었다.[4][9]

참고 항목

참조

  1. ^ Jon Byous (March 12, 2003). "Java Technology: An early history" (PDF). Sun Microsystems. Retrieved August 2, 2009. Gosling called the new language "Oak", after the tree outside his window
  2. ^ Murphy, Kieron (4 October 1996). "So why did they decide to call it Java?". JavaWorld. Retrieved 2020-07-15. 'The lawyers had told us that we couldn't use the name "OAK" because [it was already trademarked by] Oak Technologies,' said Frank Yellin, a senior engineer at Sun. 'So a brainstorming session was held to come up with ideas for a new name.'
  3. ^ Jonathan I. Schwartz (August 30, 2007). "Different Isn't Always Better, But Better's Always". Archived from the original on September 5, 2009. Retrieved August 2, 2009.
  4. ^ a b c Heinz Kabutz (August 26, 2002). "Once Upon an Oak ..." javaspecialists.eu. Retrieved August 2, 2009.
  5. ^ "Oak Language Specification". Sun Microsystems, Inc. Archived from the original on August 16, 2000. Retrieved March 6, 2015.
  6. ^ "Java and unsigned int, unsigned short, unsigned byte, unsigned long, etc. (Or rather, the lack thereof)". Retrieved August 2, 2009.
  7. ^ "A Simple Assertion Facility For the Java Programming Language". Sun Microsystems. Retrieved August 2, 2009.
  8. ^ Johannes Rieken (April 24, 2007). "Design by Contract for Java - Revised" (PDF). Retrieved October 2, 2010.
  9. ^ "Support For 'Design by Contract', beyond "a simple assertion facility"". Sun Microsystems. Retrieved October 2, 2010.

외부 링크