• 제목/요약/키워드: 프로그래밍 개념

검색결과 290건 처리시간 0.035초

추상화의 분류 (Taxonomy of Abstraction)

  • 김성기
    • 정보처리학회논문지A
    • /
    • 제11A권1호
    • /
    • pp.89-96
    • /
    • 2004
  • 프로그래밍 언어에서의 추상화는 변수, 함수, 복합 데이터 등에서부터 추상 데이터 타입, 클래스, 다형성 등에 이르기까지 광범위하게 적용되는 중요한 개념이다. 그러나 추상화 개념의 명확성과 통일성 부족으로 인하여 추상화는 다소 애매 모호한 특성을 갖는 용어로 인식되어지고 있으며, 관점에 따라 다르게 설명되는 혼란스러움을 경험하고 있다. 본 논문에서는 여러 프로그래밍 언어에 나타난 추상화에 대한 체계적인 분석을 실시하여 추상화의 분류를 제안한다. 추상화는 추상물의 생성 방법에 따라 사상 추상화, 묶음 추상화, 통합 추상화, 확장 추상화 등 4가지 범주로 분류된다. 또한 함수, 추상 데이터 타입, 객체, 캡슐화, 클래스 등 추상화를 기반으로 하여 형성된 여러 개념들이 추상화의 관점에서 고찰된다. 이러한 체계적인 추상화의 분석과 분류를 통하여 지금까지 개별적이며 서로 다른 형태의 추상화로 취급된 여러 추상화 양상이 하나의 통일된 개념으로 설명될 수 있을 것이며, 추상화의 의미, 필요성, 중요성에 대하여 보다 깊은 이해가 가능할 것이다.

순서도를 활용한 알고리즘 교육 시스템 설계 (Design of Algorithm Education System using Flow Chart)

  • 오경숙;류남훈;이상진;이혜미;김응곤
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2009년도 춘계 종합학술대회 논문집
    • /
    • pp.1087-1091
    • /
    • 2009
  • 건축, 의학, 생명공학에서 우주항공에 이르기까지 다양한 분야에서 알고리즘의 개념을 정립해야 하지만 이론만으로는 이해하는데 한계가 있다. 그래서 다양한 멀티미디어 요소를 활용하여 교육하고 있지만 흥미를 유발하기에는 많은 어려움있으며, 이로 인해 상위 단계의 교과목 수강 시 많은 어려움을 겪고 있다. 알고리즘 및 프로그래밍은 과목 성격상 구현원리를 이해할 수 있도록 실제로 프로그램을 실행시켜보는 것이 매우 중요하다. 본 논문에서는 시각화 프로그램으로 순서도를 활용한 알고리즘의 기본 개념과 알고리즘 학습에 있어서 필수 요소라 할 수 있는 프로그래밍 언어의 기본인 C언어 습득을 위한 알고리즘 교육 시스템을 설계한다.

  • PDF

Java 프로그래밍 학습을 위한 로봇 트레이닝키트의 설계 및 구현 (The Design And Implementation of Robot Training Kit for Java Programming Learning)

  • 백정현
    • 한국컴퓨터정보학회논문지
    • /
    • 제18권10호
    • /
    • pp.97-107
    • /
    • 2013
  • 최근의 프로그래밍 패러다임은 객체지향프로그래밍과 이를 기반으로 하는 비주얼프로그래밍이 주류를 이루고 있다. 그러나 객체지향프로그래밍은 기존의 구조적프로그래밍기법에 비하여 개념이 어렵고 복잡하여 IT 관련학과 학생들을 교육하기에 어려움이 많았다. 본 연구에서는 학생들이 다양한 입출력 장치를 부착하고 로봇제어가 가능한 트레이닝 키트를 사용하여 객체지향 프로그래밍 학습 의욕 고취와 동기를 유발할 수 있도록 Java 가상머신을 내장한 Java 로봇 트레이닝 키트를 설계하고 구현하였다. 개발된 Java 로봇 트레이닝 키트는 USB 인터페이스로 컴퓨터와 통신 가능하며, 다양한 입출력 장치와 DC 모터 및 서보모터를 구동할 수 있는 범용 입출력 포트를 내장하여 교육용 로봇제작과 응용프로그래밍 실습이 가능하다. 따라서 IT 융합시대를 맞이하여 학문과 전공간의 벽이 낮아지고 창의 공학적 객체지향 프로그래밍언어 교육의 도입이 필요한 시점에서 본 연구에서 개발한 Java 로봇 트레이닝 키트가 많은 기여를 할 것으로 기대된다.

