• 제목/요약/키워드: C# programming language

검색결과 324건 처리시간 0.025초

게임 프로그래밍을 위한 순수 함수형 언어의 활용 (Apply A Pure Functional Language for Game Programming)

  • 이동주;변석우;우균
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2005년도 춘계 종합학술대회 논문집
    • /
    • pp.464-469
    • /
    • 2005
  • 일반적으로 게임 프로그램을 구현할 때 C언어와 같은 명령형 프로그래밍 언어가 주로 사용된다. 하지만 복잡하고 다양한 그림의 모습 및 동작을 표현하기에는 프로그래머의 많은 노력이 요구된다. 복잡한 게임 프로그램을 보다 간결하고 명확하게 표현하는 방법으로 순수 함수형 언어인 Haskell을 이용하는 방법을 시도한다. Haksell과 같은 순수 함수형 프로그래밍은 기술적인 우수성을 가지고 있으며, 현재 많은 분야에서 특화된 언어로 되고 있다. 본 논문에서는 동일한 게임을 Haskell과 C로 직접 구현함으로서, 게임 개발 측면에서 두 언어의 차이점과 장단점에 대해서 논의한다. 또한 향후 Haskell의 실용화 가능성에 대해서도 논의한다.

  • PDF

C 프로그래밍 언어 학습에 공개 소스 소프트웨어 SDL 활용 사례 연구 (A Case Study on Utilizing Open-Source Software SDL in C Programming Language Learning)

  • 김성득
    • 실천공학교육논문지
    • /
    • 제14권1호
    • /
    • pp.1-10
    • /
    • 2022
  • 전자공학교육에서 C 프로그래밍 언어 학습은 컴퓨터 프로그래밍을 이해하고, 임베디드 시스템에서 마이크로프로세서 활용 능력을 습득하기 위한 중요한 기초 교육 과정이다. 기초적 문법과 알고리즘 이해에 중점을 두기 위해, 콘솔 창에서 C 표준 라이브러리 함수에 기반한 프로그램을 작성하며 이론과 실습을 병행해 학습하는 것이 일반적인 교육방법이다. 그렇지만, C 언어의 기본 지식을 어느 정도 습득한 후 프로젝트 활동을 하거나 더 심화된 단계로 나아가고자 한다면, 콘솔창에서 C 표준 라이브러리 함수만을 사용하는 것은 C 프로그램으로 표현하거나 제어할 수 있는 대상을 한정시키게 된다. 학습자가 그래픽 또는 멀티미디어 리소스를 쉽게 활용해 교육적 가치를 높이기 위한 목적으로, 본 논문에서는 공개 소스 소프트웨어인 Simple DirectMedia Layer (SDL)을 활용하는 방안을 C 프로그래밍 언어 학습 과정에 적용한 사례를 연구한다. 콘솔 창에서 수행하는 기초적 프로그래밍 교육과정을 마친 후에 적용된 SDL활용 프로그래밍 교육 과정을 소개하고, 설문 조사를 통해 교육적 가치를 평가한다. 그 결과, 응답자의 56% 이상이 응용능력개선, 흥미유발, 전반적 유용성 측면에서 긍정적 의견을 표명했으며, 부정적 의견은 4% 이하였다.

A Case Study of Puzzle Solving Applied to Programming Practice

  • Kang, Dae-Ki
    • 공학교육연구
    • /
    • 제13권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

Learning C Language Using Robots

  • Kim, Seung-Han;Jeon, Jae-Wook
    • 제어로봇시스템학회:학술대회논문집
    • /
    • 제어로봇시스템학회 2005년도 ICCAS
    • /
    • pp.119-122
    • /
    • 2005
  • Lego company created a set called Robotic Invention System as a kind of Mindstorm set. This system helps to understand the technology of both robot and programming language. It also improves creativeness by building and controlling the robot we make. This paper will introduce basic idea of controlling the RCX(Programmable Lego Block) in C language. Also, this paper will show different idea of teaching C language by using other types of robots.

  • PDF

