Eclipse as a Teaching Platform for Kenya Student: Thomas Timbul (MEng 4) Supervised by: Robert Chatley.

Slides:



Advertisements
Similar presentations
Introduction to Java 2 Programming Lecture 3 Writing Java Applications, Java Development Tools.
Advertisements

©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Java Integrated Development Environments Heather Natour Senior Lead Engineer Blackboard Inc. July 18 th 10:15am.
Introduction to Eclipse. Start Eclipse Click and then click Eclipse from the menu: Or open a shell and type eclipse after the prompt.
Verification and Validation
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Perl Practical Extraction and Report Language Senior Projects II Jeff Wilson.
NetBeans IDE Tal Maoz Na’ama Zahavi.
Introduction to Eclipse, Unit Testing and JUnit David Rabinowitz.
Integrated Development Environments. Today We Will: Go over more advanced functionality of Eclipse. Break up into teams to work on presentation and final.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
20-Jun-15 Eclipse. Most slides from: 2 About IDEs An IDE is an Integrated Development Environment.
XP Tutorial 1 New Perspectives on JavaScript, Comprehensive1 Introducing JavaScript Hiding Addresses from Spammers.
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
NetBeans IDE Vishnuvardhan.M Dept. of Computer Science - SSBN.
Eclipse IDE. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as teaching.
03 Using Eclipse. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as.
Java Course Outline Kumar Harshit, USW. Course Description Teaches students to program using the Java programming language with the help of the Netbeans.
Editing Java programs with the BlueJ IDE. Working environments to develop (= write) programs There are 2 ways to develop (write) computer programs: 1.Using.
Introduction to High-Level Language Programming
Parts of a Computer Why Use Binary Numbers? Source Code - Assembly - Machine Code.
CSCI 224 Introduction to Java Programming. Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
“Enhancing Reuse with Information Hiding” ITT Proceedings of the Workshop on Reusability in Programming, 1983 Reprinted in Software Reusability, Volume.
Integrated Development Environments (IDEs) CS 21a: Introduction to Computing I First Semester,
® Microsoft Access 2010 Tutorial 11 Using and Writing Visual Basic for Applications Code.
© 2006 IBM Corporation Jazz Foundation Deep Dive Agile Planning’s Scripting Tools.
Nipissing University, North Bay, Ontario, Canada 1 Building Reusable Components with Service-Oriented -IBM Eclipse Innovation Grant -IBM Eclipse Innovation.
Lesson 6. GCSE Computing – programming languages Candidates should be able to:  describe common tools and facilities available in an integrated development.
© All rights reserved. U.S International Tech Support
Sadegh Aliakbary Sharif University of Technology Spring 2012.
Clement Allen, PhD Florida A&M University SUMMER 2006.
1 3. Computing System Fundamentals 3.1 Language Translators.
Distributed Java Programming Distributed Java Programming Setting up a Java Development Environment.
Eclipse Eclipse An IDE is an Integrated Development Environment Different IDEs meet different needs – BlueJ, DrJava are designed as teaching.
Refactoring1 Improving the structure of existing code.
© 2006 by WTP PMC; made available under the EPL v1.0 | Cambridge | September 6, 2006 Hakeem Shittu Software Consultant Customizing Eclipse Functionality.
Eclipse. An IDE is an Integrated Development Environment Different IDEs meet different needs BlueJ, DrJava are designed as teaching tools Emphasis is.
Advanced Software Development & Engineering 1 Theme Introduction.
Eclipse 24-Apr-17.
Getting started with Programming using IDE. JAVA JAVA IS A PROGRAMMING LANGUAGE AND A PLATFORM. IT CAN BE USED TO DELIVER AND RUN HIGHLY INTERACTIVE DYNAMIC.
Eclipse. An IDE is an Integrated Development Environment Different IDEs meet different needs BlueJ, DrJava are designed as teaching tools Emphasis is.
Intermediate 2 Computing Unit 2 - Software Development Topic 2 - Software Development Languages and Environments.
Design of an Integrated Robot Simulator for Learning Applications Brendon Wilson April 15th, 1999.
1 ECE 750 Topic 8 Meta-programming languages, systems, and applications Evolving Object-Oriented Designs with Refactorings – Lance Tokuda and Don Batory.
Object Oriented Programming Criteria: P2 Date: 07/10/15 Name: Thomas Jazwinski.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect, V7.5 Module 18: Applying Patterns and Transformations.
Refactoring1 Improving the structure of existing code.
Programming & Debugging. Key Programming Issues Modularity Modifiability Ease of Use Fail-safe programming Style Debugging.
COMPREHENSIVE Access Tutorial 11 Using and Writing Visual Basic for Applications Code.
Compilers and Interpreters
Eclipse 27-Apr-17.
Top 5 IDE that Simplifies PHP Development Biztech IT Consultancy Pvt. Ltd. | |
Debugging using By: Samuel Ashby. What is debugging?  A bug is an error in either a program or the hardware itself.  Debugging is first locating and.
Refactoring Tools – Proparse, Prorefactor, Prolint etc. Steven Lichtenberg Sr. Technologist Jenark Business Systems, Inc.
C++ Programming Basics C++ Lecture 1 Stacy MacAllister.
Implementation Topics Describe –Characteristics of good implementations –Best practices to achieve them Understand role of comments Learn debugging techniques.
ATS Application Programming: Java Programming
Eclipse 20-Sep-18.
AUTOMATED SESSION PLANNING. In the present world, everything has become automated. By, a click everything is being processed. But the preparation of the.
Displaying Form Validation Info
Objectives Learn about Function procedures (functions), Sub procedures (subroutines), and modules Review and modify an existing subroutine in an event.
Behavioral Models for Software Development
Unit 1: Introduction Lesson 1: PArts of a java program
Improving the structure of existing code
Unit 6 Assignment 2 Chris Boardley.
Tutorial 11 Using and Writing Visual Basic for Applications Code
Chapter 9: Implementation
Presentation transcript:

Eclipse as a Teaching Platform for Kenya Student: Thomas Timbul (MEng 4) Supervised by: Robert Chatley

Publication Accepted for publication in the proceedings of ESEC/FSE 2005 (research demos) IBM Eclipse innovation award scheme

Presentation Contents Introduction to Kenya Motivation for KenyaEclipse Tool Demonstration Approach Criticism Conclusions Future Work Questions

Introduction to Kenya Robert Chatley 2001 ‘mini’ Java Hides issues complicated for beginners  No packages  No qualified method call ( instance.call() )  No access modifiers ( public, private, …) Has its own ‘IDE’ Direct translation into full Java

Motivation for KenyaEclipse Promote the use of professional tools  Many students code using plain text editor  Introduce ‘advanced’ features earlier  ‘Produce’ more efficient programmers Pedagogical help through style guidance  Mistakes are caught only during marking  Hard to weed out ‘bad style’  Use available tools to create automated style guide

KenyaEclipse feature overview Ported functionality  Compilation errors highlighted ‘as-you-type’  Switching between Kenya/Java  Running & Debugging New functionality  Automated Style Guidance  Code completion proposals  Variable reference/occurrence highlighting  Basic refactoring (renaming)

Tool Demonstration Getting started Running & Debugging Some ‘advanced’ features Configurable Style Guidance Module  Step-by-step guidance and resolution  Omitted ‘break’ statements  Metric style measures  Shadowed constants

Approach Criticism - Benefits Improvements to teaching  Integrated guidance and help  Stylistic errors caught early and explained comprehensively  Introduction to readily available, yet often undiscovered, IDE tools  Familiarisation with production-level environment

Approach Criticism - the other side Too much automation?  Know the basics (command line compilation)  Students start relying on tools for correction Like spell checking or calculators Tool introduction not gradual enough?  Information overload  ‘Right feature at the right time’ Loss of independence  Students may bind themselves to Eclipse  Choose the best tool for each situation

Conclusions IDE (Eclipse) provides excellent tool base  Teaching tool creation much simplified  Re-use available technology/techniques  No need to ‘re-invent the wheel’ BUT  Bear in mind who the target audience is  Tools cannot easily replace good teachers

Future Work Style Guidance  Compiled style patterns rather than classes  Generic for commercial languages As a Teaching Platform?  Adapt tool to student’s level  Explicit supervisor control of features Control available IDE features  Dynamic programming language Control language features (much harder)

Questions ? All project material -