G51OOP. Object Oriented Programming Comp Sci University of Nottingham Unit 1 : Introduction

Size: px
Start display at page:

Download "G51OOP. Object Oriented Programming Comp Sci University of Nottingham Unit 1 : Introduction"

Transcription

1 G51OOP Object Oriented Programming Comp Sci University of Nottingham Unit 1 : Introduction

2 Overview Background Teaching Staff Course Details Assessment OOP Summary Resources Programming Programming Languages High Level Languages Interpreters / Compilers Introduction to Java Java History Java Properties Types of Programs JDK tools The HelloWorld program Using CourseMaster

3 Teaching Staff Lectures : Colin Higgins, CourseMaster Administrator : Essam Eliwa? Lab Assistants - labs, problems classes Web site -

4 Course Details (1 st Semester) 20 lectures. Monday 15:00 : LT2 Tuesday 13:00 : LT2 Coursework exercises. Lab sessions. Tuesdays 14:00 to 16:00. Prerequisites : G51PRG (and a little intelligence J ). Objectives : To learn problem solve, to think in an object-oriented manner and to express solutions as sound implementations in Java.

5 Assessment Some coursework via the CourseMarker system (used to be called CourseMaster and Ceilidh before that).

6 Assessment Some courseworks that do not count towards assessment. 3 to 4 courseworks that do. Details to be announced later.

7 Resources Sun file servers (JDK is installed in Solaris) PCs (JDK is installed in all lab PCs) Favourite editor (notepad?) CourseMaster installed in all lab PCs Later Eclipse Web Site root is at

8 Reading Recommended? (but don t buy unless needed): Java Gently by Judy Bishop (Addison-Wes). Java. How to Program by Deitel & Deitel (Prentice Hall). Developing Java Software by Winder & Roberts (Wiley). Java Software Solutions by Lewis and Loftus (Pearson/Addison Wesley). Thinking in Java (Bruce Eckel) (available on the web) Other Sources of Information: USE A WEB SEARCH Sun Java Tutorial : WWW general : search in Intense Java Course :

9 Programming "A program is a sequence of instructions. A recipe, a musical score, and a knitting pattern are all programs." P Grogono, Programming in Pascal. - The way to deal with an impossible task is to chop it down into a number of merely very difficult tasks, and break each one of them into a group of horribly hard tasks, and each one of them into tricky jobs, and each one of them... (Terry Pratchet, Truckers)

10 Programming Languages There are four basic programming language levels: machine language assembly language high-level language fourth-generation language Each CPU has its own specific machine language The other levels were created to make programming easier

11 Programming Languages A program must be translated into machine language before it can be executed on a particular type of CPU This can be accomplished in several ways A compiler is a software tool which translates source code into a specific target language Often, that target language is the machine language for a particular CPU type The Java approach is somewhat different

12 High Level Languages Old-fashioned languages include: BASIC - often used by beginners on home computers. FORTRAN - old but still popular with some scientists and engineers, new versions are introduced every few years. Algol - an elegant little-used internationally designed language, whose features are being incorporated into other languages. COBOL - a widely used and well standardised language used in commerce. APL - an interactive scientific language with a very mathematical notation. PL/I - a failed attempt by IBM at achieving an all-purpose language, now almost dead.

13 High Level Languages Other Languages : Pascal - good for beginners, often taught as a first language. Modula2 - a development of Pascal to make it more realistic for large programs, and to enable modern program design techniques to be used. C - a practical language, see below. C++ - an object-oriented development of C. ADA - a USA Department of Defense standard, now adopted by the UK Ministry of Defense also, aimed at safe programming for real-time embedded systems. Java A robust, secure, portable, network enabled variation on C/C+ +.

14 High Level Languages Compare the COBOL: rate_per_hour multiplied by hours_worked gives gross_pay with C/C++: pay = rate * hours Some language aims: understanding, documentation > commercial (eg COBOL). handling vectors or complex numbers > scientific/engineering (FORTRAN). simplicity > beginners (Basic, Pascal). safety > real time systems (ADA, Modula-2). complexity > object-oriented (C++, Eiffel, Java).

15 Interpreters vs Compilers Interpretation : BASIC & APL are interpreted. Each line is decoded and interpreted by the computer as it is executed. Instructions in loops may have to be interpreted many times. This is inefficient and causes the computer to run slowly. Compilation : Most other languages are compiled. Whole program first analysed by a compiler (another program). Converted into a machine executable form. Runs much faster (an order of magnitude or more). Can apply many types of optimisation during or after compilation. In two parts compilation into an object module, then loading/linking into the executable.

16 Java: What is it? Sun s Description. Java is a : Simple Object Oriented Distributed Interpreted Robust Secure Architecture Neutral Portable High Performance Multithreaded and Dynamic programming language. It contains an extensive library of classes for graphics programming, input/output, string handling, maths functions, basic data structures, etc.

17 Java History C language was evolved as a portable operating system language Dennis Ritchie (at Bell labs) developed it from B (which came from BCPL). Originally ran on a DEC PDP-11 computer in C++ is an object-oriented extension to C developed by Bjarne Stroustroup early 80 s. Sun had an internal corporate research project, Green, in 1991, to develop intelligent consumer devices. Project lead to the language Oak (James Gosling) based on C/C+ +. Oak about to be cancelled when WWW came along. Sun saw renamed Oak to Java and saw potential for use on the web Java formally announced in May 95. Since then, Java generated huge interest.

