• 제목/요약/키워드: JAVA 언어

검색결과 524건 처리시간 0.027초

Cartesian Product Algorithm을 사용한 JavaScript-to-C++ 타입 추론 컴파일러 (JavaScript-to-c++ Type Inferencing Transcompiler Using Cartesian Product Algorithm)

  • 김재주;한환수
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 추계학술발표대회
    • /
    • pp.910-913
    • /
    • 2015
  • 자바스크립트는 웹 페이지를 제어하기 위한 표준적인 스크립트 언어로 오랫동안 사용되어 왔다. 최근 웹 앱이나 서버사이드 응용 프로그램을 자바스크립트로 작성하게 되면서, 자바스크립트 프로그램을 더욱 빠르게 동작하도록 만드는 것이 중요한 이슈가 되었다. 본 논문에서는 암시적인 동적 타입 시스템을 사용하는 자바스크립트 언어에 Cartesian Product Algorithm을 적용하여 타입을 추론하고, 이 정보를 바탕으로 정적 타입 시스템인 C++ 코드로 변환하는 컴파일러의 구조와 알고리즘을 제시한다.

JML : Java프로그램의 정보 표현을 위한 XML분석 (JML : XML Analysis for Information Representation of Java Program)

  • 장근실;유철중;장옥배
    • 한국컴퓨터산업학회논문지
    • /
    • 제4권4호
    • /
    • pp.633-646
    • /
    • 2003
  • XML은 그 자체가 갖는 장점으로 인해 많은 분야에서 정보를 기술할 수 있는 메타언어로서 널리 이용되며 웹 상에서 정보 표현의 표준언어로 널리 인정되고 있다. 본 논문에서는 Java로 작성된 원시 프로그램을 분석하고 재사용하고 유지보수하는 등의 일련의 소프트웨어공학 활동에서 발생할 수 있는 많은 어려운 사항들에 대하여 논하고, 기존의 문서화와 관련된 연구들이 이러한 사항들을 효과적으로 지원하는지 여부를 기술하며, 이러한 사항들을 효과적으로 지원하는 XML 기반의 JML(Java Markup Language)을 제안하고, 이를 이용하여 실제 프로그램을 분석하고 적용한 결과를 제시한다. JML은 Java로 작성된 소프트웨어의 정보를 기술할 수 있는 DTD이다. 또한 JML을 구성하는 각 요소들의 의미를 자세하게 기술하고, 각 요소들을 이용하여 Java로 작성된 소프트웨어의 정보들을 표현하는 방법들에 대해 설명한다.

  • PDF

바이트코드 최적화기 (The Bytecode Optimizer)

  • 이야리;홍경표;오세만
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권1_2호
    • /
    • pp.73-80
    • /
    • 2003
  • 자바언어는 인터넷 및 분산 환경 시스템에서 효과적으로 응용 프로그램을 개발할 수 있도록 설계된 프로그래밍 언어로써 객제지향 패러다임 특성 및 다양한 개발 환경을 지원하고 있다. 그러나, 자바는 클래스 파일이 이동하여 JVM 환경에서 인터프리팅 되는 시스템이므로, 성능의 저하 없이 실행되기 위해서는 효율적인 최적화와 실행 시스템이 요구된다. 본 논문은 네트워크 상에서 동적으로 다운로드 되는 클래스 파일을 바이트코드 수준에서 최적화하였다. 최적화된 바이트코드들이 인터프리팅 되는 시스템에서 적은 네트워크 로드를 가지고 실행할 수 있도록 하며, 효율적인 실행 속도를 보이도록 하는 것이다. 본 논문에서 구현된 바이트코드 최적화기에서는 내부적으로 바이트코드 최적화기와 클래스 파일 생성기를 이용하여 실행시간을 개선하고 전체 클래스 파일의 크기를 줄이게 된다. 바이트코드 최적화기는 바이트코드를 클래스사이의 계층 분석과 제어 흐름의 분석을 통하여 클래스들간의 연관 관계를 분석한 후 그래프를 구성하고, 패턴 탐색 결과 기본 블록 분리를 통하여 전역 최적화를 이루고, 기본 블록 안에서의 연산강도 경감, 그리고 도달할 수 없는 코드 블록의 제거를 수행한다. 바이트코드 최적화 단계를 수행한 클래스 파일은 부분적으로 클래스 파일의 최적화를 가져와 전체 클래스 파일의 크기를 줄이고, 인터프리터를 통하여 실행될 때 수행 속도 면에서 좀더 빠른 실행속도를 가지게 된다.