초등정보영재 대상의 앱 인벤터 프로그래밍 교육의 효과 (The Effects of Learning App Inventor Programming Education Plan for Gifted Elementary Students)

  • 서형석;이용배
    • 정보교육학회논문지
    • /
    • 제21권1호
    • /
    • pp.13-22
    • /
    • 2017
  • 초등정보영재교육에 있어서 최근에 강조되고 있는 사안 중 하나는 지식기반 사회를 이끌어갈 정보 분야에서의 창의적 인재의 육성에 있다. 이와 함께 학습자에게는 새롭게 제시되는 문제 상황들을 해결하기 위해 고차원적인 지적능력과 문제해결능력 신장이 더욱 요구되고 있다. 본 연구는 초등정보영재 학생들에게 적용 가능한 앱 인벤터 교육 프로그램을 개발 적용 후 초등정보영재 학생들의 문제해결력 및 자기효능감, 프로그래밍 성취도에 미치는 효과를 검증하고자 하였다. 연구 목적 달성을 위하여 초등정보영재 학생들 수준에 적합한 앱 인벤터 교육 프로그램의 교육과정을 설계하였으며 설계한 프로그램을 렌줄리(Renzulli)의 심화학습 3단계 모형을 변형한 교수 학습 모형을 통해 적용하였다. 초등정보영재 20명을 대상으로 5주간 15차시에 걸쳐 교수 학습활동을 진행하였으며 그 결과 앱 인벤터를 활용한 프로그래밍 교육이 초등정보영재 학생들의 문제해결력, 자기효능감 향상에 긍정적인 효과를 미치는 것으로 나타났으며 프로그래밍 개념과 알고리즘을 이해하는데 효과가 있음을 확인할 수 있었다.

기초 알고리즘을 활용한 프로그래밍 언어 학습 시스템 (Learning System of Programming Language using Basic Algorithms)

  • 박경욱;오경숙;류남훈;이혜미;김응곤
    • 한국전자통신학회논문지
    • /
    • 제5권1호
    • /
    • pp.66-73
    • /
    • 2010
  • 알고리즘을 비롯한 프로그래밍 교육 과정은 전자공학 및 컴퓨터 관련학과를 비롯한 많은 이공계 학과에서 매우 중요한 교과목으로 인식된다. 하지만 과목의 특성 상 많은 학생들이 어려워하고 있으며, 이로 인해 상위 단계의 교과목 수강 시 많은 어려움을 겪고 있다. 순서도는 어떤 문제를 해결하는데 필요한 논리적인 단계들을 그림으로 표현한 것으로, 알고리즘의 흐름을 이해하는데 많이 활용된다. 알고리즘 및 프로그래밍은 구현 과정의 이해를 돕기 위해서 실습 중심의 교육이 매우 중요하다. 더욱이 알고리즘의 개념 이해 및 프로그램 실행 과정에 대한 이해력을 높일 수 있는 보조 프로그램의 필요성이 절실히 요구된다. 본 논문에서는 프로그래밍 과정 중 기본 알고리즘에 대해 쉽게 익힐 수 있도록 기초 알고리즘을 활용한 프로그래밍 언어 학습 시스템을 설계하고 구현하였다.

디지털시대에 플립드 러닝을 활용한 학습자 맞춤형 소프트웨어 교육 방안 연구 (A Study on Customized Software Education method using Flipped Learning in the Digital Age)

  • 김경미;김현숙
    • 디지털융복합연구
    • /
    • 제15권7호
    • /
    • pp.55-64
    • /
    • 2017
  • 본 연구의 목적은 프로그래밍을 처음 접하는 학습자들의 어려움을 파악하여 비전공 대학생들을 위한 대학 교양기초 소프트웨어교육 운영 방안을 모색하는 데 있다. 이를 위해 다양한 전공자들로 구성된 H 대학의 파이썬 프로그래밍 수업에서 수업시간 전 온라인으로 제출한 수강생들의 질문과 수업 후 설문조사를 통하여 체감난이도와 체감이해도를 분석하였다. 비전공자들을 위한 효율적인 수업을 위해 플립드 수업으로 진행하였으며, 오프라인 수업에서는 사전질문을 활용한 학습자 맞춤형 피드백 방식 강의로 진행하였다. 분석결과 프로그래밍 수업을 처음 접하는 학습자들을 위해서는 컴퓨터 언어의 기본개념을 배우기 전에 교육과정 초반에 문제 파악을 통한 논리적인 추상화 과정을 배정하고, 코딩 실습 전에 단원마다 그에 대한 이해를 돕는 상향식(bottom-up) 문제풀이를 통한 충분한 연습이 필요하다. 또한, 학습자의 전공계열 및 수업 내용과 학습자의 진행 단계를 반영한 정밀한 교육과정 설계가 선행되어야 한다.

