SD1230 Unit 3 Under the Hood. Objectives During this unit, we will cover the following course objectives: – Describe how a computer program is compiled.

Slides:



Advertisements
Similar presentations
What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word processor), it must be given the instructions.
Advertisements

Unit 6 Desktop Applications
Introducing JavaScript
Javascript Introduction Norman White Material is from w3schools.com Go there to run examples interactively.
Working with JavaScript. 2 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page Working with Variables.
© 2009 Research In Motion Limited Methods of application development for mobile devices.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Introduction to Computers
V1.00 © 2009 Research In Motion Limited Introduction to Mobile Device Web Development Trainer name Date.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Development of mobile applications using PhoneGap and HTML 5
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
The Internet & The World Wide Web Notes
Systems Software Operating Systems.
SD1230 Unit 8 The Mobile Landscape. Course Objectives During this unit, we will cover the following course objectives: – Identify the characteristics.
Apps VS Mobile Websites Which is better?. Bizness Apps Survey Bizness Apps surveyed over 500 small business owners with both a mobile app and a mobile.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Lesson 4 Computer Software
1 I.Introduction to Algorithm and Programming Algoritma dan Pemrograman – Teknik Informatika UK Petra 2009.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
JavaScript CMPT 281. Outline Introduction to JavaScript Resources What is JavaScript? JavaScript in web pages.
Chapter Introduction to Computers and Programming 1.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Topics Introduction Hardware and Software How Computers Store Data
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 10 Database Performance Tuning and Query Optimization.
INTERNET APPLICATION DEVELOPMENT For More visit:
Open Web App. Purpose To explain Open Web Apps To explain Open Web Apps To demonstrate some opportunities for a small business with this technology To.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Data File Access API : Under the Hood Simon Horwith CTO Etrilogy Ltd.
Introduction to Computers
1 JavaScript in Context. Server-Side Programming.
XP Tutorial 10New Perspectives on Creating Web Pages with HTML, XHTML, and XML 1 Working with JavaScript Creating a Programmable Web Page for North Pole.
Introduction to Computer Systems and the Java Programming Language.
Fundamental Programming: Fundamental Programming K.Chinnasarn, Ph.D.
What does C store? >>A = [1 2 3] >>B = [1 1] >>[C,D]=meshgrid(A,B) c) a) d) b)
Principles of Software Development 1 Principles Of Software Design and Development Types of language / Choosing a language.
ECA 225 Applied Interactive Programming1 ECA 225 Applied Online Programming basics.
CSC318 – DYNAMIC WEB APPLICATION DEVELOPMENT BY: SITI NURBAYA ISMAIL FACULTY of COMPUTER and MATHEMATICAL SCIENCES.
XP Tutorial 8 Adding Interactivity with ActionScript.
Survey of Program Compilation and Execution Bangor High School Ali Shareef 2/28/06.
1 Software. 2 What is software ► Software is the term that we use for all the programs and data on a computer system. ► Two types of software ► Program.
IT ELECTIVE 2.  Web server Can refer to either the hardware (the computer) or the software (the computer application) that helps to deliver content that.
Discovering Computers 2008 Fundamentals Fourth Edition Discovering Computers 2008 Fundamentals Fourth Edition Chapter 1 Introduction to Computers.
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
XP Tutorial 10New Perspectives on HTML, XHTML, and DHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties.
Google Web Toolkit for Mobile Applications Development INGENUITY AT ITS BEST……………….
Microsoft Visual Basic 2015 CHAPTER ONE Introduction to Visual Basic 2015 Programming.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
Computer Systems Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
How does a computer works Hyoungshick Kim Department of Computer Science and Engineering College of Information and Communication Engineering Sungkyunkwan.
Chapter Goals Describe the application development process and the role of methodologies, models, and tools Compare and contrast programming language generations.
PHP using MySQL Database for Web Development (part II)
Computer Systems Nat 5 Computing Science
Computer Systems Nat 5 Computing Science
Unit 1 Evolution of Computing
Open Web App.
Java programming lecture one
Database Performance Tuning and Query Optimization
Chapter 4 Application Software
Software Programming J. Holvikivi 2014.
Use of Mathematics using Technology (Maltlab)
Lesson 9: GUI HTML Editors and Mobile Web Sites
A451: Computer Systems and Programming
Chapter 11 Database Performance Tuning and Query Optimization
JavaScript CS 4640 Programming Languages for Web Applications
1.3.7 High- and low-level languages and their translators
Running C# in the browser
JavaScript CS 4640 Programming Languages for Web Applications
Presentation transcript:

SD1230 Unit 3 Under the Hood

Objectives During this unit, we will cover the following course objectives: – Describe how a computer program is compiled or interpreted from scratch. – Describe the differences and similarities of desktop, website, and mobile technology. – Describe various ways in which programs and data are structured.

Learning Outcomes Completing this unit should help enable you to: – Identify typical computer languages with examples. – Explain the role of a compiler. – Explain how interpreted code differs from compiled code. – Identify application development platforms for desktop and mobile application development. – Describe how data is stored and accessed.

Learning Outcomes (cont.) – Explain how code is broken down. – Explain the implications of computer resources, including processor, memory, disk space, and network, for application design. – Identify the various operations that can be performed in a program. – Describe various techniques used to design an application.

