Extensions to Svetovid students’ submission environment Doni Pracner, Ivan Pribela, Mirjana Ivanović, Zoran Budimac.

Slides:



Advertisements
Similar presentations
Single-Window Integrated Development Environment Ivan Ruchkin Moscow State University Faculty of Computational Mathematics and Cybernetics Computing Systems.
Advertisements

INTRODUCTION TO SIMULATION WITH OMNET++ José Daniel García Sánchez ARCOS Group – University Carlos III of Madrid.
INTRODUCTORY MICROSOFT WORD Lesson 7 – Working With Documents
® Microsoft Office 2010 Excel Tutorial 1: Getting Started with Excel.
Svetovid (Special Submission Environment for Students Assessment) Ivan Pribela.
Tutorial 8: Developing an Excel Application
Chapter 2 Creating a Research Paper with Citations and References
Ivan Pribela, Mirjana Ivanović. Table of contents  Overview of Svetovid  The first Svetovid version  The second Svetovid version  Extension of the.
1 Eclipse Example Guide Example : Java Editor. 2 Introduction l The Java Editor example : »demonstrates the standard features available for custom text.
Understanding SWING Architecture CS 4170 UI Design Hrvoje Benko Oct. 9, 2001.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
Chapter 11 ASP.NET JavaScript, Third Edition. 2 Objectives Learn about client/server architecture Study server-side scripting Create ASP.NET applications.
Mirjana Ivanović, Zoran Budimac Aleksandra Klašnja-Milićević, Boban Vesin, University of Novi Sad, Faculty of Sciences Novi Sad, Serbia Possibilities to.
Pasewark & Pasewark Microsoft Office XP: Introductory Course 1 INTRODUCTORY MICROSOFT WORD Lesson 7 – Working With Documents.
Introduction to Array The fundamental unit of data in any MATLAB program is the array. 1. An array is a collection of data values organized into rows and.
Creating a Console Application with Visual Studio
Chapter 2 First Java Programs
With Alex Conger – President of Webmajik.com FrontPage 2002 Level I (Intro & Training) FrontPage 2002 Level I (Intro & Training)
Editing Java programs with the BlueJ IDE. Working environments to develop (= write) programs There are 2 ways to develop (write) computer programs: 1.Using.
Protus 2.0: Ontology-based semantic recommendation in programming tutoring system Presentor: Boban Vesin Boban Vesin, Aleksandra Klašnja-Milićević Higher.
Exploring Microsoft Excel 2002 Chapter 8 Chapter 8 Automating Repetitive Tasks: Macros and Visual Basic for Applications By Robert T. Grauer Maryann Barber.
Chapter 5 Using SAS ® ETL Studio. Section 5.1 SAS ETL Studio Overview.
Guide to MCSE , Second Edition, Enhanced 1 Objectives Understand and use the Control Panel applets Describe the versatility of the Microsoft Management.
Section 6.1 Explain the development of operating systems Differentiate between operating systems Section 6.2 Demonstrate knowledge of basic GUI components.
A First Program Using C#
Chapter 4 Code Editor Goals and Objectives Program more efficiently? How can you speed up your development process? Do you want to learn useful shortcuts.
WebFOCUS Developer Studio Update Dimitris Poulos Technical Director September 3, 2015 Copyright 2009, Information Builders. Slide 1.
Getting Started with Expression Web 3
I. Pribela, M. Ivanović Neum, Content Automated assessment Testovid system Test generator Module generators Conclusion.
The NetBeans IDE CSIS 3701: Advanced Object Oriented Programming.
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Introduction to NS2 -Network Simulator- -Prepared by Changyong Jung.
Chapter 2 Creating a Research Paper with References and Sources Microsoft Word 2013.
User Interface Elements of User Interface Group View.
Deutsches Elektronen-Synchrotron DESY Helmholtz Association of German Research Centres Hamburg, Germany The European X-Ray Laser Project.
Testovid - an environment for testing almost any aspect of student assignments I. Pribela, S. Tošić, M. Ivanović, Z. Budimac Risan, September 2007.
Applets and Frames CS 21a: Introduction to Computing I First Semester,
Exploring Microsoft Office XP - Microsoft Word 2002 Chapter 71 Exploring Microsoft Word Chapter 7 The Expert User: Workgroups, Forms, Master Documents,
Lecture Set 2 Part B – Configuring Visual Studio; Configuration Options and The Help System (scan quickly for future reference)
XP New Perspectives on Integrating Microsoft Office XP Tutorial 2 1 Integrating Microsoft Office XP Tutorial 2 – Integrating Word, Excel, and Access.
Jaeki Song ISQS6337 JAVA Lecture 03 Introduction to Java -The First Java Application-
Productivity Programs Common Features and Commands.
Word 2010 Vocabulary List 1. Click and Type - A feature that allows you to double-click a blank area of a document to position the cursor in that location,
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
IIS 7.0 for CFML Developers Vince Bonfanti. Introduction Vince Bonfanti President and co-founder of New Atlanta Software developer by training and trade.
Key Applications Module Lesson 21 — Access Essentials
Hello World in the Forte IDE An introduction to the Forte IDE (integrated development environment) writing the classic “Hello World” program in Java.
9/2/ CS171 -Math & Computer Science Department at Emory University.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
SSQSA present and future Gordana Rakić, Zoran Budimac Department of Mathematics and Informatics Faculty of Sciences University of Novi Sad
Microsoft Word 2010 Chapter 2 Creating a Research Paper with Citations and References.
Java Programming, Second Edition Chapter Thirteen Understanding Swing Components.
Session 2: Basic HTML HTML Coding Spring 2009 The LIS Web Team Presents.
MS Excel Lesson 1. Starting Excel Excel opens to a list of templates and in most cases you choose Blank workbook or open a previous file. Think of a workbook.
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
ArgoUML Peterson Lorins Chi-Hwa John Marcos Dawid Trawczynski Leticia Izquierdo EEL5881 Software Engineering I Spring 2002 – Dr. Schiavone.
An EPICS IDE Using Eclipse Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 15, 2006 Argonne National Laboratory, Argonne, IL.
Open Office Writer Introduction AOSS _ Course material AOSS Master training workshop Singapore 2007.
1 Eclipse Example Guide Example : Java Editor. 2 Introduction l The Java Editor example : »demonstrates the standard features available for custom text.
NOTEPAD++ Lab 1 1 Riham ALSmari. Why Notepad++ ?  Syntax highlighting  Tabbed document interface  Zooming  Indentation code  Find and replace over.
LOGO Chapter 4 System Software. Contents Lead in New words and phrases Intensive study Exercises Operating System.
Basic 1960s It was designed to emphasize ease of use. Became widespread on microcomputers It is relatively simple. Will make it easier for people with.
Basic Microsoft Word 2013.
COSC-4840 Software Engineering
File service architecture
Java Programming Course
CGN 2420 Formatting a Workbook Using Excel’s Ribbon
Presentation transcript:

