/
Advanced Programming Advanced Programming

Advanced Programming - PowerPoint Presentation

lindy-dunigan
lindy-dunigan . @lindy-dunigan
Follow
370 views
Uploaded On 2018-01-16

Advanced Programming - PPT Presentation

in Java Peyman Dodangeh Sharif University of Technology Spring 2014 Agenda Introduction to Course Administrative Details Syllabus References Evaluation Policy Spring 2014 Sharif University of Technology ID: 623758

java sharif university technology sharif java technology university 2014 spring programming code problem oriented object class notes cont details

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Advanced Programming" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Advanced Programming in Java

Peyman

Dodangeh

Sharif University of Technology

Spring 2014Slide2

Agenda

Introduction to Course

Administrative Details

SyllabusReferencesEvaluation Policy

Spring 2014

Sharif University of Technology

2Slide3

Expected Background

“A one-semester college course in programming

.”

I assume you can write a program in some language, understand variables, control structures, functions/subroutines.If in doubt, let’s talk.Slide4

Evaluation Policy

Spring 2014

Sharif University of Technology

4

How many?

Total Grade

Quiz

8

4

Midterm Exam

1

3

Final Exam

1

5

Assignment

4

4

Project

2

4+Slide5

Administrative Details (cont.)

Our teaching assistant is Slide6

Administrative Details (cont.)

17

weeks

Two 80-minute lectures per week, a break in between the lectures.

Course notes in PowerPoint.Course notes available (usually)

Friday before class.Send course questions to Blackboard’s Discussion Group, personal questions to me.Slide7

Administrative Details (cont.)

Everything is attached to the syllabus. Don’t look for assignments, etc. on Blackboard. Look at the syllabus!

Homework usually weekly.

Printing slides? Three to a page, at least. Save a tree! Remove the PowerPoint background before printing. Save toner!Slide8

Administrative Details (cont.)

Attendance is not required, but…

…you are responsible for everything said in class.

I encourage you to ask questions in class. Don’t guess, ask a question!Slide9

My Policy on Cheating

Cheating means “submitting, without proper attribution, any computer code that is directly traceable to the computer code written by another person.”

I give students a failing

course grade for any

cheating. This doesn’t help your job prospects.Slide10

My Policy on Cheating

You may discuss homework problems with classmates, after you have made a serious effort in trying the homework on your own.

You can use ideas from the literature (with proper citation).

You can use anything from the textbook/notes.

The code you submit must be written completely by you.Slide11

Course Etiquette

Etiquette is “conduct in polite society”

No cell phones

No random comings and goingsIf you are sleepy, go home

If you want to read email or surf the Web, please do it elsewhereSlide12

This Course Covers:

Object Oriented Concepts

Fundamentals of Java

programming languageSome Programming SkillsSoftware Quality

TestRefactoring

Spring 2014

Sharif University of Technology

12Slide13

Object Oriented Programming

Problem Space

the place where the problem exists

such as a businessSolution Spacethe place where you’re implementing that solution

such as a computerThe effort required to perform this mapping.

E.g. think about a library, or a phonebook programName solution space entities.

Spring 2014

Sharif University of Technology

13Slide14

Object Oriented Approach

OOP lets the programmer represent problem space elements

The elements in the problem space

and their representations in the solution space

are referred to as “objects”

Spring 2014

Sharif University of Technology

14Slide15

OOP

The program is allowed to adapt itself to the lingo of the problem

by adding new types of objects

when you read the code, you’re reading words that also express the problem.

Spring 2014

Sharif University of Technology

15Slide16

OOP (2)

OOP allows you to describe the problem in terms of the problem

Rather than in terms of the computer

Objects in your code are similar to real objects

Recall the sample programs: phonebook and library

Spring 2014

Sharif University of Technology

16Slide17

Object Oriented Languages

Smalltalk

The first successful object-oriented language

One of the languages upon which Java is basedJava

C++C#

Spring 2014

Sharif University of Technology

17Slide18

Java History

Java

was created in 1991

by James Gosling in Sun MicrosystemsInitially called Oak

in honor of the tree outside Gosling's windowIts name was changed to Java because there was already a language called Oak.

Sun Microsystems released the first public implementation as Java 1.0 in 1995Java syntax is similar to C and C++.

Spring 2014

Sharif University of Technology

18Slide19

Java Motivation

The need for

platform independent

languageTo be embedded in various consumer electronic products like toasters and refrigerators

Platform independent?!HardwareOperating System

Spring 2014

Sharif University of Technology

19Slide20

Java Motivation (2)

At the same time, the World Wide Web and the Internet were gaining popularity.

Java could be used

for internet programming.Why?

Platform independenceCreation of Applets

Spring 2014

Sharif University of Technology

20Slide21

The Java technology is:

A

programming language

Java can create all kinds of applicationsA development environment

A compiler (javac)An interpreter (java)

A documentation generator (javadoc)

Compare it to C++

Spring 2014

Sharif University of Technology

21Slide22

High-Level Languages

Spring 2014

Sharif University of Technology

22Slide23

Java Virtual Machine

Spring 2014

Sharif University of Technology

23Slide24

Compile and Execution Stages

Compare to C++ and Assembly

.NET Framework

Spring 2014

Sharif University of Technology

24Slide25

Java is Popular

Some reports on programming languages popularity

According to

Job advertisementsBook sales

Finding code on the web…

Spring 2014

Sharif University of Technology

25Slide26

Spring 2014

Sharif University of Technology

26

http://www.langpop.com

updated in 2010Slide27

Spring 2014

Sharif University of Technology

27

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

(2012)Slide28

Characteristics of Java

Java is simple

Java is object-oriented

Java is architecture-neutralJava is portableJava is interpreted

Java is multithreadedJava is secureJava is robust

Spring 2014

Sharif University of Technology

28Slide29

First Example

Create a file named First.java

Java class files have .java extension

Note to naming conventionCopy this lines to the fileNote: File name and class name should be the same.

Fall 2011

Sharif University of Technology

29Slide30

Oracle, Sun, …

Spring 2014

Sharif University of Technology

30Slide31

Further Reading

Read Java page on Wikipedia

http://en.wikipedia.org/wiki/Java_(programming_language)

Google this terms and phrases:

Spring 2014

Sharif University of Technology

31

Java

Java Mobile

JVM

Byte code

Java Sun

Java and C++

Java and C#Slide32

Assignment # 0

Download and install JDK

http://

www.oracle.com/technetwork/java/javase/downloads/index.html

JDK 7Write a program that prints your name on the consoleCompile and run the program

Spring 2014

Sharif University of Technology

32Slide33

Course Outline

Let’s See The Syllabi.Slide34

Topics

Introduction to java language

Java syntax, operators, conditions, loops, …

Strings

ArraysObject Oriented ProgrammingInterface

InheritancePolymorphismSoftware Quality

Refactoring

Test

Advanced Java Programming

Exception Handling

Generics

Collections

GUI

Threads

Files and Streams

Networking

Reflection

Spring 2014

Sharif University of Technology

34Slide35

References

Java How to Program

Deitel & Deitel

9th Edition (6th

+ editions are ok)Thinking in Java Bruce

EckelFourth Edition

Spring 2014

Sharif University of Technology

35Slide36

Course Homepage

https://

ce.sharif.edu/courses

Lecture notes and reference books are uploaded here

Spring 2014

Sharif University of Technology

36Slide37

Spring 2014

Sharif University of Technology

37