introduction to computers & java
DESCRIPTION
Introduction to Computers & Java. Joe McCarthy. Outline. Introduction to Computers Introduction to Computer Programming Introduction to Java. Computers. Computer Hardware. Computer Hardware. Computer Software. Computer Software. - PowerPoint PPT PresentationTRANSCRIPT
Introduction to Computers & Java
CSS 161: Fundamentals of Computing
Joe McCarthy
1
Outline
• Introduction to Computers• Introduction to Computer Programming• Introduction to Java
CSS 161: Fundamentals of Computing 2
Computers
CSS 161: Fundamentals of Computing 3
Computer Hardware
CSS 161: Fundamentals of Computing 4
Computer Hardware
CSS 161: Fundamentals of Computing 5
Computer Software
CSS 161: Fundamentals of Computing 6
Computer Software
CSS 161: Fundamentals of Computing 7
CSS 161: Fundamentals of Computing
Note: program must be loaded into memory in order to execute
8
Computer Memory
CSS 161: Fundamentals of Computing 9
Computer Memory
CSS 161: Fundamentals of Computing
Alternate perspectives:
Key attributes: addressable / labeled locations that can store things
10
Computer Disk(s)
CSS 161: Fundamentals of Computing 11
Computer Disk(s)
CSS 161: Fundamentals of Computing
Alternate perspectives:
12
Hierarchy of Memory
CSS 161: Fundamentals of Computing
Variables?
[CSS 422 and CSS 430 go into much further depth]
13
Hierarchy of Memory
CSS 161: Fundamentals of Computing
Variables:• Speed• Cost• Size• Volatility
[CSS 422 and CSS 430 go into much further depth]
14
CSS 161: Fundamentals of Computing 15
Fundamentals of Computing
CSS 161: Fundamentals of Computing 16
Fundamentals of Computer Programming
CSS 161: Fundamentals of Computing 17
Fundamentals of Computer Programming
• What is a program?
CSS 161: Fundamentals of Computing 18
Fundamentals of Computer Programming
• What is a program?• What is programming?
CSS 161: Fundamentals of Computing 19
Fundamentals of Computer Programming
• What is a program?• What is programming?• What is a computer program?
CSS 161: Fundamentals of Computing 20
Fundamentals of Computer Programming
• What is a program?• What is programming?• What is a computer program?• What is computer programming?
CSS 161: Fundamentals of Computing 21
CSS 161: Fundamentals of Computing 22
CSS 161: Fundamentals of Computing
FirstProgram.java
FirstProgram.class
javac
java
23
CSS 161: Fundamentals of Computing 24
[In Mac OS X Terminal window]
CSS 161: Fundamentals of Computing 25
d-173-250-140-5:Code joe$ ls FirstProgram*FirstProgram.javad-173-250-140-5:Code joe$ javac FirstProgram.javad-173-250-140-5:Code joe$ ls FirstProgram*FirstProgram.class FirstProgram.javad-173-250-140-5:Code joe$ java FirstProgramHello reader.Welcome to Java.Let's demonstrate a simple calculation.2 plus 2 is 4d-173-250-140-5:Code joe$
[In Mac OS X Terminal window]
CSS 161: Fundamentals of Computing 26
d-173-250-140-5:Code joe$ ls FirstProgram*FirstProgram.javad-173-250-140-5:Code joe$ javac FirstProgram.javad-173-250-140-5:Code joe$ ls FirstProgram*FirstProgram.class FirstProgram.javad-173-250-140-5:Code joe$ java FirstProgramHello reader.Welcome to Java.Let's demonstrate a simple calculation.2 plus 2 is 4d-173-250-140-5:Code joe$
Program [only] computes 2 + 2 = 4.How can we make this more general?
CSS 161: Fundamentals of Computing 27
Java Programs
CSS 161: Fundamentals of Computing 28
CSS 161: Fundamentals of Computing 29
Java• Goal:– Write once, run anywhere– JDK: Java Developers Kit– JRE: Java Runtime Environment
• Editions– SE: Standard Edition– EE: Enterprise Edition– ME: Micro Edition (mobile, embedded)– Embedded: flash memory, closed systems
• Versions– 1.0 (1992), .. 1.6 (2006), 1.7 (2011)
CSS 161: Fundamentals of Computing 30
Downloading Java [optional]
• http://www.java.com/getjava/– Current: Version 7 update 7 (1.7u7)• On Mac, requires Mac OS X 10.7.3 or higher
– Can also use Version 6 update 35 (1.6u35)• http://www.java.com/en/download/manual_v6.jsp• Supported thru February 2013
• We will be writing (developing) Java code, so we want JDK– Which includes JRE
CSS 161: Fundamentals of Computing 31
CSS 161: Fundamentals of Computing 32
Integrated Development Environments
(IDEs)• Programming tools– Edit text (code) + compile + run– Graphical representations of components
• We’ll be using BlueJ, but you can use others
CSS 161: Fundamentals of Computing
netbeans.orgeclipse.orgbluej.org
33
Downloading BlueJ [optional]
CSS 161: Fundamentals of Computing
http://www.bluej.org/download/download.html
34
UWB CSS Labs
CSS 161: Fundamentals of Computing 35
http://www.uwb.edu/css/facilities
Next time (Wednesday)
• Get textbook• Read: – Absolute Java, Section 1.1-1.2– Java: An Introduction…, Sections 1.1-1.3• Recommended: Section 1.4
CSS 161: Fundamentals of Computing 36