• Title/Summary/Keyword: Programming Languages

Search Result 327, Processing Time 0.02 seconds

A Study on the Hierarchical Instructional System Design of Software Education by School System (학교 급별 연계성 있는 소프트웨어 교육 체제 설계를 위한 연구)

  • Shin, Seungki;Bae, Youngkwon
    • Journal of The Korean Association of Information Education
    • /
    • v.19 no.4
    • /
    • pp.533-544
    • /
    • 2015
  • In this study, the direction for hierarchical curriculum organization about software education in Korea was suggested in terms of overall execution of software education. The international case studies especially was conducted in order to suggest the propel educational programming language for level of students in the programming activity. In terms of the international case studies, the type of programming language was examined, which is suggested to each school level as a part of required regular curriculum. Then, the direction was supposed to suggest the instructional system organization of software education for Korea through the result of case studies. The results of case studies indicated that elementary school use the block based programming language, and text based programming languages are used from middle school.

Analysis of the moderating effects of programming languages and the relationship between learners' learning characteristics and achievements (프로그래밍 언어의 조절효과 및 학습자의 학습특성과 성취도와의 관계 분석)

  • Lee, Kyung-Sook
    • Journal of Digital Convergence
    • /
    • v.19 no.4
    • /
    • pp.49-55
    • /
    • 2021
  • This study analyzed the relationship between the characteristics of learners and the achievement level according to the language they learn in programming education for non-major students. The learner's characteristics were set as mastery goal, situaltional interest, cognitive engagement, and self-efficacy for performance, and path analysis was conducted to understand the relationship between the language used and the learning achievement. Situaltional interest and cognitive engagement were found to have an effect on self-efficacy for performace, and self-efficacy for performance had an effect on academic achievement. At this time, the type of programming language to be studied showed a moderating effect on learning achievement. Based on the results of this study, it is suggested that appropriate instruction is needed for each language used in programming lessons for software non-majors.

Analysis of Programming Questions of the Informatics·Computer Secondary Teacher Recruitment Examination (정보·컴퓨터 중등교사 임용시험의 프로그래밍 문항 분석)

  • Kang Oh Han
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.12 no.10
    • /
    • pp.291-298
    • /
    • 2023
  • In this paper, we study whether the programming questions of the Informatics·Computer recruitment tests were suitable for selecting teachers with required programming skills. The average points of the programming questions constituted 38%(20.8 points) of the total scores for the entire curriculum based on the results from analyzing the previous questions in the past 5 years. Moreover, the distribution of points for each evaluation criteria within programming and data structure, two exam subjects which have a high proportion of programming questions, demonstrated a large deviation ranging from 0% to 47% and 0% to 53% respectively. In this study, a questionnaire survey was conducted on 31 teachers to examine if the previous programming questions were suitable for measuring teachers' competency in programming abilities required in the actual teaching experience. Computational thinking ability was ranked the highest at 58% in response to the area that needs to be evaluated in the recruitment test. In response to the relevance of previous questions, problem solving ability was ranked the highest at 2.84 on a 5-point scale, but the overall appropriateness was deemed low. C language and Python were regarded as the computer languages suitable to be tested for programming questions with each ranked 55% and 45%. The finding confirms that teachers preferred Python and the incumbent C language to others. Based on the results of the questionnaire, we recommend changes in the programming questions to improve the selection criteria.

Solving Inheritance Anomaly using State Abstraction in Concurrent Object Oriented Programming Languages (병행 객체지향 언어에서 상태 추상화를 이용한 상속 변칙의 해결)

  • Lee, Gwang;Lee, Joon
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.3 no.2
    • /
    • pp.373-382
    • /
    • 1999
  • Inheritance and concurrency are the primary feature of object oriented languages, and are especially important for code re-use. They provide maximum computational power and modeling power through concurrency of objects. But, concurrent objects and inheritance have conflicting characteristics, thereby simultaneously use of them causes the problem, so called inheritance anomaly, which requires code redefinition of inherited methods to maintain integrity of objects. In this paper, to solve the inheritance anomaly problems we introduce concept of state abstraction, in which internal states of encapsulated objects are made available from a part of object's external interface. And we design inheritance interface mechanisms which methods are inherited efficiently. In our scheme, we can solve the typical inheritance anomaly problems.

  • PDF

