Download Introduction

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Foundations of Programming and
Problem Solving
Introduction
Outlines
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Course overview
Teaching style
Assessment
Course information and support
About me
About you
What is a computer programming language?
Different programming languages
Machine code
Assembler
C
Java
PHP
Python
– What is Java?
Course overview
At the end of this course, you will be able to:
• Write, compile, debug, test and execute computer
programs using Java
• Use variables to store a program's state
• Process numbers with arithmetic operators
• Use loops and logic to control a program
• Define methods which process data
• I Define classes and use objects(may be!)
Teaching style
• Lectures (2 hours)
• Labs (2 hours)
Assessment
•
•
•
•
•
•
Programming assignment 1: 15%
Programming assignment 2: 15%
Programming assignment 3: 15%
Presentation: 10%
Problem solving assignment: 15%
Exam 30%
Course information and support
• Office hours (Monday 11am-12pm)
• Course material:
•
http://www.doc.gold.ac.uk/~mas01lo/course/2012-2013/foundation/lectures.html
• Or learn.gold
• The problem solving part will be in learn.gold
About me
•
•
•
•
•
Lahcen Ouarbya
Room 6, 29 st-james
Email: [email protected]
Website: www.doc.gold.ac.uk/~mas01lo
Tel: 020 7717 2263
About you
Turn to the person next to you and ask each
other the following questions:
•
•
•
•
•
•
Have you used a computer program before?
Which ones (name 2)?
Which problem(s) did you solve with the program?
What type of information did you work with?
What is a computer program?
Now tell the class what your partner said
What is a computer programming
language?
Again, in the same pairs, answer these
questions:
• Name a computer programming language
• Have you used a computer programming language
before?
• which ones?
• What have you used them for?
• What is a computer programming language?
• Now tell the class what your partner said
Different programming languages
•
•
•
•
•
•
Machine code
Assembler
C
Java
PHP
Python
Machine code
Assembler
Add $r1, $r2, $r3
Sub $r3, $r4, $r5
C
#include <stdio.h>
main(){
printf(Hello world!\\n);
}
Java
class Test {
static void main()
{
System.out.println(Hello world);
}
}
PHP
<?
echo ("Hello world!");
?>
Phyton
print("Hello world!")
Java
•
•
•
•
An object orientated programming language
A high level, human readable language
A cross platform language
'Write once, run anywhere'
Software Development Tools
• We will use a combination of the Dr Java IDE and
the Sun Java SDK
Graphical User Interface
Dr Java IDE
Edit
Build
Run
Source
File(s)
(.java)
Compiler
(javac)
Programmer
Class
File(s)
(.class)
Virtual
Machine
(java)
Program
executes
Parts of Sun Java SDK
18
Program Development Steps
• Classical “Waterfall” Development Steps
Edit and save
source code
Errors
Build source code
to create program
Errors
Run program and
evaluate results
19
Styles of User Interface
• Graphical User Interface (GUI)
– Computer displays a combination of text and
graphical symbols offering options to the user
– User manipulates mouse and uses keyboard to
select from the offered options (“hot keys”) or to
enter text
– More common now (computer power is cheap)
– Considered by most to be “user friendly”
– Examples: M/S Windows/Office or MAC O/S
20
Software Development Tools
• Using Sun Java SDK alone
Command Line Interface
Programmer
Editor
Source
File(s)
(.java)
Compiler
(javac)
Class
File(s)
(.class)
Virtual
Machine
(java)
Program
executes
Parts of Sun Java SDK
21
First Java Program
HelloWorld.java
public class HelloWorld {
public static void main(String args[])
{
System.out.println("Hello World");
}
}