• Title/Summary/Keyword: Object-oriented programming

Search Result 359, Processing Time 0.026 seconds

Implementation and Performance Evaluation of an Object-Oriented Parallel Programming Environment with Multithreaded Computational Model (다중스레드 계산 모델을 이용한 병렬 객체 지향 프로그래밍 환경의 구현 및 성능 평가)

  • Song, Jong-Hun;Kim, Heung-Hwan;Han, Sang-Yeong
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.5 no.6
    • /
    • pp.708-718
    • /
    • 1999
  • 본 논문에서 제안하는 시스템은 일반적인 병렬 시스템의 하드웨어 구조에서, 다중 스레드 계산 모델을 이용하여 객체 지향 프로그래밍 환경을 구현한 시스템이다. 제안하는 시스템을 효과적으로 구현하기 위하여 컴파일러와 실행 시간 시스템의 측면에서 여러 가지 기법을 제시한다. 컴파일러의 측면에서는 멤버 변수의 접근 분석, 메소드의 병렬성 분석 기법을 제시하고, 실행 시간 시스템에서는 실시간 스레드/메시지 결합, 프레임 공유 기법을 제시한다. 본 논문에서 제안된 프로그래밍 환경은, MPI 메시지 인터페이스를 이용하여 구현하였으며, 벤치마크 프로그램을 실행함으로써 성능 분석을 하였다. 분석의 결과는 실행시간 시스템의 여러 가지 기법들이 성능 향상에 많은 효과가 있음을 보여주며, 이러한 결과는 일반적인 병렬 시스템에서도 적용 가능하다.Abstract In this paper, we suggest an object-oriented programming environment with multithreaded computation model on general parallel processing systems. We developed many methods for our environment to be efficient : in compiler, the analysis of member variable and method parallelism, and in runtime system, thread/message merging and frame sharing. The programming environment is implemented with MPI message interface, and its performance is analyzed with executing benchmark programs. The results show that the developed methods have influence on performance improvement, and this improvement can be applied to general parallel processing systems.

A Case Study of Puzzle Solving Applied to Programming Practice

  • Kang, Dae-Ki
    • Journal of Engineering Education Research
    • /
    • v.13 no.2
    • /
    • pp.3-6
    • /
    • 2010
  • In this paper, we report a case study of applying puzzle solving as a programming practice. There are many students, who have attended computer programming language courses, have had difficulties in accomplishing the course assignments. It is because just following and citing the programming language course materials is not sufficient for constructing computer programs. Many professional developers have stated that computer programming for small problems is an art of puzzle solving, where developing enterprise-size computer programming projects involves architectural insights which are already dealt in software engineering literatures. Following those backgrounds, we have explored the applicability of puzzle solving in a C++ object oriented programming course and have reported the results. The experimental results show that puzzle solving is effective to the students who are interested in computer programming and have at least beginner-level knowledge and expertise, but it turned out that puzzle solving assignments still does not draw much attention of the students who are not seriously interested in computer programming.

  • PDF

An Information System Analysis and Design Methodology Based on Object-Oriented IDEF0: A Case Study for the PDM System of ship Production (OOIDEF0 기반의 정보시스템 분석 및 설계 기법: 조선 PDM 시스템 적용사례)

  • Kim, Jae-Gyun;Jang, Gil-Sang
    • IE interfaces
    • /
    • v.16 no.1
    • /
    • pp.70-84
    • /
    • 2003
  • Recently, object-oriented techniques have been used more and more for developments of an information system. But, established object-oriented methodologies are hard to express a business process of various abstract degrees in the analysis level and independent components of the system. They have difficulties in developing a large-scale information system of manufacturing industry such as PDM and CIM. This paper proposes an information system development methodology that imports the object-oriented IDEF0 (OOIDEF0) function model in analysis level. This methodology is made up of requirements gathering, system analysis, system design, and implementation. In requirements gathering level, organization diagram and interview technique are used for input data of OOIDEF0 function model. The OOIDEF0 function model, the interface model and function descriptions are made out in analysis level. Information objects and implementation objects are designed on the basis of the OOIDEF0 function model in design level. The database is built and programming is accomplished in implementation level. In order to prove the consistency and efficiency of the proposed methodology, the PDM system for ship production is modeled and prototyped.