Distance Learning of Programming using the Visualization of Source Code Difference (소스 코드 차이의 시각화를 적용한 프로그래밍 원격 학습)

  • Lee, Myoung-Hee;Sohn, Ki-Rack
    • Journal of The Korean Association of Information Education
    • /
    • v.15 no.1
    • /
    • pp.77-84
    • /
    • 2011
  • Distance learning makes it possible for educational consumers to study anywhere or anytime. In order to provide effective distance learning, it requires not only educational process and educational results to be closely correlated but also a method for teachers and students to communicate immediately. We devised a dialogue system like a chatting program containing an editor. With this program, students can learn a programming practice by chatting between a teacher and a student. We also incorporated a source code visualization technique based on diff algorithm so that the visualization technique makes it possible for students to recognize the remedies by teachers visually. The result comes by mixing the merits of a dialogue system giving a close interrelationship among users into a programming language education. We expect that the successful result would be tantamount to a face-to-face education.

  • PDF

Programming Learning Using Image Detection and Tracking Devices (영상 감지 및 추적장치를 이용한 프로그래밍 학습)

  • Song, Young-A;Kim, Young-Chul
    • Journal of Practical Engineering Education
    • /
    • v.7 no.1
    • /
    • pp.17-23
    • /
    • 2015
  • Growing worldwide interest in software and spread awareness of the need for education. A software-driven society realization strategy will achieve mandatory training on software. This policy will be applied from middle school students in 2015. Students who are interested in computers, like many positive responses, student learning may seem hard to have a negative reaction. Thus, the present obligation as simple in practice education only and discarded before actually lost interest awarded a systematic education does not work properly, but rather that education could happen to entirely discard turn our attention. Accordingly, what you need is to have a systematic training from the basics that I need to worry about software that can recognize easy and fun. In this paper, we propose a hardware and basic software that allows you to proceed software training more easy and efficient as it can be modified and applied to the program in the production unit to learn programming tools and programming languages.

Development of an Intelligent Software Programmable Logic Controller for IEC1131-3 International Standard Languages (IEC1131-3 표준언어 처리를 위한 지능적 소프트웨어 PLC 개발)

  • Cho, Young-Im
    • Journal of the Korean Institute of Intelligent Systems
    • /
    • v.14 no.2
    • /
    • pp.207-215
    • /
    • 2004
  • The PLC programming by IEC1131-3 is hard to handle to ordinary users as well as professionals. Also it has not a generality, so that it couldn't be debugging some logic errors easily. In order to be adapted for such environment, In this paper, I have developed the ISPLC(Intelligent Agent System based Software Programmable Logic Controller). In ISPLC system, LD programmed by a user is converted to the C code which can be used in a commercial editor such as Visual C++. The detection of logical errors in C code is more effective than PLC programming itself. ISPLC provides the GUI-based interface in web environment and an easy programming platform to such beginners as well as professionals. The study of code conversion of LD to IL as well as IL to C is firstly tried in the world as well as KOREA. To show the effectiveness of the developed system, I applied it to a practical case, a real time traffic control system. ISPLC is minimized the error debugging and programming time owing to be supported by windows application programs.

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.

A Developing a Teaching-Learning Model of Software Education for Non-major Undergraduate Students (비전공 학부생 대상의 SW 교육을 위한 교수-학습 모델 개발)

  • Sohn, Won-sung
    • Journal of Practical Engineering Education
    • /
    • v.9 no.2
    • /
    • pp.107-117
    • /
    • 2017
  • here are many cases that take a software education as a required course for non-major students in university curriculums. However, non-major students are experiencing various difficulties in the process of learning programming languages, and there is also the opposite opinion in terms of their effectiveness. In this study, we developed a design based software education model (DBSEM) and curriculum to solve these problems and applied it to undergraduate non-undergraduate students for the last 8 years. In the proposed method, we provide a specialized educational tool such as 'block-based programming tool', but developed 'core module' and 'concept learning module' for computational thinking and applied 'prototype design module' and coding strategy based on it. As a result, non-major undergraduates could easily learn block-based scripting tools and acquire core concepts of computational thinking.

The Development of Interactive Artificial Intelligence Blocks for Image Classification (이미지 분류를 위한 대화형 인공지능 블록 개발)

  • Park, Youngki;Shin, Youhyun
    • Journal of The Korean Association of Information Education
    • /
    • v.25 no.6
    • /
    • pp.1015-1024
    • /
    • 2021
  • There are various educational programming environments in which students can train artificial intelligence (AI) using block-based programming languages, such as Entry, Machine Learning for Kids, and Teachable Machine. However, these programming environments are designed so that students can train AI through a separate menu, and then use the trained model in the code editor. These approaches have the advantage that students can check the training process more intuitively, but there is also the disadvantage that both the training menu and the code editor must be used. In this paper, we present a novel artificial intelligence block that can perform both AI training and programming in the code editor. While this AI block is presented as a Scratch block, the training process is performed through a Python server. We describe the blocks in detail through the process of training a model to classify a blue pen and a red pen, and a model to classify a dental mask and a KF94 mask. Also, we experimentally show that our approach is not significantly different from Teachable Machine in terms of performance.