You are on page 1of 28

PROGRAMMING

Lecture 1

Sushil Paudel

erspaudel 1
WELCOME

Welcome to Informatics College Pokhara

London Metropolitan University

erspaudel 2
MODULE LEADER

• Sushil Paudel
• Masters in Computer Engineering, NCIT
• Bachelors in Computer Engineering, NEC

• Lecturer – Informatics College Pokhara


• Former Lecturer - Mount Annapurna Campus
• Former Tutor - New Horizons CLC

• Founder & CEO – Foodmood


• Founder & CTO - Kandhani Information Technologies
• Former Java Developer - Smart Data Solutions
• Former Developer – VolcusSoft
• Former Developer BusSewa
erspaudel 3
CLASS RULES

• Enter the classroom in time.

• Switch off your mobile phones or keep it in silent mode

• Don’t use laptops during lecture.

• Maintain discipline inside the class.

• If you have any questions, raise your hand once I finish the
slide.

erspaudel 4
COURSE INFORMATION

• To gain and demonstrate a sound knowledge of


programming principles.

• Apply object-oriented concepts to solve programming


problems.

• To be able to implement a (small) software system in Java.

erspaudel 5
COURSE SETUP

• 28 lectures.

• Each lecture will be followed by a tutorial and a workshop.

• Tutorial classes will be interactive classes where students must


have gone through the lecture slide.

• Tutorial classes will prepare you for workshop.

• Bring your laptop in tutorial and workshop classes.

erspaudel 6
ASSESSMENTS

• Weekly assignments (10%)

• Coursework 1 (25%) – online submission, 12th week

• Coursework 2 (25%) – online submission, 24th week

• Practical Exam (40%) – Multiple choice test, 1.5 hours – 31st


week

erspaudel 7
ASSIGNMENT RULES

• Individual tutorial/coursework.

• Missed deadlines will be dealt very severely.

• We take plagiarism very seriously so exchange ideas not


solutions.

• Any student found copying part of a program or have


someone else do it for them( friends, colleagues, relatives or
hired personnel) and unable to defend on VIVA will fail the
assignment.

erspaudel 8
LANGUAGE

erspaudel 9
LANGUAGE

• Language has been our primary mean of communication.

• We humans communicate with different languages.

• But how the computers communicate..? Do they use english,


Nepali, Hindi, French, etc .., to communicate…? Absolutely a
big NO .

• Your application is reacting to the mouse and keyboard or even


the mic, it can read files from your disk storage and so on.

• But at the end, the machine understands nothing but bits, 1s,
and 0s, the combination of which creates meaning.

erspaudel 10
LANGUAGE

• It knows only 0′s and 1′s.

• Instructions given to the computer in 0’s and 1’s is known


as binary language( also known as machine language).

• Then, as the programmers found writing code in binary


language seems to be difficult, then they used a English like
words to write a program. This language is known as assembly
language.

• The programming languages which are machine independent


and are written in a English language is known as the high level
languages . Some of the examples of high level language are
c, c++, python, java…etc

erspaudel 11
PROGRAMMING LANGUAGE

• A programming language is a set of commands, instructions,


and other syntax use to create a software program.

• Languages that programmers use to write code are called


"high-level languages.”

• Thus, programming language is the medium of communication


between you (a person) and a computer system.

• It is the set of some instructions written in a specific style


(coding) to instruct the computer to do some specific task.

erspaudel 12
PROGRAMMING LANGUAGE

erspaudel 13
PROGRAMMING LANGUAGE

erspaudel 14
SOFTWARE DESIGN

• If you wanted to build a house, it is unlikely that you would start


by gathering the materials and cementing bricks, window
frames and doors together.

• It is more likely that you would decide what you wanted in the
house and draw up plans of how it would look and how it
would be put together.

• In other words, you would first formulate your requirements and


then produce a design; only then would you be in a position to
start building.

erspaudel 15
SOFTWARE DESIGN

• We go through a similar process when developing software.

• We gather requirements, produce a design that meets those


requirements and then write programs according to the design.

• There are two main design methods in use today: the structured
approach and the object-oriented approach.

erspaudel 16
PROGRAMMING LANGUAGE

erspaudel 17
JAVA

erspaudel 18
JAVA

• Introduction
• Why Java?
• Java Terminology (JDK, JRE and JVM)
• Features of Java
• Writing a first Java program

erspaudel 19
INTRODUCTION

• Java is a popular programming language, created in 1995.


• It is owned by Oracle, and more than 3 billion devices run
Java.
• It is used for:
• Mobile applications (specially Android apps)
• Desktop applications
• Web applications
• Games
• And much, much more!

erspaudel 20
WHY JAVA?

• Java works on different platforms (Windows, Mac, Linux, etc.)


• It is one of the most popular programming language in the
world
• It is easy to learn and simple to use
• It is open-source and free
• It is secure, fast and powerful
• It has a huge community support (tens of millions of
developers)

erspaudel 21
JAVA TERMINOLOGY

Java Development Kit (JDK)

• JDK is a software development environment used for


developing Java applications and applets.
• It includes the Java Runtime Environment (JRE), an
interpreter/loader (java), a compiler (javac), an archiver
(jar), a documentation generator (javadoc) and other tools
needed in Java development.

erspaudel 22
JAVA TERMINOLOGY

Java Runtime Environment (JRE)

• JRE is a part of JDK which means that JDK includes JRE.


• When you have JRE installed on your system, you can run a
java program however you won’t be able to compile it.
• JRE includes JVM, browser plugins and applets support.
• When you only need to run a java program on your
computer, you would only need JRE.

erspaudel 23
JAVA TERMINOLOGY

Java Virtual Machine (JVM)

• JVM is the runtime engine of the Java Platform, which


allows any program written in Java or other language
compiled into Java bytecode to run on any computer.

• JVM executes the bytecode generated by compiler.

erspaudel 24
JAVA TERMINOLOGY

erspaudel 25
FEATURES OF JAVA

• Object Oriented
• Robust
• Multithreaded
• Platform Independent
• High Performance
• Secure

erspaudel 26
PREREQUISITES

• JDK
• Blue J
• Classpath setting

erspaudel 27
FIRST JAVA PROGRAM

class MyFirstJavaProgram {

public static void main(String[] args) {


System.out.println("Hello World");
}
}

erspaudel 28

You might also like