Extensions to Svetovid students’ submission environment Doni Pracner, Ivan Pribela, Mirjana Ivanović, Zoran Budimac

Presentation contents Introduction Introduction Overview of Svetovid Overview of Svetovid Motivation Motivation Goals of the extension Goals of the extension New textual component New textual component Overview of some of the new features Overview of some of the new features Conclusions Conclusions

Svetovid Special Submission Environment for Students Assessment Special Submission Environment for Students Assessment Developed at the Department of Mathematics and Informatics, Faculty of Science, Novi Sad Developed at the Department of Mathematics and Informatics, Faculty of Science, Novi Sad Written in Java – cross platform Written in Java – cross platform Successfully used in several courses Successfully used in several courses

Svetovid architecture Server Server running on one computer running on one computer Any number of clients Any number of clients running on other computers running on other computers Both server and clients are written in Java 5 Both server and clients are written in Java 5 Recommended server platform Recommended server platform Windows XP Windows XP Windows NT Windows NT any UNIX platform any UNIX platform Student Instructor Server Student Instructor Server

Control (instructor) client Prompts a login dialog Prompts a login dialog Set of configuration dialogs Set of configuration dialogs Setting up courses Setting up courses Managing students Managing students Full control over the conduction of practical exercises Full control over the conduction of practical exercises Groups, order, timing Groups, order, timing

