753 0

Socket API 기반의 네트워크 프로그래밍 소스 생성기

Title
Socket API 기반의 네트워크 프로그래밍 소스 생성기
Other Titles
A network programming source builder based on Socket Application Programming Interface
Author
박승철
Alternative Author(s)
Park, Seung-Chul
Advisor(s)
최진식
Issue Date
2007-02
Publisher
한양대학교
Degree
Master
Abstract
컴퓨터 하드웨어의 발달과 함께 데이터 통신기술은 괄목할만한 발전을 이루어왔다. 특히, 인터넷의 급속한 성장은 데이터 통신의 주체가 호스트와 같은 서버 중심에서 PC와 같은 클라이언트 중심으로 확대되었다. 또한, 인터넷의 기본 프로토콜인 TCP/IP를 사용하는 FTP, Telnet, SMTP, HTTP등과 같은 새로운 네트워크 프로토콜이 등장하였고 이를 응용한 다양한 어플리케이션들이 개발되었다. 컴퓨터 분야의 꽃은 단연 프로그래밍 분야라 할 수 있다. 그 중에서도 가장 핵심이라 할 수 있는 네트워크 프로그래밍은 급변하는 IT기술의 속도만큼이나 중요한 개념으로 자리 잡게 되었다. 하드웨어의 외형적인 성장과 기술적인 발전에 따라 네트워크 프로그래밍을 작성할 수 있는 작성도구 및 응용 기술이 발달하고 사용자 인터페이스가 편리해짐에 따라 과거보다는 손쉽게 네트워크 프로그래밍을 작성할 수 있게 되었다. 하지만 이렇게 지나치게 편리한 개발 환경은 네트워크 프로그래밍의 알고리즘을 이해하고 익숙해지려는 학습자들에게는 오히려 도움이 되지 못한다. 또한, 기존의 네트워크 프로그래밍 교재들은 대부분 이론적인 지식과 단순한 예제 위주의 학습방식을 고수하고 있기 때문에 교재를 통한 프로그래밍 학습도 쉽지 않은 실정이다. 윈도우 관련 프로그램 개발의 경우 윈도우즈용 API(Application Programming Interface)를 이용하여 개발하면 개발자가 다양한 프로그램의 원리를 이해할 뿐만 아니라 윈도우가 제공하는 다양한 기능을 모두 구현할 필요 없이 핵심적인 내용만을 프로그래밍 할 수 있게 된다. 이와 같이 TCP/UDP 등의 네트워크 프로그래밍에 있어서도 사용자의 네트워킹 프로그램의 기본 원리를 이해하고 독자적인 네트워크 프로그램을 작성하는데 필수적인 Socket API를 제시하여 네트워크 프로그램에 대한 이해를 넓힐 수 있을 것이다. 본 연구에서는 초보학습자들이 아이콘 형태로 만들어진 Socket API 시스템 함수들을 조합하거나 연결하여 프로그램 할 수 있도록 하였다. 아이콘을 조합하여 사용자는 자신이 만든 프로그램을 이해하기 쉽고 또한 다른 사람이 만든 여러 가지 응용 프로그램을 활용하기 쉽도록 한다. 또한 API를 이용한 라이브러리 함수들이 지나치게 캡슐화 되어 내부적으로는 어떤 작업을 하는지 이해하지 못하고 프로그래밍 하는 것을 방지하기 위해 각 모듈별로 세부 프로그램 코드를 따로 생성, 수정이 가능하도록 한다. 이것은 빠른 시간 내에 많은 양의 산출물을 도출해야하는 네트워크 프로그래밍에 적합하며 기초 원리를 이해해야 하는 학습의 의미로써 바람직한 일이다. 나아가서는 프로그램을 작성할 때 텍스트 교재나 매체에만 의존하는 수동적인 학습에서 벗어나 API에 대한 깊은 지식이 없어도 임의의 모듈을 조합하고 구성하는 작업을 통하여 자기 주도적인 학습효과를 개선하는 장점이 있다.; Data Communication technology has been surprisingly improved with the development of computer hardware. Most of all, the rapid growth of Internet technology switched the main body of Data Communication from servers like host systems to clients like personal computers. In addition, new network protocols such as FTP, Telnet, SMTP, HTTP etc by using TCP/IP has been emerged and various applications using these have also been developed. Computer Programming is considered as the main core sector of computer field. Especially, network programming has been established as the important core concept in this field. In accordance with external growth of hardware and technological development, the programming tools and applicable technologies for programming have also been improved as well as the user interfaces for developers have become convenient. This change has provided programmers with the environment to write codes easily and fast compared to the past. But, this convenient environment can not support students who want to understand and get accustomed to the algorithm of network programming. What is more, the existing textbooks concerning network programming and their contents just give the theoretical knowledge and simple examples so that it is not easy for basic students to get used to programming learning through them. In windows programming, by using windows APIs learners are able to understand the concept of various programs and also write codes the core modules without understanding and implementing the whole functions. Similarly, in implementing network programming such as TCP/UDP and so on, provided essential Socket APIs enable learners to understand the basic principles of network programs and composes the structure of them. Thus, in this study, as a programming learning system, learners are able to design and implement various network programs just by clicking a mouse with these Socket APIs in the shape of graphical icons. By composing various Socket APIs, learners are able to uderstand what they programmed and utilize others' various applications. What is more, many of library functions have been too much encapsulated these days, which is difficult for basic learners to understand internal business logic of the programs. This system also enables users to write and edit the detailed codes each module. This is suitable for rapid networking programming that has to be generated quickly and is desirable for basic learners who want to understand the principle of network programming. Futhermore, in composing programming, users are also able to compose various network programming for themselves self-directly instead of depending on textbooks and other materials as well as they are able to implement existing network program. In the end, this system has strong good points that users can design and compose many network program with this and enhance their learning about network programming even if they don't have any advanced knowledge about Socket APIs.
URI
https://repository.hanyang.ac.kr/handle/20.500.11754/150827http://hanyang.dcollection.net/common/orgView/200000405545
Appears in Collections:
GRADUATE SCHOOL OF EDUCATION[S](교육대학원) > VOCATIONAL EDUCATION(실업학계열) > Theses (Master)
Files in This Item:
There are no files associated with this item.
Export
RIS (EndNote)
XLS (Excel)
XML


qrcode

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

BROWSE