A Survey of Automatic Code Generation from Natural Language

  • Shin, Jiho;Nam, Jaechang
    • Journal of Information Processing Systems
    • /
    • v.17 no.3
    • /
    • pp.537-555
    • /
    • 2021
  • Many researchers have carried out studies related to programming languages since the beginning of computer science. Besides programming with traditional programming languages (i.e., procedural, object-oriented, functional programming language, etc.), a new paradigm of programming is being carried out. It is programming with natural language. By programming with natural language, we expect that it will free our expressiveness in contrast to programming languages which have strong constraints in syntax. This paper surveys the approaches that generate source code automatically from a natural language description. We also categorize the approaches by their forms of input and output. Finally, we analyze the current trend of approaches and suggest the future direction of this research domain to improve automatic code generation with natural language. From the analysis, we state that researchers should work on customizing language models in the domain of source code and explore better representations of source code such as embedding techniques and pre-trained models which have been proved to work well on natural language processing tasks.

Analysis of Inheritance Anomaly due to Integrated of Inheritance and Concurrency (상속성과 병행성 통합에서 오는 상속 변칙 분석)

  • 오승재
    • Journal of the Korea Society of Computer and Information
    • /
    • v.6 no.4
    • /
    • pp.38-44
    • /
    • 2001
  • The integration of concurrency and object-oriented programming paradigm has been a goal of researchers for over a decade. The concurrent object-oriented programming languages used for various concurrent applications development. However, concurrency and inheritance have conflicting characteristics, thereby inhibiting their simultaneous use without heavy breakage of encapsulation. This conflicting phenomenon is known as inheritance anomalies, have been limited in applicability and have not addressed all the issues that synchronization raises. In this paper, the behavior description equation is introduced for the solution for the conflicting phenomenon, between inheritance and object-based concurrency. As a result, it can solve the several inheritance anomalies and is not necessary to redefine method. Therefor, it offers flexible concurrency model with an emphasis on the reuse of both synchronization and function code.

  • PDF

Design and Implementation of Reliable Distributed Programming Environment based on HORB (HORB에 기반한 신뢰성 있는 분산 프로그래밍 환경의 설계 및 구현)

  • Hyun, Mu-Yong;Kim, Shik;Kim, Myung-Jun
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.39 no.2
    • /
    • pp.1-9
    • /
    • 2002
  • The use of Object-Oriented Distributed Programming(OODP) environment such as DCOM, DSOM, Java RMI, CORBA to implement distributed applications is becoming increasingly popular. However, absence of a fault-tolerance feature in these middleware platforms complicates the design and implementation of reliable distributed object-based applications, although they greatly enhance the quality and reusability of the distributed object-based applications. In this paper, we propose a fault-tolerant programming environment based on RMI, namely Evergreen, for the reliable distributed computing with checkpoints and rollback-recovery mechanism. Based on a series of experiments, we evaluate the performance of Evergreen and find its possibility of extension to fully support our optimal design goal.

Design and Implementation of a Distributed Object Programming Language supporting Peer Replicated Object Model (대등관계 복제객체 모델을 지원하는 분산 객체 프로그래밍 언어의 설계 및 구현)

  • Sin, Beom-Ju;Lee, Dong-Hyeon
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.5 no.4
    • /
    • pp.449-456
    • /
    • 1999
  • 본 논문은 C++에 분산 객체 프로그래밍 기능을 추가한 D++ 언어를 제안한다. 대등관계 복제객체 모델을 지원하는 D++는 분산 클래스의 정의, 멤버 함수의 일치성 제어 정의 기능, 그리고 영구 객체 이름에 기반한 분산 객체를 정의할 수 있는 언어 구조를 제공한다. D++ 프로그램에서 새로이 생성되는 분산 객체는 생성 시에 제공되는 객체의 영구 이름과 동일한 영구 이름을 갖는 분산 객체가 존재할 경우 해당 객체들과 복제 관계를 유지함으로써 정보를 공유한다. 각 복제 객체들은 서로 간에 대등한 관계를 가지며, 멤버 함수 정의 시에 기술되는 특성에 따라 일치성이 유지된다. 이 같은 D++의 분산 객체 모델은 실시간 그룹웨어의 기본 요구 사항인 분산 환경에서의 정보 공유 및 사건 공지 기능을 자연스럽게 해결해 주기 때문에 실시간 그룹웨어의 개발을 효율적으로 지원할 수 있을 것으로 기대한다. Abstract This paper proposes D++ programming language that is an extension of C++ for distributed object oriented programming. The D++, which supports peer-to-peer object model, provides new language constructs for the definition of distributed classes, the definition of the consistency control of the member function and the definition of distributed object variables with the persistent name. In D++, when the persistent name of a newly created distributed object is same as that of an existing distributed object, the new distributed object replicates object state of the existing distributed object and thus they share the object state. The replicas have peer relation and the consistency among them is maintained according to the characteristic described on the definition of designated member functions. It is expected that D++ language increases efficiency in development of real-time groupware because the distributed object model of D++ naturally supports the information sharing and event notification that are the basic functions required when building real-time groupware.