Student client Prompts a login dialog Prompts a login dialog IDE allowing the student comfortable work IDE allowing the student comfortable work The files owned by a student are contained in a virtual directory The files owned by a student are contained in a virtual directory

Student client

Motivation The text component should accommodate the needs of programming The text component should accommodate the needs of programming A third party component was built in A third party component was built in Syntax highlight, parenthesis matching,… Syntax highlight, parenthesis matching,… Main problems: Main problems: No keyboard shortcuts while editing text No keyboard shortcuts while editing text No automatic indention No automatic indention

Goals of the extension Create a new text component Create a new text component Usage of the ‘Java Swing’ text package Usage of the ‘Java Swing’ text package Keep all of the previous features and add new ones Keep all of the previous features and add new ones

CodeEditorPane New textual component New textual component Extends JEditorPane Extends JEditorPane Main features Main features Syntax highlighting Syntax highlighting Marking bracket pairs Marking bracket pairs Line numbering Line numbering Indent preservation Indent preservation Measures against cheating Measures against cheating Convenience methods for applications Convenience methods for applications

Syntax Highlight (1/2) Done in a separate object representing the language Done in a separate object representing the language Interface ProgramLang Interface ProgramLang Language properties Language properties Methods for syntax highlighting Methods for syntax highlighting Whole document Whole document Segment Segment Expanded segment Expanded segment

Syntax Highlighting (2/2) Class DefaultLang – default implementation Class DefaultLang – default implementation an empty language an empty language Flexible scanner, easy to extend into new languages Flexible scanner, easy to extend into new languages Currently supported languages: Java, Scheme, Modula2 and TeX Currently supported languages: Java, Scheme, Modula2 and TeX PlainTextLang – for simple textual files PlainTextLang – for simple textual files Automatic detection of languages (extensions) Automatic detection of languages (extensions)

Parenthesis matching Pairs of parenthesis usually have a meaning in program code Pairs of parenthesis usually have a meaning in program code Usage of the Highlighter interface Usage of the Highlighter interface

Line numbering Made as a separate text pane with line numbers Made as a separate text pane with line numbers Should be built in a JScrollPane as a row header Should be built in a JScrollPane as a row header

Code indention Helps to make more readable code Helps to make more readable code On line breaks, the indent from the previous line is copied On line breaks, the indent from the previous line is copied

Measures against cheating Usage of the system clipboard is forbidden Usage of the system clipboard is forbidden Overriding cut, copy and paste methods Overriding cut, copy and paste methods Using a local static clipboard Using a local static clipboard

Convenience methods for visual implementation Status bar Status bar Row and column of the caret Row and column of the caret Currently active language for highlighting Currently active language for highlighting Toolbar Toolbar Programming language selection Programming language selection Manual syntax highlight refresh Manual syntax highlight refresh Line numbering component Line numbering component Fully set up JPanel with the component Fully set up JPanel with the component

Conclusion CodeEditorPane CodeEditorPane Support for all existing features, adding new ones Support for all existing features, adding new ones Flexible syntax highlight system Flexible syntax highlight system Simple to build in into existing applications Simple to build in into existing applications Does not break existing ‘Swing’ text mechanisms Does not break existing ‘Swing’ text mechanisms Unfortunately the new component has not yet been implemented into Svetovid Unfortunately the new component has not yet been implemented into Svetovid

Thank you for your attention