객체지향프로그래밍 언어 교육방법에 관한 연구 (A Study on Teaching the Object Oriented Programming Language)

  • 최세일
    • 한국전자통신학회논문지
    • /
    • 제11권8호
    • /
    • pp.751-758
    • /
    • 2016
  • 자바를 비롯한 객체지향 언어를 쉽게 배우기 위해서는 그 언어가 제공하는 객체지향 프로그래밍 기능만을 습득하는 것만으로는 부족하고, 먼저 프로그래머 자신이 객체지향적 사고를 해야 한다. 그러나 객체지향 개념이 없는 한국어에 길들여진 한국 학생들이 객체지향적 사고를 한다는 것은 쉬운 일이 아니다. 따라서 한국인 학생들에게 객체지향 언어를 교육할 때는 객체지향적 사고에 기반 한 프로그래밍 교육을 실시해야 한다. 본 논문에서는 객체지향 언어를 교육할 때, 먼저 객체지향적 사고 전개 방법을 설명하고, 이를 기반으로 프로그래밍 언어를 사용하여 그렇게 전개한 사고를 표현하는 방법으로 프로그래밍 언어를 교육하는 방법을 소개한다.

자바카드 플랫폼상에서 자바 클래스 파일의 최적화 연구 (A Study On The Optimization of Java Class File under Java Card Platform)

  • 김도우;정민수
    • 한국멀티미디어학회논문지
    • /
    • 제6권7호
    • /
    • pp.1200-1208
    • /
    • 2003
  • 자바카드 기술은 스마트카드나 메모리 제한적인 장치에서 자바 프로그래밍 언어로 작성된 응용프로그램을 동작 가능하게 한다. 자바카드 기술은 높은 안전성, 이식성, 다중의 응용프로그램을 관리하고 저장하는 기능을 제공한다. 그러나 자바카드 플랫폼의 제한적인 메모리 자원은 다양한 용도로 자바카드가 보급되는데 저해 요인으로 작용하고 있다. 따라서 본 논문에서는 자바카드의 효율적인 메모리 사용을 위해서 바이트코드 최적화 알고리즘을 제안한다. 이 알고리즘은 예외처리 구문 try-catch-finally에서 catch절의 매개변수에 대한 기억장소를 공유하게 함으로써 생성되는 바이트코드의 크기를 줄일 수 있다.

  • PDF

LabVIEW를 사용한 텍스트/시각 프로그래밍 교육의 유용성 비교 분석 (A Comparative Analysis of the Text/Visual Programming Education Using LabVIEW)

  • 노영욱;정민포;조혁규;정덕길
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2012년도 추계학술대회
    • /
    • pp.347-350
    • /
    • 2012
  • 컴퓨터 프로그래밍 교육은 컴퓨터과학 분야의 관련 전공과목을 공부하기 위하여 매우 중요할 뿐만 아니라, 학생들의 취업을 위한 기술 교육에서도 매우 중요하다. 이 논문에서는 학생들의 교육 및 취업에 적합한 교육용 및 상용 프로그래밍 언어, 도구에 대한 타당성을 분석하여 프로그래밍 교육에 적합한 프로그래밍 언어/도구를 선택하고, 이에 대한 교육 과정을 개발하여 프로그래밍 현장 교육에 적용하고 분석한다. 특히, 최근의 기술 추세와 산업계에 필요한 임베디드/모바일/웹/3D 프로그래밍 분야에 널리 사용되고 있는 프로그래밍 분야에서 텍스트 기반 언어(예: JAVA)와 시각 프로그래밍 언어/환경(예: LabVIEW)에 대한 유용성을 비교하여 분석한다.

  • PDF

