Tải bản đầy đủ (.pdf) (5 trang)

Lecture Notes in Computer Science- P42 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (315.92 KB, 5 trang )

194 J. Wang, L. Chen, and W. Zhou

Fig. 6. The result of compile error-check
Even in the absence of face-to-face interactions in the classroom, users can take pro-
gramming training and improve programming skills through the platform in distance
education.
The main frame of the client is divided into three parts: program content index,
system-compiling textbox and TC-compiling textbox. After choosing the problem in
the index, users can click on the TC programming into Turbo C 2.0 environment and do
programming. If they meet the compile errors that can not be solved, they can click on
the compile error-check button in the toolbar. They will get hints and extra help from
the platform. For example, a user wants to do one problem, but he failed to rectify the
compile error by himself, so he can use the compile error-check function. The system
will display the errors which are obtained by analyzing the source code in the sys-
tem-compiling textbox, and present the analysis of TC errors in the TC-compiling
textbox. Its result is shown in Figure 6.
The Figure 6 shows that the errors displayed in the system-compiling textbox are
more concise and accurate. There are three correct compile errors in the program, but
the TC compiler shows six errors. Besides, the error Undefined symbol 'flag' in
function main was presented by the system, but could not be discovered by the TC
compiler. And the errors displayed in the TC-compiling textbox are more detailed than
the errors displayed in Turbo C 2.0. Equally, it is also simple for users to do the logic
error-check for the programs. After sending the source code to the server by using the
submission button, the results of logic error-check will be returned quickly. And the
platform will presents them in the logic-error analysis frame.

Design and Implementation of an Internet-Based Platform for C Language Learning 195
6 Conclusion
This paper introduces the structure and implementation of an Internet-Based platform
for C language learning in detail. More powerful compile and logic error-check func-
tion is provided for C language learners in the system. The compile error-check func-


tion of system excludes the correlated errors of TC compiler, and it solves the problems
of positioning errors incorrectly. It can find out the hidden errors in the code by using a
number of analysis algorithms, which makes the error messages more accurate and
efficient. The logic error-check function in the system can help the users to rectify the
logical errors by themselves. It can also check that the function of programs is achieved
completely or not. Besides, Object-Oriented design methods are used in the system,
which make the platform with strong compatibility. In our subsequent work, we plan to
make our system more powerful in logic error-check function and provide a good
reference model to design other language learning platforms.
References
1. Khalifa, M., Lam, R.: Web-Based Learning: Effects on Learning Process and Outcome.
IEEE Transactions On Education (S0018-9359) 45(4), 350–356 (2002)
2. Au, P.O., Cheng, L., Jia, W., Chow, K.O.: A Web-Based Platform for E-learning Based on
Information Management System. In: Zhou, W., Nicholson, P., Corbitt, B., Fong, J. (eds.)
ICWL 2003. LNCS, vol. 2783, pp. 46–54. Springer, Heidelberg (2003)
3. He, Q., Qiu, L., He, Z.: Design and Implementation of a J2EE-Based Platform for Network.
In: Lau, R., Li, Q., Cheung, R., Liu, W. (eds.) ICWL 2005. LNCS, vol. 3583, pp. 49–55.
Springer, Heidelberg (2005)
4. Luming, Y., Sha, S., Shengbin, R., Changgeng, T., Shengbin, L.: Qi Guashu. C / C + +
Programming Guide [M]. Hunan: Hunan Science and Technology Publishing House (2001)
5. Seidman, C.: SQL Server 2000 Data Mining Technology Guide [M]. Yi, L. translated.
Machinery Industry Publishing House, Beijing (2002)
6. Ng, S.C., Choy, S.O., Kwan, R., Chan, S.F.: A Web-Based Environment to Improve
Teaching and Learning of Computer Programming in Distance Education. In: Lau, R., Li,
Q., Cheung, R., Liu, W. (eds.) ICWL 2005. LNCS, vol. 3583, pp. 279–290. Springer,
Heidelberg (2005)
7. Jianxin, W., Songqiao, C., Weijia, J., Huiming, P.: The Design and Implementation of
Virtual Laboratory Platform in Internet. In: Proceedings of The First International Con-
ference on Web-based Learning, pp. 169–177 (2002)
8. Benetazzo, L., Bertocco, M., Ferraris, F., Ferrero, A., Offelli, C., Parvis, M., Piuri, V.: A

