Computer Organization, Eclipse Intro

Slides:



Advertisements
Similar presentations
Copyright © 2002 W. A. Tucker1 Chapter 1 Lecture Notes Bill Tucker Austin Community College COSC 1315.
Advertisements

Systems Software.
1 CS 106, Winter 2009 Class 4, Section 4 Slides by: Dr. Cynthia A. Brown, Instructor section 4: Dr. Herbert G. Mayer,
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design First Edition by Tony Gaddis.
CS 0008 Day 2 1. Today Hardware and Software How computers store data How a program works Operators, types, input Print function Running the debugger.
BY: SACHIN SHRIVASTAVA Operating System By : Sachin Shrivastava 1.
Introduction to Java Tonga Institute of Higher Education.
Parts of a Computer Why Use Binary Numbers? Source Code - Assembly - Machine Code.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
CHAPTER FOUR COMPUTER SOFTWARE.
What is a Computer? An, electrical machine, that can be programmed to accept data (input), process it into useful information (output) and store it away.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
Visual C++ Programming: Concepts and Projects
Invitation to Computer Science 5 th Edition Chapter 6 An Introduction to System Software and Virtual Machine s.
1 Lecture 2 : Computer System and Programming. Computer? a programmable machine that  Receives input  Stores and manipulates data  Provides output.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Computing System Fundamentals 3.1 Language Translators.
Chapter 4 Software. Chapter 4: Software Generations of Languages Each computer is wired to perform certain operations in response to an instruction. An.
INTRODUCTION TO JAVA AND ANDROID. Slide 2 Our Ecosystem Java Eclipse Android SDK.
The Development Process Compilation. Compilation - Dr. Craig A. Struble 2 Programming Process Problem Solving Phase We will spend significant time on.
Compilers and Interpreters
ITP 109 Week 2 Trina Gregory Introduction to Java.
Programming 2 Intro to Java Machine code Assembly languages Fortran Basic Pascal Scheme CC++ Java LISP Smalltalk Smalltalk-80.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
Chapter 1 Coding Introduction.
Dept of Computer Science University of Maryland College Park
Chapter Goals Describe the application development process and the role of methodologies, models, and tools Compare and contrast programming language generations.
Chapter 10 Application Development
Software Development Environment
Topic 2: Hardware and Software
What Do Computers Do? A computer system is
Java Programming: From the Ground Up
BASIC PROGRAMMING C SCP1103 (02)
Why don’t programmers have to program in machine code?
Dept of Computer Science University of Maryland College Park
String Comparison, Scanner
Introduction to Eclipse
Introduction to programming
Topics Introduction Hardware and Software How Computers Store Data
Dept of Computer Science University of Maryland College Park
CSCI-235 Micro-Computer Applications
Lecture 1: Introduction to JAVA
BASIC PROGRAMMING C SCP1103 (02)
Introduction
A (very brief) intro to Eclipse
Microprocessor and Assembly Language
Computer System and Programming
A451 Theory – 7 Programming 7A, B - Algorithms.
Chapter 2 First Java Programs
CHAPTER 1: Introduction to Computers and Programming
CSCI/CMPE 3334 Systems Programming
Programming COMP104: Fundamentals and Methodology Introduction.
TRANSLATORS AND IDEs Key Revision Points.
Translators & Facilities of Languages
Assembler, Compiler, Interpreter
Do you know this browser?...
Programming languages and software development
Chapter 1 Coding Introduction.
Topics Introduction Hardware and Software How Computers Store Data
Introduction to Micro Controllers & Embedded System Design
Chapter 1 Introduction(1.1)
Assembler, Compiler, Interpreter
Java Programming Introduction
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
Review of Previous Lesson
Programming Logic and Design Eighth Edition
Overview of Computer system
Presentation transcript:

Computer Organization, Eclipse Intro CMSC 131 Object-Oriented Programming I Computer Organization, Eclipse Intro Dept of Computer Science University of Maryland College Park This material is based on material provided by Ben Bederson, Bonnie Dorr, Fawzi Emad, David Mount, Jan Plane

Software Overview Two levels  Operating System and Application Operating system manages computer's resources; typically runs as soon as computer is turned on. Typical responsibilities: Process management Determines when, how programs will run on Memory management I/O, window system Security Applications  programs users interact directly with; usually are explicitly run. Examples: Word processors Games Music software Java Programs Etc Enough about hardware. Let's talk about software! SOFTWARE: 2 "levels" (operating system / applications) 1. operating system -- manages computer's resources. typically runs as soon as computer is turned on. * Process management -- determines which programs will run at what time and how much CPU time each gets * Memory management -- controls main memory and keeps programs from interfering with one another * I/O, window system, network control -- Programmers don't write this stuff from scratch. Programs we write call on the operating system to take care of the tricky details. * Security enforcement -- user ID's passwords, file security, etc. 2. Applications software: (anything else!) Word processors, games, spreadsheets, eclipse, everything

How Programs Are Executed foo.exe CPU COPY Program “foo” initially stored in secondary storage Program copied into main memory CPU executes program instruction-by-instruction Program execution: programs are stored permanently in SECONDARY MEMORY. the instructions are stored in "machine code" -- binary numbers (Nobody writes programs in machine code -- we use other languages which are typically translated into machine code by a "compiler".) when you start up a program, it is copied (loaded) into PRIMARY MEMORY. Now the CPU starts executing the instructions in the program.

Compilers Computers can only execute machine code Compilers are programs for translating programs (“source code”) into assembler / machine code compiler source asm/obj

Interpreters Another way to execute programs Interpreters take source code as input Interpreters execute source directly Much slower than compiled programs Debuggers are based on interpreters Debuggers support step-by-step execution of source code Internal behavior of program can be closely inspected Common interpreter? Javascript is most common current interpreter Try these in browser bar: Javascript:a=3 javascript:a=3;b=a+2 Javascript:alert(“Hello”)

Object-Oriented Terminology Procedural-oriented languages Programming centers around “actions” (verbs) Object Oriented Languages Centered around objects (nouns) Objects Principal entities that are manipulated by the program (nouns) Class A “blueprint”/recipe that defines the structure for one or more objects Method Java term for a “function”, a “procedure”, or a “subroutine” This is the code that does something (verbs) Why we prefer the object-oriented approach? One big reason: recycling

Tools for Writing Programs Good old days  Text Editor  create source code files Compiler  generate executables from source Debugger  trace programs to find errors Cycle between editing, compiling, running, debugging Today, IDE (Integrated Development Environment) Editor, compiler, debugger, version control rolled in one IDE Examples Eclipse  Free!! What we will use Visual Studio Netbeans Others

Eclipse Fundamentals Eclipse IDE allow us to create, edit, compile, run, debug, programs Eclipse can be used for several languages; in this class Java Eclipse installation http://www.cs.umd.edu/eclipse/install.html Eclipse tutorial http://www.cs.umd.edu/eclipse/

Eclipse Terminology Let’s run Eclipse Workspace  folder/directory where your files are stored You can switch workspaces Projects Project  collection of related files Creating a program in Eclipse requires creating a project Let’s create a project

Eclipse Terminology Perspective Framework for viewing/manipulation programs Three important perspectives Java  creating, running programs Debug  tracing, removing errors in programs CVS repository  accessing/managing project files Let’s change perspectives Resetting perspective Let’s create a program