what is programming?

Download Report

Transcript what is programming?

TK 1914 : C++ Programming

Introduction to Programming

WHAT IS PROGRAMMING?

• Programming is a process of producing computer programs.

• A computer program contains instructions to a computer on how to perform a certain task.

• A program is written in a programming language. There are so many programming languages. Some examples: C, C++, Java. FTSM :: TK1914, 20112012

WHY LEARN PROGRAMMING?

• There are many reasons why one would want to learn programming. Among them: – Programming is an important skill needed to work in the IT industry.

– You can be creative through developing software.

• Creating software is one of the most creative activities that humans undertake. Through applying creativity, it is possible to create great software.

• Imagine the world without: – web browser, facebook – email – instant messaging FTSM :: TK1914, 20112012

WHY LEARN PROGRAMMING?

– sms – handphones – Windows, MacOSX, Linux, etc – You have the ability to customize or modify software to your needs.

– You can earn money doing software programming.

– Programming can be thrilling, challenging and fun.

FTSM :: TK1914, 20112012

PROCESS

• A programmer uses a programming language to write a program.

• The instructions contained in a program are normally readable by humans.

• However, they cannot be executed on a computer unless they are translated to machine code which is the native language of the computer.

• The process of translating instructions written by a human to machine code is called compiling.

FTSM :: TK1914, 20112012

PROCESS

• The set of instructions in a program written by a programmer is sometimes referred to as the program

source code

.

• The set of compiled instructions of a program is also referred to as the program's

executable code

. • A program's executable code can be run directly on a computer. FTSM :: TK1914, 20112012

PROCESS

program source code (e.g. in C++) compilation (e.g. using g++) program executable code execution (e.g. using g++) FTSM :: TK1914, 20112012

REALISTIC EXPECTATIONS

• Imagine a five-year old boy whose ambition is to become a famous writer. • How old is the boy when he could – memorize all the letters of the alphabet?

– spell words correctly?

– write sentences correctly?

– write a short composition?

– write a short story?

– write a novel?

– write a play? FTSM :: TK1914, 20112012

• Do not expect the programs that you are able to produce in this course to be of the same standard as that of the software you are familiar with.

– The programs that you write are console-based rather than GUI-based.

– What you will learn in this course are the fundamentals of programming.

– The programs that you are able to produce at the end of this course are comparable to a composition or a short story.

FTSM :: TK1914, 20112012

• Writing programs is like solving mathematical problems. – You become proficient in programming through lots of practice, not through memorizing facts.

– Make programming your hobby!

FTSM :: TK1914, 20112012

SAMPLE OF FINAL YEAR PROJECTS

FTSM :: TK1914, 20112012

Bluetooth-Based Attendance Taking System

• Developed by: Liong Kah Man, 2008 • Supervisor: Dr Sufian Idris.

• Description: – A system for taking attendance during lecture using bluetooth communication between students' and lecturer's mobile devices (handphones, PDA, etc).

– The system also includes a web-based component for uploading and accessing attendance data, producing reports, etc.

• Programming language used: Java. FTSM :: TK1914, 20112012

Take attendance using bluetooth-based mobile device Upload/Access attendance data, Produce report, etc FTSM :: TK1914, 20112012

Sample Screenshots

Mobile Component (Lecturer's Mobile Device) Main Menu List of Student Attendance FTSM :: TK1914, 20112012

Sample Screenshots

Web-Based Component Screen for Accessing Attendance Records for a Particular Class FTSM :: TK1914, 20112012

Bluetooth-Based Mobile Game: UNO

• Developed by: Low Yean Lee, 2008.

• Supervisor: Dr Sufian Idris • Description: – Enables a group of people to play the UNO game on their Java-enabled handphones with bluetooth capability.

• Programming language used: Java. FTSM :: TK1914, 20112012

Player (Master)

BLUETOOTH CONNECTION

Player (Slave) Player (Slave) Player (Slave) FTSM :: TK1914, 20112012

Sample Screenshots

Splash screen Starting Menu Main Playing Screen Hint Pop-up Winner Announcement Screen FTSM :: TK1914, 20112012

Sudoku: Mobile game application

• Developed by: Sam Pin Sang (A103482), 2008 • Supervisor: Pn. Marini • Description: – game application on portable wireless devices such as hand phone and Personal Digital Assistant (PDA).

• Programming language used: Java. • Tested on a Nokia 6630 hand phone.

FTSM :: TK1914, 20112012

Start the game

Sudoku: Mobile game application

Other options FTSM :: TK1914, 20112012

Sudoku: Mobile game application

Other options: FTSM :: TK1914, 20112012

PhotoDJ

• Developed by: Low Kok Siang (A108418), 2008 • Supervisor: Pn. Rodziah.

• Description: – A software to manipulate a photo: change color, etc.

• Programming language used: VB.NET FTSM :: TK1914, 20112012

SAMPLE OF COURSE PROJECTS

FTSM :: TK1914, 20112012

TR3423 PENGATURCARAAN DAN SIMULASI ROBOT

FTSM :: TK1914, 20112012

The robots are programmed using C++

FTSM :: TK1914, 20112012

TR2043 PENGATURCARAAN GRAFIK

FTSM :: TK1914, 20112012

Programming Language used: Java and Java2D

FTSM :: TK1914, 20112012

FTSM :: TK1914, 20112012

SUGGESTED READING (ROYO)

• Chapter 1: An overview of computers and programming languages – Brief overview of the history of computers – Elements of a computer system – The language of a computer – The evolution of programming languages FTSM :: TK1914, 20112012