Web-Based Distributed Virtual Educational Laboratory. IEEE Transaction On Instrumen-
tation and Measurement (S0018-9456) 49(2), 349–356 (2000)
9. Cao, J., Chan, A., Cao, W., Yeung, C.: Virtual Programming Lab for Online Distance
Learning. In: Fong, J., Cheung, C.T., Leong, H.V., Li, Q. (eds.) ICWL 2002. LNCS,
vol. 2436, pp. 59–61. Springer, Heidelberg (2002)
10. Choy, S O., Ng, S C.: An Interactive Learning Environment for Teaching and Learning of
Computer Programming. In: Proc of 4th IEEE International Conference on Advanced
Learning Technologies, pp. 848–849. IEEE Computer Society Press, Los Alamitos (2004)
F. Li et al. (Eds.): ICWL 2008, LNCS 5145, pp. 196–207, 2008.
© Springer-Verlag Berlin Heidelberg 2008
Virtual Education System for the
C Programming Language
Ilhyun Moon
1
, Saeron Han
1
, Kwansun Choi
1
, Dongsik Kim
1
, Changwan Jeon
1
,
Sunheum Lee
2
, and Heunggu Jeon
3

1
Electrical Communication Engineering, SoonChunHyang University

2
Information Communication Engineering, SoonChunHyang University
3
MiraeEnergy Tech. co.
, ,
{cks1329,dongsik,jeoncw,sunheum}@sch.ac.kr,
Abstract. Web-based interactive learning is an important educational trend. In this
paper, we implemented web-based virtual education courseware for the C
programming language. It consists of two major components: a creative lecture
component for students and an evaluation component for lecturers. The lecture
component contains HTML-based lecture notes with creative multimedia content,
such as flash movies and video clips, and an effective web-based compiler which
compiles C programs at the server. These are submitted by students through the
Web and the program returns their execution results to the students' PCs. There is
also a submission component of a student's reports and an online examination. The
administration and management system for attendance checking, report assign-
ment, online examination and scoring, etc is implemented using web technologies
such as HTML, Java, Java script, PHP and MySQL database. This system enables
students to easily understand the content and programming techniques of the C pro-
gramming language. It enables lecturers to achieve higher productivity, saving
them time and labor.
Keywords: Web-based Virtual Education, Java Applet, Web-based Compiler,
PHP, MySQL.
1 Introduction
In addition to enhancing traditional educational methods, Information Technology
(IT) can also enable original methods of education delivery and innovative pedagogic
strategies. Teaching is no longer confined to a time and a place. The temporal and
physical boundaries of the traditional classroom are stretched into a learning space. A
growing number of universities worldwide are now offering virtual education prob-
lems. Several companies are also providing online training for their employees. A

