• Title/Summary/Keyword: programming language design

Search Result 341, Processing Time 0.031 seconds

A Design of a Korean Programming Language Ensuring Run-Time Safety through Categorizing C Secure Coding Rules (C 시큐어 코딩 규칙 분류를 통한 실행 안전성을 보장하는 한글 언어 설계)

  • Kim, Yeoneo;Song, Jiwon;Woo, Gyun
    • Journal of KIISE
    • /
    • v.42 no.4
    • /
    • pp.487-495
    • /
    • 2015
  • Since most of information is computerized nowadays, it is extremely important to promote the security of the computerized information. However, the software itself can threaten the safety of information through many abusive methods enabled by coding mistakes. Even though the Secure Coding Guide has been proposed to promote the safety of information by fundamentally blocking the hacking methods, it is still hard to apply the techniques on other programming languages because the proposed coding guide is mainly written for C and Java programmers. In this paper, we reclassified the coding rules of the Secure Coding Guide to extend its applicability to programming languages in general. The specific coding guide adopted in this paper is the C Secure Coding Guide, announced by the Ministry of Government Administration and Home Affairs of Korea. According to the classification, we applied the rules of programming in Sprout, which is a newly proposed Korean programming language. The number of vulnerability rules that should be checked was decreased in Sprout by 52% compared to C.

Application and Analysis of Educational Programming Language for Elementary Informatics Education (초등학교 정보교육을 위한 EPL 적용 분석)

  • Lee, Mee-Hyun;Koo, Duk-Hoi
    • Journal of The Korean Association of Information Education
    • /
    • v.15 no.1
    • /
    • pp.85-91
    • /
    • 2011
  • Programming training in informatics education have the means that algorithm design and problem solving. However, Because learning and using programming tools that should be done first, elementary school students learning the programming tools that are interested in the process has been reduced. But programming with using an Educational Programming Language(EPL) can show results directly and coding with a drag & drop method that keeps the elementary students' interests for programming. Now that, the students are possible to enhance their creativity and reasoning skills. Therefore, through the result of this study show how to apply the EPL in the elementary information classes and comparing with before this study and after the study, we analyzed to applicate prosperity of EPL.

  • PDF

Design and Implementation of Preprocessor for Educational Hangul C Programming Language (교육용 한글 C 프로그래밍 언어 사전처리기의 설계 및 구현)

  • 김창희;이상락;홍성수;심재홍
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.18 no.2
    • /
    • pp.239-249
    • /
    • 1993
  • In this paper, we present a design and implementation of Hangul C Programming language corresponding to Turbo C. The instruction of Hangul C were selected to be easily understood by elementary middle, high school students, and DOS commands and error message were translated into the Hangul.

  • PDF

Development of an Evaluation Criterion for Educational Programming Language Contents (프로그래밍 언어 교육용 콘텐츠의 평가준거 개발)

  • Kim, Yong-Dae;Lee, Jong-Yun
    • The KIPS Transactions:PartA
    • /
    • v.17A no.6
    • /
    • pp.289-296
    • /
    • 2010
  • So far, previous works with respect to evaluating program contents have concentrated on the implementation of general educational content evaluation. In terms of the efforts required to solve problems, however, there are a few evaluation methods on educational programming language contents. Therefore, we propose new evaluation criteria for educational programming language contents. The detailed research contents can be summarized as follows. First, we analyze existing works and propose naval evaluation criteria for educational programming language contents. Second, the new evaluation criteria is verified by teachers who use Visual Basic educational contents via questionaries. Also, a program content is experimented via the evaluation criteria. Finally, it is expected that our proposed evaluation criteria for educational programming language contents can be used to evaluate newly developed educational programming language contents and to design its evaluation plans.

A Catalog of Bad Smells in Design-by-Contract Methodologies with Java Modeling Language

  • Viana, Thiago
    • Journal of Computing Science and Engineering
    • /
    • v.7 no.4
    • /
    • pp.251-262
    • /
    • 2013
  • Bad smells are usually related to program source code, arising from bad design and programming practices. Refactoring activities are often motivated by the detection of bad smells. With the increasing adoption of Design-by-Contract (DBC) methodologies in formal software development, evidence of bad design practices can similarly be found in programs that combine actual production code with interface contracts. These contracts can be written in languages, such as the Java Modeling Language (JML), an extension to the Java syntax. This paper presents a catalog of bad smells that appear during DBC practice, considering JML as the language for specifying contracts. These smells are described over JML constructs, although several can appear in other DBC languages. The catalog contains 6 DBC smells. We evaluate the recurrence of DBC smells in two ways: first by describing a small study with graduate student projects, and second by counting occurrences of smells in contracts from the JML models application programming interface (API). This API contains classes with more than 1,600 lines in contracts. Along with the documented smells, suggestions are provided for minimizing the impact or even removing a bad smell. It is believed that initiatives towards the cataloging of bad smells are useful for establishing good design practices in DBC.