18 Java s Early Versions Java was officially announced in May 1995 Java First Idea Java 1.02 Java 1.1 Java 1.2 Java ETC! Green Project OAK

19 Simple Removes areas of C/C++ that cause most errors Memory management Pointers Templates Operator overloading Has a small set of Language Constructs. Borrows the C and C++ syntax. Is free from pointers. Uses Garbage Collection. Does not use header files and pre-processors.

20 Object Oriented Not hybrid like C++. Supports the basic notions of OO : Abstraction, Modularity, Encapsulation, Hierarchy, Typing, Concurrency, Persistance.

21 Distributed Works on a variety of platforms. Provides support for : Networking, Internet, Remote Objects.

22 Interpreted sort of The Java compiler translates Java source code into a special representation called bytecode Java bytecode is not the machine language for any traditional CPU Another software tool, called an interpreter, translates bytecode into machine language and executes it Therefore the Java compiler is not tied to any particular machine Java is considered to be architecture-neutral Java Source File Java Compiler Java Bytecode Java File Bytecode Java File Bytecode File JVM

23 Robust Exception and Error handling. Multi-Tasking. Memory protection and management. Allows Modular development. Extensive compile-time checking.

24 Secure The features of bytecode and its interpretation, prevent unintentional or intentional sabotage of compiled programs. Security has been considered in many levels.

25 Architecture Neutral Bytecode can run on any JVM on any platform. Write Once run Anywhere. JDK implementation on many platforms. Java Bytecode Mac VM WinXP VM Solaris VM MacOS WinXP Solaris Java HW

26 Portable The bytecode can run on virtual machines (VM) above different operating systems : MacOS Windows95/NT/CE/XP/Vista Solaris OS2 etc It can also run directly on hardware.

27 High - Performance Multithreading allows more than one task in a program. With JIT compilers the interpreted code compiles at run time and gives almost native code speed. Java Bytecode Native JIT Java VM Operating System Hardware Java OS Java HW

28 Dynamic Java has been built to support the development of dynamically extendable systems. Java provides dynamic linking of the binary code at runtime.

29 Java s Genealogy

30 Java : Types of Programs Applets : Execute on HTML Browsers. Have severe security restrictions. GUI Applications : Are Interpreted and Executed. Use the current s platform s GUI widgets. Mostly use Java s AWT or JFC packages. Console Applications : Simple Text Console.

31 JDK basic tools javac (Compiler).java->.class The Java Language Compiler that you use to compile programs written in Java into bytecodes. Example : javac HelloWorld.java java (Interpreter) executes.class The Interpreter that you use to run programs written in Java. Example : java HelloWorld javadoc (Doc. generator).java html Generates documentation in HTML format from Java source code. Example : javadoc HelloWorld.java

32 The First Java Program Filename: HelloWorld.java public class HelloWorld { } public static void main(string argv[] ) { System.out.println("Hello World!!!"); }

33 CourseMarker CourseMarker is a Courseware system that provides for : The presentation of Information summaries, notes, coursework questions, hints, daily messages The administration of coursework coursework delivery, submission management, overall class management The automatic assessment of coursework solution space modeling, assessment and feedback mechanisms, plagiarism checking tools

34 Logging in CM client: To login to CM you need both a windows and a unix password. Once you are in windows you can click the CM icon This will get you to the login screen : Unix Password!

35 Message of the day : Informs you about the latest in exercises Do read it!

36 CourseMarker Course Level : Options Exit MOTD Notes Summary

37 CourseMarker Unit Level Notes Summary

38 CourseMarker Exercise Level : Setup Develop Submit Question View TD Marks Run Run TD

39 Setup : Puts the skeleton source and other files in your working area Do not setup over your solution

40 Unix / JCreator For early exercises use your favourite editor under Unix/Windows (notepad?) and compile by hand (via java & javac) For subsequent exercises use Eclipse (you can use anything else you like, but support will not be provided)

41 Submit After having developed the solution you need to refresh the CM browser by refreshing the course tree structure. You will be asked to confirm and then wait for the result. Expanded Result tree Submission Number Feedback for every check

42 Other Options : View TD : Allows you to see the testing input that CM uses for the particular exercise. Marks : Allows you to check the exercise s last submission Options : Allows you to change : Visual properties. Editor command.

43 Summary Background Teaching Staff Course Details Assessment PR1 Summary Resources Programming Programming Languages High Level Languages Interpreters / Compilers Introduction to Java Java History Java Properties Types of Programs JDK tools The HelloWorld program Using CourseMarker

Object Oriented Concepts and Programming (CSC244) By Dr. Tabbasum Naz

Object Oriented Concepts and Programming (CSC244) By Dr. Tabbasum Naz Object Oriented Concepts and Programming (CSC244) By Dr. Tabbasum Naz tabbasum.naz@ciitlahore.edu.pk Course Outline Course Title Object Oriented Concepts and Course Code Credit Hours 4(3,1) Programming

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter 1 Introduction to Computers, Programs, and Java 1 Objectives To understand computer basics, programs, and operating systems ( 1.2 1.4). To describe the relationship between Java and the World Wide

More information

Index. Course Outline. Grading Policy. Lab Time Distribution. Important Instructions