simple search on the worldwide web will yield hundreds of web-sites offering virtual
courses or resources for developing and delivering such courses [1-3]. Web-based
learning is beneficial for those students who cannot attend classrooms because of their
personal or professional commitments, their limited financial resources, or physical
limitations. The main advantage of effective on line web-based learning is that it
Virtual Education System for the C Programming Language 197
provides learning facilities on the Internet in real-time: 24 hours/day, 7 days/week,
accessible anywhere, anytime, eliminating conflicts with one’s schedule. Because the
instructional material is always available, learning is self-paced. From the point of
view of instructors, once the class material is in electronic format, it’s easy to modify
and keep up to date. In addition, the organization of the material will be enhanced
because there will only be a single repository for everything. Another objective of a
virtual laboratory is to provide hands-on lab activities to enhance online courses.
A study at East Carolina University [4] found that a virtual laboratory helped
students to understand concepts and theory in online courses. A virtual laboratory is
particularly useful when some experiments involve equipment that may be harmful to
students. The laser virtual laboratory developed by the Physics Department of Dalhousie
University [5] shows how to perform dangerous laser laboratory work in real-time by
controlling equipment through the Internet. A remote laboratory called VLAB [6] for
an oscilloscope experiment was recently set up in the Department of Electrical Engi-
neering, National University of Singapore. These remote laboratories are actual labora-
tory experiments that are run remotely via a web interface, and are well suited to
distance learning courses, where students need not be physically present on campus.
The EE laboratories at the University of Auckland are an excellent example of the trans-
formation of laboratories based on the changing needs of an institution. This process
accelerated measurements, but the ever-increasing student numbers since then have
resulted in severe unavailability of equipment. It is now desirable to simulate electrical
equipment and provide access to the labs over the Internet, so that students can perform
some experiments away from the laboratory. The virtual laboratory system for basic
circuit theory implemented by the electrical communication department of Schoon-

chunhyang University [7] is composed of four important components: Principle Class-
room, Virtual Experiment Classroom, Assessment Classroom and Management System.
Through this virtual laboratory system, students can effectively study the concepts and
theories related to the engineering experiments, and to the means to operate equipment
such as multi-meters, function generators and digital oscilloscopes. Finally, the system
has resulted in several positive outcomes, such as reducing the total experimental hours
and the damage rate of experimental equipment.
In this paper, we have implemented creative multimedia content composed in a vir-
tual laboratory, which provides educative interaction between learners and content, and
enables learners to effectively understand the C syntax and programming concepts. In
particular, our virtual education system for the C programming language shares the
commercial software packages. This makes the system independent of the process of
commercial software development, in which a particular version of the software might
become obsolete very quickly. Our virtual education system uses a server side compiler
in the LINUX environment, via the Internet instead of using a desktop commercial
compiler. Therefore, not all students need to purchase and install a commercial compiler
on their PC in order to study the C Programming Language. Provided learners can be
connected to the our C course-ware through the internet, anytime and anywhere, learn-
ers can submit their C source files and review their execution results, which are imple-
mented and returned by the C compiler on the web server. Learners need not install their
own C compiler on their PC, which saves software costs and maintenance labor.
Learner and teachers communicate with each other using the administration and man-
agement system, which provides different types of functions such as attendance
198 I. Moon et al.
checking, reporting assignments, online examination, scoring, teacher’ advice etc. The
administration and management is implemented using web technologies such as HTML,
Java, Java script, PHP and MySQL database [8-11].
The rest of the paper is organized as follows. In Section 2.1, the system is described
from the learners' perspective, which includes creative lecture note content, web-based
C compiler structure and functions. In Section 2.2, we describe web-based C compiler

implementation. Section 3 describes the student response to a C programming lecture.
Section 4 concludes the paper and discusses a direction for future work.
2 Virtual Learning System for the C Programming Language
Our C courseware largely consists of two components, shown in Fig. 1. One, called a
Virtual Learning System, is concerned with learners' activities, the other with teach-
ers’ activities. The Virtual Learning System assists learners in easily and effectively
learning the C language grammer,and programming concept and techniques. The
system includes HTML lecture notes, multimedia content facilitating the process of
understanding, and an effective practice environment consisting of a web-based C
compiler implemented by GCC/CGI [12-14]. The other is an evaluation and manage-
ment system for teacher and students. We will describe this in section 3.

Fig. 1. Configuration of the Virtual Education System
2.1 Lecture Notes
The learner primarily has access to HTML lecture notes consisting of 16 weeks of con-
tent, as shown in Fig. 2. After pressing the 6th week control hyperlinked, next page
moves to control page. A student can listen to a brief introduction of the week by click-
ing the sound button. Then, he or she can be guided by a Flash Movie animation, for an
explanation of particularly complex concepts and programming techniques [15-17].

×