Development and Analysis of Elementary Dolittle Programming Problems using Algorithmic Thinking-based Problem Model (알고리즘적 사고 문제 모델을 이용한 두리틀 프로그래밍 문제 개발 및 적용)

  • Hur, Kyeong
    • The Journal of Korean Institute for Practical Engineering Education
    • /
    • v.3 no.2
    • /
    • pp.69-74
    • /
    • 2011
  • This paper proposes elementary Dolittle programming problems using the algorithmic thinking-based problem model with material factors in the elementary Dolittle programming. And this paper proves the validity of developed Dolittle programming problems in defining them as algorithmic thinking-based problems through experiments. The experimental results are analyzed in views of variety and effectiveness evaluation of answer algorithms and suitability of allocating degrees of difficulties to the developed Dolittle programming problems.

  • PDF

Real-Time Communication using TMO(Time-Triggered and Message-Triggered Object) in Distributed Computing Systems

  • Kim, Gwang-Jun;Kim, Chun-Suk;Kim, Yong-Gin;Yoon, Chan-Ho;Kim, Moon-Hwan
    • Journal of information and communication convergence engineering
    • /
    • v.1 no.1
    • /
    • pp.12-22
    • /
    • 2003
  • Real-time(RT) object-oriented(OO) distributed computing is a form of RT distributed computing realized with a distributed computer system structured in the form of an object network. Several approached proposed in recent years for extending the conventional object structuring scheme to suit RT applications, are briefly reviewed. Then the approach named the TMO (Time-triggered Message-triggered Object) structuring scheme was formulated with the goal of instigating a quantum productivity jump in the design of distributed time triggered simulation. The TMO scheme is intended to facilitate the pursuit of a new paradigm in designing distributed time triggered simulation which is to realize real-time computing with a common and general design style that does not alienate the main-stream computing industry and yet to allow system engineers to confidently produce certifiable distributed time triggered simulation for safety-critical applications. The TMO structuring scheme is a syntactically simple but semantically powerful extension of the conventional object structuring approached and as such, its support tools can be based on various well-established OO programming languages such as C++ and on ubiquitous commercial RT operating system kernels. The Scheme enables a great reduction of the designers efforts in guaranteeing timely service capabilities of application systems

Development of Intelligent Design System for Embodiment Design of Machine Tools(I) (공작기계 기본설계를 위한 지능형 설계시스템 개발)

  • Cha, Joo-Heon;Park, Myon-Woong;Park, Ji-Hyung;Kim, Jong-Ho
    • Transactions of the Korean Society of Mechanical Engineers A
    • /
    • v.21 no.12
    • /
    • pp.2134-2145
    • /
    • 1997
  • We present a framework of an intelligent design system for embodiment design of machine tools which can support efficiently and systematically the machine design by utilizing design knowledge such as objects(part), know-how, public, evaluation, and procedures. The design knowledge of machining center has been accumulated through interview with design experts of machine tool companies. The processes of embodiment design of machining center are established and represented by the IDEF0 model from the field surveys. We also introduce a hybrid knowledge representation so that the system can easily deal with various and complicated design knowledge. The intelligent design system is being developed on the basis of object-oriented programming, and all parts of a design object, machining center, are also classified by the object-oriented modeling.