Index. Course Outline. Grading Policy. Lab Time Distribution. Important Instructions Index Course Outline Grading Policy Lab Time Distribution Important Instructions 2 Course Outline Week Topics 1 - History and Evolution of Java - Overview of Java 2 - Datatypes - Variables 3 - Arrays 4

More information

Lecture 1: Overview of Java

Lecture 1: Overview of Java Lecture 1: Overview of Java What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++ Designed for easy Web/Internet applications Widespread

More information

Lecture 1: Introduction to Java

Lecture 1: Introduction to Java Lecture 1: Introduction to Java 1 Programs Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs. Without programs, a computer is an empty

More information

Introduction to Java. Lecture 1 COP 3252 Summer May 16, 2017

Introduction to Java. Lecture 1 COP 3252 Summer May 16, 2017 Introduction to Java Lecture 1 COP 3252 Summer 2017 May 16, 2017 The Java Language Java is a programming language that evolved from C++ Both are object-oriented They both have much of the same syntax Began

More information

CHAPTER 1. Introduction to JAVA Programming

CHAPTER 1. Introduction to JAVA Programming CHAPTER 1 Introduction to JAVA Programming What java is Java is high level You can use java to write computer applications that computes number,process words,play games,store data, etc. History of Java.

More information

Introduction to Java Programming

Introduction to Java Programming Introduction to Java Programming Lecture 1 CGS 3416 Spring 2017 1/9/2017 Main Components of a computer CPU - Central Processing Unit: The brain of the computer ISA - Instruction Set Architecture: the specific

More information

Chapter 1 Introduction to Computers, Programs, and Java. What is a Computer? A Bit of History

Chapter 1 Introduction to Computers, Programs, and Java. What is a Computer? A Bit of History Chapter 1 Introduction to Computers, Programs, and Java CS170 Introduction to Computer Science 1 What is a Computer? A machine that manipulates data according to a list of instructions Consists of hardware

More information

Introduction to Programming

Introduction to Programming Introduction to Programming session 3 Instructor: Reza Entezari-Maleki Email: entezari@ce.sharif.edu 1 Fall 2010 These slides are created using Deitel s slides Sahrif University of Technology Outlines

More information

From High Level to Machine Code. Compilation Overview. Computer Programs

From High Level to Machine Code. Compilation Overview. Computer Programs From High Level to Algorithm/Model Java, C++, VB Compilation Execution Cycle Hardware 27 October 2007 Ariel Shamir 1 Compilation Overview Algorithm vs. Programs From Algorithm to Compilers vs. Interpreters

More information

Lecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)

Lecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science) Lecture 09 Ada to Software Engineering Mr. Mubashir Ali Lecturer (Dept. of dr.mubashirali1@gmail.com 1 Summary of Previous Lecture 1. ALGOL 68 2. COBOL 60 3. PL/1 4. BASIC 5. Early Dynamic Languages 6.

More information

History Introduction to Java Characteristics of Java Data types

History Introduction to Java Characteristics of Java Data types Course Name: Advanced Java Lecture 1 Topics to be covered History Introduction to Java Characteristics of Java Data types What is Java? An Object-Oriented Programming Language developed at Sun Microsystems

More information

Lesson 01 Introduction

Lesson 01 Introduction Lesson 01 Introduction MIT 12043, Fundamentals of Programming By: S. Sabraz Nawaz Lecturer in Management & IT M.Sc. In IS (SLIIT), PGD in IS (SLIIT), BBA (Hons.) Spl. in IS (SEUSL), MCP Programs Computer

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter 1 Introduction to Computers, Programs, and Java 1 Objectives To understand computer basics, programs, and operating systems ( 1.2 1.4). To describe the relationship between Java and the World Wide

More information

Assoc. Prof. Dr. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved.

Assoc. Prof. Dr. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved. Assoc. Prof. Dr. Marenglen Biba (C) 2010 Pearson Education, Inc. All rights reserved. Course: Object-Oriented Programming with Java (4 credit hours) Instructor : Assoc. Prof. Dr. Marenglen Biba Office

More information

Java Language. Programs. Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs.

Java Language. Programs. Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs. Introduction to Programming Java Language Programs Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs. Programs are written using programming

More information

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform Outline Introduction to Java Introduction Java 2 Platform CS 3300 Object-Oriented Concepts Introduction to Java 2 What Is Java? History Characteristics of Java History James Gosling at Sun Microsystems

More information

Introduction. A. Bellaachia Page: 1

Introduction. A. Bellaachia Page: 1 Introduction 1. Objectives... 2 2. Why are there so many programming languages?... 2 3. What makes a language successful?... 2 4. Programming Domains... 3 5. Language and Computer Architecture... 4 6.

More information

CSE 421 Course Overview and Introduction to Java

CSE 421 Course Overview and Introduction to Java CSE 421 Course Overview and Introduction to Java Computer Science and Engineering College of Engineering The Ohio State University Lecture 1 Learning Objectives Knowledgeable in how sound software engineering

More information

Module 1: Introduction to Computers, Programs, and Java

Module 1: Introduction to Computers, Programs, and Java Module 1: Introduction to Computers, Programs, and Java Module 1: Introduction to Java page 1 Objectives To review Program Design and Problem-Solving Techniques To describe the relationship between Java

More information

Chapter 1: Introduction to Computers, Programs, and Java

Chapter 1: Introduction to Computers, Programs, and Java Chapter 1: Introduction to Computers, Programs, and Java CS1: Java Programming Colorado State University Original slides by Daniel Liang Modified slides by Chris Wilcox 1 Objectives To understand computer

More information

1/14/2014. Introduction to CSE 1325 Object Oriented Programming (Using Java) Introduction (Cont.) Introduction

1/14/2014. Introduction to CSE 1325 Object Oriented Programming (Using Java) Introduction (Cont.) Introduction Introduction (Cont.) Introduction to CSE 1325 Object Oriented Programming (Using Java) Sharma Chakravarthy Information Technology Laboratory (IT Lab) Computer Science and Engineering Department The University

More information

G52PGP. Lecture oo3 Java (A real object oriented language)

G52PGP. Lecture oo3 Java (A real object oriented language) G52PGP Lecture oo3 Java (A real object oriented language) 1 Last lecture Associating functions with data into objects is an alternative way to decompose a program Can then consider each object on its own

More information

Computational Applications in Nuclear Astrophysics using Java Java course Lecture 1

Computational Applications in Nuclear Astrophysics using Java Java course Lecture 1 Computational Applications in Nuclear Astrophysics using Java Java course Lecture 1 Prepared for course 160410/411 Michael C. Kunkel m.kunkel@fz-juelich.de Materials taken from; docs.oracle.com Teach Yourself

More information

Low-Level Languages. Computer Programs and Programming Languages

Low-Level Languages. Computer Programs and Programming Languages Computer Programs and Programming Languages What is a computer program? Set of instructions that directs computer to perform tasks Programming used to write instructions 1 Computer Programs and Programming

More information

An Introduction to Software Engineering. David Greenstein Monta Vista High School

An Introduction to Software Engineering. David Greenstein Monta Vista High School An Introduction to Software Engineering David Greenstein Monta Vista High School Software Today Software Development Pre-1970 s - Emphasis on efficiency Compact, fast algorithms on machines with limited

More information

Course Announcements cs2220: Engineering Software

Course Announcements cs2220: Engineering Software Course Announcements cs2220: Engineering Software Assistant Teacher: Robbie Hott Help for PS1: Friday, 2:30-3:30pm (Thornton Stacks) Class 2: Introduction Java Fall 2010 University of Virginia David Evans

More information

C++ Spring Break Packet 11 The Java Programming Language

C++ Spring Break Packet 11 The Java Programming Language C++ Spring Break Packet 11 The Java Programming Language! Programmers write instructions in various programming languages, some directly understandable by computers and others requiring intermediate translation

More information

CT 229. CT229 Lecture Notes. Labs. Tutorials. Lecture Notes. Programming II CT229. Objectives for CT229. IT Department NUI Galway

CT 229. CT229 Lecture Notes. Labs. Tutorials. Lecture Notes. Programming II CT229. Objectives for CT229. IT Department NUI Galway Lecture Notes CT 229 Programming II Lecture notes, Sample Programs, Lab Assignments and Tutorials will be available for download at: http://www.nuigalway.ie/staff/ted_scully/ct229/ Lecturer: Dr Ted Scully

More information

The Computer System. Hardware = Physical Computer. Software = Computer Programs. People = End Users & Programmers. people

The Computer System. Hardware = Physical Computer. Software = Computer Programs. People = End Users & Programmers. people The Computer System Hardware = Physical Computer The equipment associated with a computer system. hardware software people The set of instructions that tell a computer what to do. Use the power of the

More information

CS 113: Introduction to

CS 113: Introduction to CS 113: Introduction to Course information MWF 12:20-1:10pm 1/21-2/15, 306 Hollister Hall Add/drop deadline: 1/28 C Instructor: David Crandall See website for office hours and contact information Prerequisites

More information

Software Project. Lecturers: Ran Caneti, Gideon Dror Teaching assistants: Nathan Manor, Ben Riva

Software Project. Lecturers: Ran Caneti, Gideon Dror Teaching assistants: Nathan Manor, Ben Riva Software Project Lecturers: Ran Caneti, Gideon Dror Teaching assistants: Nathan Manor, Ben Riva Emails: (canetti/benriva)@post.tau.ac.il nathan.manor@gmail.com gideon@mta.ac.il http://www.cs.tau.ac.il/~roded/courses/soft-project10.html

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter 1 Introduction to Computers, Programs, and Java 1 Objectives To review computer basics, programs, and operating systems ( 1.2-1.4). To explore the relationship between Java and the World Wide Web

More information

Introduction to Java. Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved.

Introduction to Java. Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved. Introduction to Java 1 Programs Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs. Programs are written using programming languages.

More information

TTh 9.25 AM AM Strain 322

TTh 9.25 AM AM Strain 322 TTh 9.25 AM - 10.40 AM Strain 322 1 Questions v What is your definition of client/server programming? Be specific. v What would you like to learn in this course? 2 Aims and Objectives v Or, what will you

More information

This lecture will take you through simple and practical approach while learning Java Programming language.

This lecture will take you through simple and practical approach while learning Java Programming language. JAVA TUTORIAL GENERAL Java is a high-level programming language originally developed by Sun Microsystems and released in 1995. Java runs on a variety of platforms, such as Windows, Mac OS, and the various

More information

Chapter 1. Introduction to Computers and Java Objects. Background information. » important regardless of programming language. Introduction to Java

Chapter 1. Introduction to Computers and Java Objects. Background information. » important regardless of programming language. Introduction to Java Chapter 1 Introduction to Computers and Java Objects Background information» important regardless of programming language Introduction to Java Chapter 1 Java: an Introduction to Computer Science & Programming

More information

Getting Started. Chapter 1. Java Programming FROM THE BEGINNING. Chapter 1: Getting Started

Getting Started. Chapter 1. Java Programming FROM THE BEGINNING. Chapter 1: Getting Started Chapter 1 Getting Started 1 1.1 What Do Computers Do? A computer system is an integrated collection of hardware and software components. Hardware refers to the electronics inside a computer. Software consists

More information

Programming. Syntax and Semantics

Programming. Syntax and Semantics Programming For the next ten weeks you will learn basic programming principles There is much more to programming than knowing a programming language When programming you need to use a tool, in this case

More information

CSC116: Introduction to Computing - Java

CSC116: Introduction to Computing - Java CSC116: Introduction to Computing - Java Course Information Introductions Website Syllabus Computers First Java Program Text Editor Helpful Commands Java Download Intro to CSC116 Instructors Course Instructor:

More information

Java is a high-level programming language originally developed by Sun Microsystems and released in Java runs on a variety of

Java is a high-level programming language originally developed by Sun Microsystems and released in Java runs on a variety of Java is a high-level programming language originally developed by Sun Microsystems and released in 1995. Java runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX.

More information

CompSci 125 Lecture 02

CompSci 125 Lecture 02 Assignments CompSci 125 Lecture 02 Java and Java Programming with Eclipse! Homework:! http://coen.boisestate.edu/jconrad/compsci-125-homework! hw1 due Jan 28 (MW), 29 (TuTh)! Programming:! http://coen.boisestate.edu/jconrad/cs125-programming-assignments!

More information

CS 11 java track: lecture 1

CS 11 java track: lecture 1 CS 11 java track: lecture 1 Administrivia need a CS cluster account http://www.cs.caltech.edu/ cgi-bin/sysadmin/account_request.cgi need to know UNIX www.its.caltech.edu/its/facilities/labsclusters/ unix/unixtutorial.shtml

More information

Outline. Object Oriented Programming. Course goals. Staff. Course resources. Assignments. Course organization Introduction Java overview Autumn 2003

Outline. Object Oriented Programming. Course goals. Staff. Course resources. Assignments. Course organization Introduction Java overview Autumn 2003 Outline Object Oriented Programming Autumn 2003 2 Course goals Software design vs hacking Abstractions vs language (syntax) Java used to illustrate concepts NOT a course about Java Prerequisites knowledge

More information

CSC116: Introduction to Computing - Java

CSC116: Introduction to Computing - Java CSC116: Introduction to Computing - Java Intro to CSC116 Course Information Introductions Website Syllabus Computers First Java Program Text Editor Helpful Commands Java Download Course Instructor: Instructors

More information

Computer Principles and Components 1

Computer Principles and Components 1 Computer Principles and Components 1 Course Map This module provides an overview of the hardware and software environment being used throughout the course. Introduction Computer Principles and Components

More information

Programming Language Basics

Programming Language Basics Programming Language Basics Lecture Outline & Notes Overview 1. History & Background 2. Basic Program structure a. How an operating system runs a program i. Machine code ii. OS- specific commands to setup

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter 1 Introduction to Computers, Programs, and Java 1 Programs Computer programs, known as software, are instructions to the computer. You tell a computer what to do through programs. Without programs,

More information

Introduction to Java

Introduction to Java Introduction to Java Module 1: Getting started, Java Basics 22/01/2010 Prepared by Chris Panayiotou for EPL 233 1 Lab Objectives o Objective: Learn how to write, compile and execute HelloWorld.java Learn

More information

Objectives. Chapter 1 Introduction to Computers, Programs, and Java. What is a Computer?

Objectives. Chapter 1 Introduction to Computers, Programs, and Java. What is a Computer? Chapter 1 Introduction to Computers, Programs, and Java Objectives To review computer basics, programs, and operating systems ( 12-14) To explore the relationship between Java and the World Wide Web (

More information

Learning objectives. The Java Environment. Java timeline (cont d) Java timeline. Understand the basic features of Java

Learning objectives. The Java Environment. Java timeline (cont d) Java timeline. Understand the basic features of Java Learning objectives The Java Environment Understand the basic features of Java What are portability and robustness? Understand the concepts of bytecode and interpreter What is the JVM? Learn few coding

More information

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Introduction to Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Why OS? 2 What is an OS? Software that converts hardware into

More information

Chapter 1: Introduction to Computers and Java

Chapter 1: Introduction to Computers and Java Chapter 1: Introduction to Computers and Java Starting Out with Java: From Control Structures through Objects Fifth Edition by Tony Gaddis Chapter Topics Chapter 1 discusses the following main topics:

More information

8/23/2014. Chapter Topics. Introduction. Java History. Why Program? Java Applications and Applets. Chapter 1: Introduction to Computers and Java

8/23/2014. Chapter Topics. Introduction. Java History. Why Program? Java Applications and Applets. Chapter 1: Introduction to Computers and Java Chapter 1: Introduction to Computers and Java Starting Out with Java: From Control Structures through Objects Fifth Edition by Tony Gaddis Chapter Topics Chapter 1 discusses the following main topics:

More information

Lecture 1 - Introduction (Class Notes)

Lecture 1 - Introduction (Class Notes) Lecture 1 - Introduction (Class Notes) Outline: How does a computer work? Very brief! What is programming? The evolution of programming languages Generations of programming languages Compiled vs. Interpreted

More information

COSC 2P95. Introduction. Week 1. Brock University. Brock University (Week 1) Introduction 1 / 18

COSC 2P95. Introduction. Week 1. Brock University. Brock University (Week 1) Introduction 1 / 18 COSC 2P95 Introduction Week 1 Brock University Brock University (Week 1) Introduction 1 / 18 Lectures and Labs Lectures are Thursdays, from 3pm 5pm (AS/STH 217) There are two lab sections Lab 1 is Mondays,

More information

Advanced Object-Oriented Programming Introduction to OOP and Java

Advanced Object-Oriented Programming Introduction to OOP and Java Advanced Object-Oriented Programming Introduction to OOP and Java Dr. Kulwadee Somboonviwat International College, KMITL kskulwad@kmitl.ac.th Course Objectives Solidify object-oriented programming skills

More information

Java Programming. Zheng-Liang Lu. Java 308 Spring Department of Computer Science & Information Engineering National Taiwan University

Java Programming. Zheng-Liang Lu. Java 308 Spring Department of Computer Science & Information Engineering National Taiwan University Java Programming Zheng-Liang Lu Department of Computer Science & Information Engineering National Taiwan University Java 308 Spring 2019 Class Information Instructor: Zheng-Liang Lu Email: d00922011@ntu.edu.tw

More information

CSC116: Introduction to Computing - Java

CSC116: Introduction to Computing - Java CSC116: Introduction to Computing - Java Course Information Introductions Website Syllabus Schedule Computing Environment AFS (Andrew File System) Linux/Unix Commands Helpful Tricks Computers First Java

More information

COMP1917: Computing 1 1. Introduction

COMP1917: Computing 1 1. Introduction COMP1917: Computing 1 1. Introduction Reading: Moffat, Chapter 1. COMP1917 15s2 Introduction 1 Course Web Site http://www.cse.unsw.edu.au/~cs1917/15s2 Please check this Web Site regularly for updated information,

More information

Kickstart Intro to Java Part I

Kickstart Intro to Java Part I Kickstart Intro to Java Part I COMP346/5461 - Operating Systems Revision 1.6 February 9, 2004 1 Topics Me, Myself, and I Why Java 1.2.*? Setting Up the Environment Buzz about Java Java vs. C++ Basic Java

More information

Java language. Part 1. Java fundamentals. Yevhen Berkunskyi, NUoS

Java language. Part 1. Java fundamentals. Yevhen Berkunskyi, NUoS Java language Part 1. Java fundamentals Yevhen Berkunskyi, NUoS eugeny.berkunsky@gmail.com http://www.berkut.mk.ua What Java is? Programming language Platform: Hardware Software OS: Windows, Linux, Solaris,

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter Introduction to Computers, Programs, and Java. Introduction Java is the Internet program language Why Java? The answer is that Java enables user to deploy applications on the Internet for servers,

More information

CS11 Java. Fall Lecture 1

CS11 Java. Fall Lecture 1 CS11 Java Fall 2006-2007 Lecture 1 Welcome! 8 Lectures Slides posted on CS11 website http://www.cs.caltech.edu/courses/cs11 7-8 Lab Assignments Made available on Mondays Due one week later Monday, 12 noon

More information

Announcements. Java Review. More Announcements. Today. Assembly Language. Machine Language

Announcements. Java Review. More Announcements. Today. Assembly Language. Machine Language Announcements Java Review Java Bootcamp Another session tonight 7-9 in B7 Upson tutorial & solutions also available online Assignment 1 has been posted and is due Monday, July 2, 11:59pm Lecture 2 CS211

More information

Getting Started with Java. Atul Prakash

Getting Started with Java. Atul Prakash Getting Started with Java Atul Prakash Running Programs C++, Fortran, Pascal Python, PHP, Ruby, Perl Java is compiled into device-independent code and then interpreted Source code (.java) is compiled into

More information

CS240: Programming in C

CS240: Programming in C CS240: Programming in C Lecture 1: Class overview. Cristina Nita-Rotaru Lecture 1/ Fall 2013 1 WELCOME to CS240 Cristina Nita-Rotaru Lecture 1/ Fall 2013 2 240 Team Instructor: Cristina Nita-Rotaru Special

More information

Introduction to Java. Nihar Ranjan Roy. https://sites.google.com/site/niharranjanroy/

Introduction to Java. Nihar Ranjan Roy. https://sites.google.com/site/niharranjanroy/ Introduction to Java https://sites.google.com/site/niharranjanroy/ 1 The Java Programming Language According to sun Microsystems java is a 1. Simple 2. Object Oriented 3. Distributed 4. Multithreaded 5.

More information

Programming Languages FILS Andrei Vasilateanu

Programming Languages FILS Andrei Vasilateanu Programming Languages FILS 2014-2015 Andrei Vasilateanu Course Master: Administration Andrei Vasilateanu, andraevs@gmail.com Teaching Assistants: Radu Serban Grading: Final exam 40% Laboratory 60% 2 Tests

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter 1 Introduction to Computers, Programs, and Java 1.1 What are hardware and software? 1. A computer is an electronic device that stores and processes data. A computer includes both hardware and software.

More information

Course and Unix Intro

Course and Unix Intro Course and Unix Intro Comp-206 : Introduction to Software Systems Lecture 1 Alexandre Denault Computer Science McGill University Fall 2006 Instructor Alexandre Denault Graduate student, working in the

More information

Eng. Mohammed S. Abdualal

Eng. Mohammed S. Abdualal Islamic University of Gaza Faculty of Engineering Computer Engineering Department Computer Programming Lab (ECOM 2124) Created by Eng: Mohammed Alokshiya Modified by Eng: Mohammed Abdualal Lab 1 Introduction

More information

CISC 124: Introduction To Computing Science II

CISC 124: Introduction To Computing Science II CISC 124: Introduction To Computing Science II instructor: Margaret Lamb instructor's home page: www.cs.queensu.ca/home/malamb office: Goodwin 527 current office hours are always on my home page 1 Moodle

More information

The Java programming environment. The Java programming environment. Java: A tiny intro. Java features

The Java programming environment. The Java programming environment. Java: A tiny intro. Java features The Java programming environment Cleaned up version of C++: no header files, macros, pointers and references, unions, structures, operator overloading, virtual base classes, templates, etc. Object-orientation:

More information

COMP1917: Computing 1 1. Introduction

COMP1917: Computing 1 1. Introduction COMP1917: Computing 1 1. Introduction Reading: Moffat, Chapter 1. COMP1917 12s2 Introduction 1 Course Web Site http://www.cse.unsw.edu.au/~cs1917/12s2 Please check this Web Site regularly for updated information,

More information

SKILL AREA 304: Review Programming Language Concept. Computer Programming (YPG)

SKILL AREA 304: Review Programming Language Concept. Computer Programming (YPG) SKILL AREA 304: Review Programming Language Concept Computer Programming (YPG) 304.1 Demonstrate an Understanding of Basic of Programming Language 304.1.1 Explain the purpose of computer program 304.1.2

More information

Introduction to Computers and Programming Languages. CS 180 Sunil Prabhakar Department of Computer Science Purdue University

Introduction to Computers and Programming Languages. CS 180 Sunil Prabhakar Department of Computer Science Purdue University Introduction to Computers and Programming Languages CS 180 Sunil Prabhakar Department of Computer Science Purdue University 1 Objectives This week we will study: The notion of hardware and software Programming

More information

Atelier Java - J1. Marwan Burelle. EPITA Première Année Cycle Ingénieur.

Atelier Java - J1. Marwan Burelle.  EPITA Première Année Cycle Ingénieur. marwan.burelle@lse.epita.fr http://wiki-prog.kh405.net Plan 1 2 Plan 3 4 Plan 1 2 3 4 A Bit of History JAVA was created in 1991 by James Gosling of SUN. The first public implementation (v1.0) in 1995.

More information

INTRODUCTION TO OPERATING SYSTEMS. Jo, Heeseung

INTRODUCTION TO OPERATING SYSTEMS. Jo, Heeseung INTRODUCTION TO OPERATING SYSTEMS Jo, Heeseung TODAY'S TOPICS What is OS? History of OS 2 OPERATING SYSTEM? Computer systems internals 3 WHY DO WE LEARN OS? To graduate? To make a better OS or system Functionality

More information

History of Java. Java was originally developed by Sun Microsystems star:ng in This language was ini:ally called Oak Renamed Java in 1995

History of Java. Java was originally developed by Sun Microsystems star:ng in This language was ini:ally called Oak Renamed Java in 1995 Java Introduc)on History of Java Java was originally developed by Sun Microsystems star:ng in 1991 James Gosling Patrick Naughton Chris Warth Ed Frank Mike Sheridan This language was ini:ally called Oak

More information

Class List. Java Must Have. Class Goals. Class Goals. Schedule

Class List. Java Must Have. Class Goals. Class Goals. Schedule Class List Accelerated Introduction to CS Using Java 5 2004 Illinois Institute of Technology Schedule CS -201-071 M 06:25-09:05PM Rice Campus - Wheaton Room RI 148 LAB W 06:25-09:05PM CS -201-392 MW 06:25-09:05PM

More information

Programming Language Concepts 1982, 1987, Outline. Period

Programming Language Concepts 1982, 1987, Outline. Period Programming Language Concepts 1982, 1987, 1997 Mehdi Jazayeri Distributed Systems Group Technische Universität Wien mjazayeri@alum.mit.edu http://www.infosys.tuwien.ac.at Outline Computer science environment

More information

1. Introduction. Course Web Site. COMP1917: Computing 1. Textbook. Occupational Health and Safety (OHS)

1. Introduction. Course Web Site. COMP1917: Computing 1. Textbook. Occupational Health and Safety (OHS) COMP1917 14s2 Introduction 1 COMP1917: Computing 1 1. Introduction Reading: Moffat, Chapter 1. Course Web Site http://www.cse.unsw.edu.au/~cs1917/14s2 Please check this Web Site regularly for updated information,

More information

AP Computer Science A: Java Programming

AP Computer Science A: Java Programming AP Computer Science A: Java Programming Zheng-Liang Lu Department of Computer Science & Information Engineering National Taiwan University APcomSci 297 Spring 2018 Class Information Instructor: Zheng-Liang

More information

LECTURE/ STUDY NOTES ON C

LECTURE/ STUDY NOTES ON C LECTURE/ STUDY NOTES ON C PART I (Overview of C Programming) Introduction of C language History of C Importance of C Demerits of C Basic Structure of C Working steps of C compiler Source Code Object Code

More information

Chapter 1 Introduction to Computers, Programs, and Java

Chapter 1 Introduction to Computers, Programs, and Java Chapter 1 Introduction to Computers, Programs, and Java 1.1 Introduction The central theme of this book is to learn how to solve problems by writing a program. This book teaches you how to create programs

More information

Introduction to Operating Systems

Introduction to Operating Systems Introduction to Operating Systems Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3052: Introduction to Operating Systems, Fall 2017, Jinkyu Jeong

More information

Introduction to Java Programming CPIT 202. WEWwwbvxnvbxmnhsgfkdjfcn

Introduction to Java Programming CPIT 202. WEWwwbvxnvbxmnhsgfkdjfcn Introduction to Java Programming CPIT 202 WEWwwbvxnvbxmnhsgfkdjfcn b 1 WEEK 1 LECTURE 1 What is Java? 2 Background on Java First appear in 1995 Developed by Sun Microsystems Corp. Cross platform = platform

More information

Lecture 4: Introduction to Java and your Development Environment

Lecture 4: Introduction to Java and your Development Environment Lecture 4: Introduction to Java and your Development Environment COMP 250 Winter 2018 Carlos G. Oliver, Jérôme Waldispühl Slides adapted from Mathieu Blanchette 1 2 About me» 2nd Year PhD Student in Computer

More information

Operating System: Chap2 OS Structure. National Tsing-Hua University 2016, Fall Semester

Operating System: Chap2 OS Structure. National Tsing-Hua University 2016, Fall Semester Operating System: Chap2 OS Structure National Tsing-Hua University 2016, Fall Semester Outline OS Services OS-Application Interface OS Structure Chapter2 OS-Structure Operating System Concepts NTHU LSA

More information

Seminar report Java Submitted in partial fulfillment of the requirement for the award of degree Of CSE

Seminar report Java Submitted in partial fulfillment of the requirement for the award of degree Of CSE A Seminar report On Java Submitted in partial fulfillment of the requirement for the award of degree Of CSE SUBMITTED TO: www.studymafia.org SUBMITTED BY: www.studymafia.org 1 Acknowledgement I would like

More information

Unit. Programming Fundamentals. School of Science and Technology INTRODUCTION

Unit. Programming Fundamentals. School of Science and Technology INTRODUCTION INTRODUCTION Programming Fundamentals Unit 1 In order to communicate with each other, we use natural languages like Bengali, English, Hindi, Urdu, French, Gujarati etc. We have different language around

More information

COSC 2P90 Programming Languages & Object-Orientation

COSC 2P90 Programming Languages & Object-Orientation COSC 2P90 Programming Languages & Object-Orientation Hi! 1 Textbooks Main Text Comparative Programming Languages 3rd ed.; Wilson, LB & Clark, RG; Addison-Wesley (2001); ISBN 0-201-71012-9 Supplemental

More information

COMP-202 Unit 0: Course Details

COMP-202 Unit 0: Course Details COMP-202 Unit 0: Course Details CONTENTS: Focus of the Course and Prerequisites Outline and Textbook Course Structure and Grading Scheme Computer Lab Info and Required Software Getting started thinking

More information

C++ Programming for Programmers using Microsoft Visual C Professional

C++ Programming for Programmers using Microsoft Visual C Professional C++ Programming for Programmers using Microsoft Visual C++ 6.0 Professional Compiled and Presented by Thomas P. Sturm, Ph.D. Graduate Programs in Software Technical Seminar The University of St. Thomas

More information

! Learn how to think like a computer scientist. ! Learn problem solving. ! Read and write code. ! Understand object oriented programming

! Learn how to think like a computer scientist. ! Learn problem solving. ! Read and write code. ! Understand object oriented programming 1 TOPIC 1 INTRODUCTION TO COMPUTER SCIENCE AND PROGRAMMING Topic 1 Introduction to Computer Science and Programming Notes adapted from Introduction to Computing and Programming with Java: A Multimedia

More information

GETTING STARTED. The longest journey begins with a single step. In this chapter, you will learn about: Compiling and Running a Java Program Page 2

GETTING STARTED. The longest journey begins with a single step. In this chapter, you will learn about: Compiling and Running a Java Program Page 2 ch01 11/17/99 9:16 AM Page 1 CHAPTER 1 GETTING STARTED The longest journey begins with a single step. CHAPTER OBJECTIVES In this chapter, you will learn about: Compiling and Running a Java Program Page

More information

Inf1-OOP. Textbooks. Who and What. Organisational issues. Why Java? Course Overview. Hello, World! in Java

Inf1-OOP. Textbooks. Who and What. Organisational issues. Why Java? Course Overview. Hello, World! in Java Organisational issues Inf1-OOP Course Overview Perdita Stevens, adapting earlier version by Ewan Klein School of Informatics January 11, 2014 Why Java? Hello, World! in Java Built-in Types Integers Floating-Point

More information

McGill University COMP-202A Introduction to Computing I Summer 2006 webct.mcgill.ca

McGill University COMP-202A Introduction to Computing I Summer 2006 webct.mcgill.ca McGill University COMP-202A Introduction to Computing I Summer 2006 webct.mcgill.ca Time and Place * Days and Times: Tuesdays from 2:35-4:25 PM May 02 to May 12 ENGMC 11 Thursdays from 2:35-4:55 PM May

More information