Top-Down Processing How things used to be done All code is loaded into memory

Resource Consumption

Drawbacks to Top-Down Processing Hard to properly test code until it is finished Testing individual parts is difficult Hard to find bugs

Breaking Up Code Advantages: – It is easier to write small components. – You can test earlier and more often. – Debugging is easier. – Code reuse is possible. – You can add features more easily.

Run Code More Than Once Makes code smaller and more responsive Code is easier to read. Code is more flexible.

Calling the Code

How to Break Up Code Code is broken into two structures: – The statement – Function or procedure

Statements An instruction that does one of two things: – Do something – Wait

Examples of Statements

Multiple Statements

Functions Group statements into chunks

How Code Can Be Stored Paper punch cards Magnetic tape reels Magnetic cassettes Floppy disks Hard drives Networked systems CDs DVDs Flash drives Internet distribution

How Data Is Stored – Binary

File Size

Program Code Plain text (interpreted) – JavaScript – VBScript Compiled – Visual Basic – C++

Programming Process

Compiled Code

Operators Arithmetic Assignment Comparison Logical String

Arithmetic Operators OperatorDescriptionExampleResult +AdditionIf x = 6 X SubtractionIf x = 6 X – 2 4 *MultiplicationIf x = 6 X * 2 12 /DivisionIf x = 6 X / Increment (add one) If x = 6 X Decrement (subtract one) If x = 6 X -- 5 ÷Modulus (division remainder) 7÷2 10÷4 12÷

Assignment Operators OperatorExampleIs Equivalent to… =X = 6 X = Y X = 6 X = Y +=X += yX = X + Y -=X -= yX = X - Y *=X *= yX = X * Y /=X /= yX = X / Y ÷=X ÷= yX = X ÷ Y

Comparison Operators

Logical Operators OperatorDescriptionExample &&AndX = 7 Y = 2 (x 1) In English, the preceding states “X is less than 12, Y is greater than 1.” X = 7 Y = 2 (x < 12 && Y <1) returns false ||OrX = 6 Y = 1 (x == 6 || Y ==5) Returns true In English, the preceding states “X is equal to 5, and Y is equal to 5.” X = 6 Y = 1 (x == 5 || Y ==5) returns false X = 6 Y = 1 (x == 6 || Y ==1) returns true

Logical Operators OperatorDescriptionExample !NotX = 6 Y = 3 ! (X == Y) returns true In English, the preceding states “X is not equal to Y.” X = Y = ! (X == Y) returns false

String Operators

How Data Is Stored and Accessed Files Databases

Data is stored in tables. – Columns – Rows Helps reduce the amount of data stored by limiting repeated information Allows fast retrieval through queries

Types of Mobile Applications SMS Mobile websites Mobile Web widgets Mobile Web applications Native applications

SMS Messages Pros They work on any mobile device nearly instantaneously. They’re useful for sending timely alerts to the user. They can be incorporated into any Web or mobile application. They can be simple to set up and manage. Cons They’re limited to 160 characters. They provide a limited text- based experience. They can be very expensive.

Mobile Websites Pros They are easy to create, maintain, and publish. They can use all the same tools and techniques you might already use for desktop sites. Nearly all mobile devices can view mobile websites. Cons They can be difficult to support across multiple devices. They offer users a limited experience. Most mobile websites are simply desktop content reformatted for mobile devices. They can load pages slowly because of network latency.

Mobile Web Widgets Pros They are easy to create, using basic HTML, CSS, and JavaScript knowledge. They can be simple to deploy across multiple handsets. They offer an improved user experience and a richer design, tapping into device features and offline use. Cons They typically require a compatible widget platform to be installed on the device. They cannot run in any mobile Web browser. They require learning additional proprietary, non- Web-standard techniques.

Mobile Web Applications Pros They are easy to create, using basic HTML, CSS, and JavaScript knowledge. They are simple to deploy across multiple handsets. They offer a better user experience and a rich design, tapping into device features and offline use. Content is accessible on any mobile Web browser. Cons The optimal experience might not be available on all handsets. They can be challenging (but not impossible) to support across multiple devices. They don’t always support native application features, like offline mode, location lookup, file system access, camera, and so on.

Native Applications Pros They offer a best-in-class user experience, offering a rich design and tapping into device features and offline use. They are relatively simple to develop for a single platform. You can charge for applications. Cons Developing, testing, and supporting multiple device platforms is incredibly costly. They require certification and distribution from a third party that you have no control over. They require you to share revenue with one or more third parties.

Mobile Application Media Matrix

Application Context

Mobile Information Architecture

Guidelines Keep it simple. Limit opportunities for mistakes. Confirm the path by teasing content.

Site Maps

Clickstreams

Process Flow Diagram

Wireframes

Paper Prototypes

Summary In this unit, we covered the following topics: – Top-down processing – Statements – Functions – Interpreted vs. compiled code – Operators – Databases – Mobile application types – Designing for mobile

Source Fling, B. (2009). Mobile design and development: Practical techniques for creating mobile sites and Web apps. Sebastopol, CA: O’Reilly Media, Inc.