eFlowC: A Packet Processing Language for Network Management (eFlowC : 네트워크 관리를 위한 패킷 처리 언어)

  • Ko, Bang-Won;Yoo, Jae-Woo
    • Journal of the Korea Society of Computer and Information
    • /
    • v.19 no.1
    • /
    • pp.65-76
    • /
    • 2014
  • In this paper, we propose a high-level programming language for packet processing called eFlowC and it supporting programming development environment. Based on the C language which is already familiar and easy to use to program developers, eFlowC maintains the similar syntax and semantics of C. Some features that are unnecessary for the packet processing has been removed from C, eFlowC is highly focused on performing packet data, database, string byte information checking and event processing. Design high-level programming languages and apply an existing language or compiler technology, language function and compilation process that is required for packet processing will be described. In order to use the DPIC device such as X11, we designed a virtual machine eFVM that takes into account the scalability and portability. We have evaluated the utility of the proposed language by experimenting a variety of real application programs with our programming environment such as compiler, simulator and debugger for eFVM. As there is little research that devoted to define the formats, meanings and functions of the packet processing language, this research is significant and expected to be a basis for the packet processing language.

Design of a Programming Language and a Compiler for Test Systems (테스트 시스템을 위한 프로그래밍 언어와 컴파일러 설계)

  • Go, Hoon-Joon;Yoo, Weon-Hee
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.8 no.3
    • /
    • pp.356-365
    • /
    • 2002
  • Test systems verify and classify the various kinds of semiconductor products. So test systems need programs that can test the various special functions of hardware modules and products. Programs can be modified, compiled and executed by engineers. Consequently, the systems needs programming languages that can be easily programmed by engineers and their compilers that can compile and execute teat programs. In this paper we discuss the environment of programming languages and their compilers for the existing domestic teat systems. We design a programming language and implement its compiler that can be conveniently used by the experienced engineers in the industry field. Experimental results show that a newly designed test system with our programming language and compiler can teat products faster than the existing test system.

Difference Analysis on Application Level of Programming Language in Major : focused on non-business administration group and business administration group (계열별 프로그래밍 언어의 활용도에 관한 차이분석 -경영계열을 중심으로-)

  • Park Jae-Yong
    • Management & Information Systems Review
    • /
    • v.2
    • /
    • pp.237-266
    • /
    • 1998
  • The purpose of this study was to analyze the differences of application level the computer programming languages in major. The method of this study is the empirical method based on theoretical one with the previous bibliographical suduies. The sample consists of 268 listed university disclosing over the period of Dec. 1. 1997 to Du. 15. 1997. The samples were 10 university in university of Seoul, Pusan, Masan City, Korea. The data were collected by questionnaire research through interview with each person. The analysis data was carried to 268 samples by using SPSS/PC for Windows Version 7.5 statistical package. Statistical methods such as frequency analysis, chi-square test, ANOVA test, correlation analysis were used to test the research questions. This paper focuses on the design of the hypothesis test show that the 2 type are significantly different in major of university students. Before the test of research questions performed it frequency analysis by using the factor score that bring each items. The research type of 2 guoups, that is, BA Group(business administration group) and NBA Group(non-business administration guoup). To summarize the result of this study is as follows ; (1) Hypothesis 1 : Concerning about computer programming language in major, the significant difference is application the present condition. (2) Hypothesis 2 : Concerning about computer programming language in major, the significant difference is application level. (3) Hypothesis 3 : Concerning about each application software in major, the significant difference is application level. According to the results of this study, it is found that (1) Hypothesis 1 related In application the present condition of computer programming language was accepted its all at 0.05 % significance level. (2) Hypothesis 2 related to application level of computer programming language was accepted its all at 0.05 % significance level. (3) Hypothesis 3 related to application level of each application software was rejected its all. at 0.05 % significance level.

  • PDF

Design and Application of an Instructional Model for Flipped learning of Programming Class (프로그래밍 수업의 플립드러닝 학습모형 설계 및 적용)

  • Choi, Sook Young
    • The Journal of Korean Association of Computer Education
    • /
    • v.20 no.4
    • /
    • pp.27-36
    • /
    • 2017
  • The purpose of this study is to design and implement an instructional model for flipped learning of programming class. Because a programming process requires a high level of abstract thinking with a good understanding of a programming language, many students have difficulty in programming. For this characteristic of programming, it is not easy to effectively achieve learning goals of programming lesson by lecturing grammatical elements of a programming language and the following examples in a limited class time. In order to overcome these problems and to make effective programming lessons, we designed an instructional model based on flipped learning. Especially, in this study, we analyzed learners' difficulties in programming learning and errors that occurred in actual programming process for designing the instructional model. As a result of applying this model to the class, it was found that the students were generally satisfied with the lesson by having positive communication with other students in the classroom and actively participating in the learning.

An Empirical Study on the Factors Affecting Diffusion of Objeccl-Oriented Technology (객체지향 기술의 확산에 영향을 주는 요인에 관한 경험적 연구)

  • 이민화
    • The Journal of Information Systems
    • /
    • v.10 no.1
    • /
    • pp.97-126
    • /
    • 2001
  • Object-orientation has been proposed as a promising software process innovation to improve software productivity and quality. It has not been understood clearly, however, what factors influences the diffusion of object-oriented technology in organizations. A research model was formulated and hypotheses were generated based on the literature of information technology implementation and software process innovation. To test the research hypotheses, a questionnaire survey was conducted. The results based on 121 responses from Korean companies revealed that project characteristics, use of external experts, and number of development projects are significantly related to the diffusion of object-oriented analysis and design and object-oriented programming. Innovation champion is positively related to the diffusion of object-oriented analysis and design, whereas it is not related to the diffusion of object-oriented programming language. Only project complexity was significantly related to the diffusion of visual programming language. On the other hand, organizational size was not significantly related to any object-oriented technology in this study.

  • PDF