프로그래밍 언어의 다원성과 상호운영성의 실증적 분석 (An Empirical Study of Diversity and Interoperability of Programming Languages)

  • 고봉석;이병철
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제23권5호
    • /
    • pp.304-309
    • /
    • 2017
  • 둘 이상의 프로그래밍 언어로 상호 작용하는 프로그램을 작성하고 사용하는 경우가 증가하고 있으나 그 무결점성을 확보하기는 어렵다. 프로그램 오류의 원인과 결과가 서로 다른 언어의 코드와 데이터에 존재할 경우 오류 제거의 난이도가 높아지고 Java Native Interface(JNI) 및 Python/C와 같은 프로그램 언어 인터페이스를 잘못 사용하여 새로운 종류의 프로그램 오류가 발생하기 때문이다. 프로그램 언어 상호 작용 오류를 해결하기 위한 프로그램 분석 기법과 도구가 활발히 연구 개발되었으나 이들을 평가하기 위한 프로그램 언어, 프로그램 언어 인터페이스 및 오류들의 실재성에 대한 고찰이 부족한 상황이다. 본 논문에서는 적지 않은 사용자를 가지는 우분투 소프트웨어 생태계 내에서 프로그래밍 언어의 다원성과 상호운영성을 실증적으로 조사하여 다중 언어 프로그래밍 연구의 실재성과 연구의 타당성을 실제 데이터 기반으로 확립하고자 한다.

웹기반 컴파일과 실행을 지원하는 C언어 교육콘텐츠 개발 (C-language Learning Contents Supporting Web-based Compiling and Running)

  • 김성현;김영국
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2006년도 추계 종합학술대회 논문집
    • /
    • pp.796-800
    • /
    • 2006
  • 본 논문에서는 프로그래밍 언어 학습에서 기존의 상용 소프트웨어 개발도구를 이용한 교육에서 벗어나 이해와 실습 중심의 학습이 보다 편리하고 효과적으로 진행될 수 있도록 웹 기반 온라인 학습 콘텐츠를 개발하였다. 프로그래밍 언어 학습은 소스코드를 작성하고 컴파일 후 실행시키는 과정을 거치면서 원리를 깨우쳐 가는 것이 일반적이며 대부분 Microsoft사의 통합개발환경(Visual Studio)이나 상용 소프트웨어 패키지를 각각의 실습 PC에 설치해서 수업을 진행하고 있다. 이 방법은 실습하는 모든 PC에 프로그램을 설치해야하고 구입비용이 적지 않으며 프로그램이 설치되어 있지 않은 곳에서의 학습은 어렵다. 이를 해결하기 위해 리눅스서버와 오픈소스 소프트웨어를 활용하여 웹 브라우저 상에서 직접 코드를 입력해서 컴파일하고 결과를 확인할 수 있는 프로그래밍 언어 학습 콘텐츠를 개발하였다.

  • PDF

C++를 위한 대화식 다중 뷰 시각 프로그래밍 환경 (An Interactive Multi-View Visual Programming Environment for C++)

  • 류천열;정근호;유재우;송후봉
    • 한국정보처리학회논문지
    • /
    • 제2권5호
    • /
    • pp.746-756
    • /
    • 1995
  • 본 논문은 다중 뷰를 이용한 대화식 시각 프로그래밍 환경에 관한 연구로서, C++언어 프로그래밍을 위한 클래스의 시각화와 호출되는 멤버 함수의 흐름을 시각 화하는 뷰들을 제공한다. 본 연구는 클래스에 대한 새로운 시각 기호를 정의하고, 시 각 기호를 이용한 다양한 뷰의 대화식 시각 프로그래밍 환경을 구성 하였다. 대화식 다중 뷰 시각 프로그래밍 환경은 객체지향 언어에서 클래스의 표현과 객체간의 실행 관계를 시각적으로 표현하므로써 객체지향 프로그램의 전체 구조에 대한 파악이 용이 하여 프로그램의 개발이 손쉬워지고, 초보자를 위한 교육과 훈련에도 유용하게 사용 될 수 있다.

  • PDF