비전공자를 위한 파이썬 기초 프로그래밍 커리큘럼과 평가문제 개발분석 (Python Basic Programming Curriculum for Non-majors and Development Analysis of Evaluation Problems)

  • 허경
    • 실천공학교육논문지
    • /
    • 제14권1호
    • /
    • pp.75-83
    • /
    • 2022
  • 파이썬 프로그래밍 언어를 강의하는 과목은, 일반 대학에서 모든 재학생이 필수로 이수하는 교양 과목으로 대부분 운영되고 있다. 이를 통해, 컴퓨팅 사고에 의한 기초 프로그래밍 과정을 학습한 비전공자 학생들이 다양한 전공 분야에서 SW를 적용할 수 있는 융합 역량을 강화하고 있다. 기존 연구결과에서는 컴퓨팅 사고 개념 이해와 코드 작성 역량에 대한 다양한 평가 방법들이 제시되었다. 그러나, 평가 문제 사례는 제시되지 않아, 실제 과목 운영 시 적용하는 데 어려움이 있다. 이에 본 논문에서는 비전공자들을 위한 교양과목으로 적용할 수 있는 파이썬 기초 프로그래밍 커리큘럼을 ADDIE 모형에 따라 제안하였다. 그리고 제안된 상세 커리큘럼에 따른 파이썬 요소별 평가 문제 사례를 1차와 2차로 나누어 제안하였다. 마지막으로 본 평가 문제 사례를 적용한 강좌에서 산출된 비전공자 학생들의 평가 점수 결과를 바탕으로 제안한 평가 문제의 유효성을 분석하였다. 제안된 평가 문제 사례는 실시간 온라인 비대면 평가 방식으로 적용하여, 효과적으로 비전공자 학생들의 프로그래밍 역량을 평가할 수 있음을 확인하였다.

시각적 문해력을 활용한 프로그래밍 교육의 효과 : 예술계열 중심으로 (Effects of Programming Education using Visual Literacy: Focus on Arts Major)

  • 피수영;손현숙
    • 실천공학교육논문지
    • /
    • 제16권2호
    • /
    • pp.105-114
    • /
    • 2024
  • 최근 소프트웨어 역량이 강조됨에 따라 대학에서는 전공 구분없이 모든 학생들에게 소프트웨어 교육을 진행하고 있다. 비전공자들은 소프트웨어 교육에 대한 동기부여가 부족하고, 생소한 학습 콘텐츠에 대한 체감 난이도가 높은 문제가 있다. 이를 해결하기 위해 학습자 특성에 맞는 소프트웨어 교육을 제공해야 한다. 예술계열 학생들은 시각에 대한 이해와 표현력이 뛰어나므로 시각적 문해력을 활용하면 프로그래밍 교육의 학습효과를 높일 수 있다고 본다. 본 연구에서는 일상의 문제를 순서도와 의사코드로 분해하여 절차적으로 시각적 이미지를 구성한다. 이를 교육용 프로그래밍 언어인 플레이봇을 이용하여 코딩을 하고 문제를 해결하도록 진행하여 수업의 효과를 분석하고자 한다. 이를 통해 학생들은 프로그래밍의 개념을 이해하고, 문제를 컴퓨팅적 사고로 해결하는 과정을 이해할 수 있으며, 프로그래밍을 자신의 전공에 활용하는 방법을 습득할 수 있을 것으로 기대한다.

개념그래프 도구의 기능 및 특성 조사 (A Survey on Functions and Characteristics of Conceptual Graph Tools)

  • 양기철
    • 디지털융복합연구
    • /
    • 제12권12호
    • /
    • pp.285-292
    • /
    • 2014
  • 지능형 시스템은 자료나 정보보다 지식을 주로 이용하는 시스템이다. 따라서 지식표현은 지능형 시스템 구축에 있어서 중요한 요소이다. 개념그래프는 지식을 효율적으로 표현할 수 있는 그래프 형태의 논리적 지식표현 언어이다. 하지만 개념그래프를 직접 프로그래밍에 활용하기는 쉽지 않다. 이러한 어려움을 극복하기 위하여 여러 가지 도구들이 개발되었다. 본 논문에서는 개념그래프를 이용한 지능형 시스템 구축에 활용할 수 있는 도구들에는 어떤 것들이 있는지 조사하고 그들의 기능과 특성을 비교 분석한다. 조사결과는 지능형 시스템 구축을 위한 개념그래프 활용에 큰 도움이 될 것이다.

AspectHPJ: 자바기반의 관심 지향적 병렬 프로그래밍 모델 (AspectHPJ: Aspect-Oriented Parallel Programming Model in Java)

  • 김명진;이한구;이동근;이원사
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2008년도 한국컴퓨터종합학술대회논문집 Vol.35 No.1 (B)
    • /
    • pp.531-535
    • /
    • 2008
  • 최근의 융합학문의 발전으로 생물, 물리, 화학, 천문, 우주학, 지구과학 분야에서도 병렬 프로그램을 이용한 대용량 데이터를 처리하는 빈도가 높아졌다. 그러나 병렬 프로그래밍은 병렬환경의 전문성을 가지고 있지 않는 다른 학문의 전문가가 사용하기는 어려운 것이 현실이다. 이에 본 논문에서는 병렬환경의 비전문가도 사용하기 용이한 관심 지향적 병렬 프로그래밍 모델과 자바 기반으로 구현된 AspectHPJ 시스템을 제안한다. 본 시스템의 첫 번째 특징은 일반사용자가 Sequential 코드로 프로그램을 작성하고 병렬화 하고자 하는 코드영역에 병렬마크를 사용하여 병렬코드로 전환하는 특징을 가지고 있다. 두 번째는 병렬환경 요소 (프로세서 개수, 분산배열 속성)를 AOP 개념의 관심 (aspect)으로 추출하여 사용자가 보다 용이하게 병렬환경 요소를 설정할 수 있게 해주는데 있다.

  • PDF