멀티미디어 통신 그리드의 설계 및 구현 (Design & Implementation of a Multimedia communication Grid)

  • 김일민
    • 디지털콘텐츠학회 논문지
    • /
    • 제8권1호
    • /
    • pp.27-33
    • /
    • 2007
  • 그리드(Grid)는 WWW 컴퓨팅 모델을 계승할 차세대 분산 처리 모델이며, 자바 언어는 그리드 시스템을 설계하고 구현하는 훌륭한 개발 언어이다. 자바언어는 분산 처리를 위해 개발되었으며, 현재 WWW 응용 개발에 널리 사용되고 있다. 본 논문에서는 그리드의 기본 개념을 소개하고, 자바 언어를 사용한 컴퓨팅 그리드를 설계하고 구현하였다. 구현된 컴퓨팅 그리드에 알맞은 분산 응용 프로그램의 실행 결과를 분석하였다. 본 논문에서 구현된 그리드에 사용된 분산 멀티미디어 응용의 실행 결과는 기존의 시스템에 비하여 매우 향상된 성능을 보여주고 있다.

  • PDF

자바 프로그램의 복잡도 측정을 위한 척도 $\pi_{java}$의 설계 (Design of the Metrics Suite $\pi_{java}$for Java Program Complexity)

  • Eun-Mi Kim
    • 한국컴퓨터산업학회논문지
    • /
    • 제2권3호
    • /
    • pp.407-416
    • /
    • 2001
  • 본 논문에서는 C++ 프로그램을 측정하기 위하여 제안된 척도 $\pi_{java}$ c++/를 기반으로 Java 프로그램 복잡도를 측정하기 위한 척도 $\pi_{java}$ Java/을 제안한다. C++를 측정하기 위해 많은 척도들이 제안되어 왔으나 이들은 Java 프로그램만이 가지는 특성들을 고려하지 않았기 때문에 C++ 프로그램과 다른 성질을 가지고 있는 Java프로그램에 이들을 그대로 적용하는 것은 어렵다. 따라서, 본 논문에서는C++와 Java 언어의 공통점과 차이점을 분석한 결과와 본 연구팀이 C++ 프로그램의 복잡도를 측정하기 위해 제안했던 척도 $\pi_{java}$ c++/을 바탕으로 Java 프로그램의 복잡도를 측정하기 위한 새로운 척도 $\prod$$_{Java}$을 제안한다. 마지막으로 제안한 척도를 Weyuker의 성질에 적용하여 분석하며, 기존의 척도들과도 비교한다.

  • PDF

$Java^TM$ 언어를 이용한 객체 지향 유한 요소 해석 프로그램의 개발 (Development of an Object-Oriented Finite Element Analysis Program Using J$Java^TM$)

  • 이정재;이호재
    • 한국농공학회지
    • /
    • 제40권2호
    • /
    • pp.130-139
    • /
    • 1998
  • The finite element analysis program should be prepared to deal with many of newly arising engineering problems. The sequential structured programming technique does not make a finite element method so flexible. So far, the object oriented programming technique was studied as an alternative programming paradigm. However, most of the research were in the state of the evaluation of the possibility and the applicability of the object oriented method for a finite element program. In this study, a practical object oriented finite element analysis program, OOFE_ JAVA was developed and the result of the analysis on a rectangular clamped plate was shown. The objects which compose the OOFE_JAVA were applied to several engineering problem without any modification and it was concluded that the object oriented technique was appropriate for the development of a complex and large engineering system. And a virtual machine which Java language is using can be loaded on any kinds of computer which has java interpreter regardless of the platform on which the OOFE_JAVA was developed.

  • PDF