UML과 LVOOP를 이용한 프로그래밍 교육의 적용 방안 (The Application to the Programming Education Using UML and LabVIEW OOP)

  • 정덕길;정민포;조혁규
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2011년도 추계학술대회
    • /
    • pp.375-378
    • /
    • 2011
  • 컴퓨터 언어를 배우는 학습자는 다양한 분야에 적합한 프로그래밍 언어를 배우고 텍스트 기반으로 된 프로그래밍을 하는 것이 매우 어렵다고 생각한다. 이러한 문제를 쉽게 풀기 위한 한 방법이 프로그램을 비주얼로 표현하는 것이다. 기존의 시각 프로그래밍인 Visual C++, Visual Basic, Delphi와 같은 비주얼 언어는 외부 인터페이스는 비주얼 컴포넌트로 표현되고 컴포넌트의 작동에 대해서는 텍스트 기반으로 표현한다. 이러한 프로그램을 배우는 학습자들은 컴포넌트 작동에 대한 텍스트 프로그래밍에 대해 어려워하고 있으며 프로그래밍을 싫어하는 한 요소가 되었다. 논문에서는 이러한 문제를 해결하기 위해 논리적 사고를 표현하면서 객체지향을 지원하기 위해 UML을 도입하고 텍스트 프로그래밍 요소를 비주얼 프로그래밍 요소로 대체하기 위해 객체지향을 지원하는 LabVIEW OOP를 사용하여 학습자들에게 프로그래밍 교육을 하는 방법을 제시하였다. 또한, 제시된 프로그래밍 교육 방법에 대해 설문조사를 실시하여 교육적인 효과를 분석하였다.

  • PDF

로봇C언어 교육프로그램이 창의력과 프로그래밍 능력 향상에 미치는 효과 - 과학 고등학교 사례- (The Effect of a Robot C Programming Curriculum on Improving Creativity and Programming Ability - Case of a Science high School-)

  • 서형업
    • 대한공업교육학회지
    • /
    • 제34권1호
    • /
    • pp.210-237
    • /
    • 2009
  • 본 연구의 목적은 중 고등학교 학생들을 대상으로 로봇C언어 교육프로그램을 개발하고 로봇C언어 교육프로그램이 창의력과 프로그래밍 능력 향상에 미치는 효과를 검증하는 것이다. 로봇C언어 교육프로그램의 내용은 로봇의 이해, 로봇의 기초와 조립(교육용 키트의 사용법 및 기구학) 및 로봇C언어 프로그래밍 학습, 과제 로봇 만들기, 창작 로봇 만들기로 구성하였으며 최종적으로 창의적으로 로봇 프로그래밍을 할 수 있도록 개발하였다. C과학 고등학교 1학년 학생(38명) 중에서 로봇C언어 교육프로그램과 C++프로그래밍 과정을 이수한 실험집단(11명)과 C++프로그래밍 과정만을 이수한 비교집단(27명)의 창의력과 프로그래밍 능력 향상 정도를 사전 사후 검사로 비교하였다. 로봇C언어 교육프로그램을 이수한 학생들은 과제 로봇과 창작 로봇의 산출물을 얻었으며, 또한, 이수한 학생들은 TTCT 창의력 검사(도형)결과 창의력 향상에 유의미한 효과가 나타났으며, 자체 평가 결과 C++언어 프로그래밍 능력도 향상되는 것으로 나타났다.

유니뷰 자바 디버깅 시스템의 설계 및 구현 (Design and Implementation of Uniview Java Debugging System)

  • 옥재호;정연정;이공선;윤기송
    • 정보기술과데이타베이스저널
    • /
    • 제7권2호
    • /
    • pp.33-45
    • /
    • 2000
  • Uniview system is a client-server system that runs on heterogeneous distributed systems and supports the debugging of various kinds of programs. Its client system provides a unified debugging concept and interface on various debuggers of heterogeneous hosts. Its server system provides debugging services and features openness and scalability by interoperating with one or more debugger processes existing on the same host. Based on FSF(Free Software Foundation)'s gdb and Sun Microsystems's dbx. Uniview system supports C/C++ programming language in various UNIX environments as well as Windows environments. The proposed system was designed and implemented to support the JAVA language, which is prevalently used in recent heterogeneous distributed systems and was partly extended to make a clear analysis of JAVA class file structure. Sun Microsystems's Jdb supplied as a JAVA debugger has very limited functions compared to other programming language debugger. In this paper, Uniview as a JAVA debugging system was implemented to provide debugging technologies which are necessary to debug Java applications but missing in current JAVA language as well as to provide its users with various information.

  • PDF