프로그래밍 언어 학습을 위한 가상실습환경 1999. 2. 22. 창원대학교 이수현
발표순서 서론 동기와 목표 설계 고려사항과 구조 구현 실제 구현 사례 결론 정리와 향후 연구
동기 동기 언어처리기와 관련한 문제 “프로그래밍 패러다임” 강의 중에 닥친 문제 다양한 언어의 프로그래밍 실습 실습을 위한 언어처리기가 필요 언어처리기와 관련한 문제 개인용 컴퓨터 이용 설치 및 개정(update) 必要, 공간 점유 중대형 서버 이용 계정 및 로긴(login) 必要, 유저 인터페이스
목표 힌트 목표 자바 컴파일링 서비스 언어처리기를 설치하지 않고 프로그래밍 프로그래밍 학습 관련 정보 제공 http://javaboutique.webdeveloper.com/compiler.html http://barok.foi.hr/~dpavlin/java/compiler-oldindex.html 목표 언어처리기를 설치하지 않고 프로그래밍 새 언어에 대한 즉각적인 프로그래밍 가능 프로그래밍 학습 관련 정보 제공 각 언어에 대한 정보, 예제 프로그램 등
접근방법 클라이언트/서버 모델 서버 클라이언트 클라이언트의 성능과 무관 관리는 서버에 집중 보안 문제도 서버에서만 발생 언어처리를 담당 클라이언트 유저 인터페이스를 담당
구조 클라이언트 서버 … 웹 브라우저 웹 서버 Java Applet 구성화일 필터 TCP/IP 인터넷 초기 웹 접속 제안 시스템 초기 웹 접속 Data 이동 구성화일 필터 ... Java ML Prolog TCP/IP 인터넷
고려사항 클라이언트 부담의 최소화 향상된 유저 인터페이스 보안 설계 해석형 언어와 컴파일형 언어 구성 요소를 서버가 보관 후, 필요 시 전송 향상된 유저 인터페이스 WWW 기반 보안 설계 특정 스트링을 서버에서 필터링 해석형 언어와 컴파일형 언어 서로 다른 모양의 화면 구성
구성 (Configuration) 구성 화일 구성 요소 서버에 보관 구성 요소들의 조합 바탕 그림 입출력 및 편집 영역 버튼 (이미지, 텍스트) 언어처리기의 이름 및 옵션 필터
구성의 예 구성 화일의 일부 … [SCM] Content=0,0,600,600 BG=700,0,100,400,l_scheme.jpg Button=710,10,90,30, IMG+first.jpg, SCR+INIT Button=710,50,90,30, IMG+h_scheme.jpg, URL+http://www-swiss.ai.mit.edu/scheme-home.html Button=710,90,90,30, IMG+guide.jpg, URL+http://www.yahoo.com/Computers_and_Internet/Programming_Languages/Scheme/ Button=710,130,90,30, IMG+edit.jpg, EDITBOX Inte=/home2/pl/pulgrim/scm/scmlit Filter=load/IGNORE, save/ftp
구현된 언어 언어 선택 기준 현재 구현된 선택 다양한 패러다임을 연습할 수 있는 언어 여러 개의 버전이 존재하는 컴파일되는 언어 현재 구현된 선택 Java JDK1.2 Prolog BinProlog 5.75 ML SML/NJ 110 Scheme MIT Scheme 5b1 Smalltalk GNU Smalltalk 1.1.5
구현 시스템 서버 클라이언트 개발 기간 SUN Ultra10 300MHz CPU, 256MB RAM Java 1.1을 지원하는 웹 브라우저 개발 기간 개발: 1998년 10월 ~ 12월 현재 버그 수정 중
초기화면
Java
Java 실행결과
Prolog
편집 창
Scheme
ML
결론 URL 장점 특징 http://icom.changwon.ac.kr/ ~pulgrim/Client/ 언어처리기의 설치 없이 프로그래밍 가능 컴파일-실행의 과정을 버튼 클릭으로 가능 같은 언어의 여러 버전을 실험 가능 특징 구성 화일에 의한 요소 배치 히스토리 기능을 가진 편집 창
향후 과제 향후 구현 과제 향후 실험 과제 향후 연구 과제 예제 프로그램 작성 다양한 언어 및 다양한 버전을 설치 시스템의 성능 감시 향후 연구 과제 구성 화일의 범용화 비쥬얼(visual) 환경