announcements due dates extended: project 1b—wednesday by 10pm 1-1-1 rule thursday by 10pm lab...
TRANSCRIPT
![Page 1: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/1.jpg)
Announcements
Due dates extended:Project 1B—Wednesday by 10pm
1-1-1 rule Thursday by 10pmLab 5—Friday by 10pm
Next weekLabs 6/7—Tuesday by 10pm
04/20/23 D.A. Clements, MLIS, UW iSchool 1
![Page 2: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/2.jpg)
Announcements
Vocabulary for the week has been posted in GoPost
ReadingCh 18 for today and WednesdayCh 21 for Friday
04/20/23 D.A. Clements, MLIS, UW iSchool 2
![Page 3: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/3.jpg)
Programs Defined
A program is an algorithm written for a specific programming language and specific circumstances
D.A. Clements, MLIS, UW iSchool 304/20/23
![Page 4: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/4.jpg)
TYPES OF PROGRAMMING LANGUAGES
D.A. Clements, MLIS, UW iSchool 404/20/23
![Page 5: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/5.jpg)
High- vs. Low-Level Languages
04/20/23 D.A. Clements, MLIS, UW iSchool 5
HIGH-LEVEL Humans Understand
Fortran C, C++, C# JavaScript
High-Level Language
Assembly Language
Machine Language
LOW-LEVEL Computers Understand
![Page 6: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/6.jpg)
Human-Understandable Code
Today’s programs are written in “high-level” language (HLL) that we can understand (and debug)
HLL use “real” words—if, while, when, until, push, pop, print, set, etc. Words look like English Have a precisely defined meaning for the computer Make it easier for us to understand (and troubleshoot)
For example:
if (today==‘Wednesday’)print “I have lecture today!”
elseprint “Tonight is time to study!”
D.A. Clements, MLIS, UW iSchool 604/20/23
![Page 7: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/7.jpg)
Videos
High- and low-level programming languages
04/20/23 D.A. Clements, MLIS, UW iSchool 7
![Page 8: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/8.jpg)
Assembly language
The lowest level language humans can understand
ExampleLOOP: MOV.B r0, #80 ;initialize counter
04/20/23 D.A. Clements, MLIS, UW iSchool 8
![Page 9: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/9.jpg)
What computers understand
Machine codeAssembly code is translated to binary:
0011 0000 1000 0000Binary is how computer stores information
all zeroes and ones Magnetized or not Off or on Bumpy surface on the CD or not
04/20/23 D.A. Clements, MLIS, UW iSchool 9
![Page 10: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/10.jpg)
0110111000101110011101100111101100011001100111101101010111001110110011001000101110011101100111101100011001100111101101010111000010111001110110011110110001100110011110110101011100001011100111011001111011000110011001111011010101110000101110011101100111101100011001100111101101010111000010111001110110011110110001100110011110110101011100001011100111011001111011000110011001111011010101110000101110011101100111101100011001100111101101010111000110011001111
Machine code
04/20/23 D.A. Clements, MLIS, UW iSchool 10
![Page 11: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/11.jpg)
Translating human to machine
04/20/23 D.A. Clements, MLIS, UW iSchool 11
HIGH-LEVEL Humans Understand
Fortran C, C++, C# JavaScript
High-Level Language
Assembly Language
Machine Language
LOW-LEVEL Computers Understand
![Page 12: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/12.jpg)
Compiled Languages
Compiled languages are translated to machine code (assembly language) before they are run.
Whenever you make changes to your program, you have to recompile the program again.
Because they already speak the computer’s language, they run faster.
Sometimes, they run by themselves—.exe files (NotePad2.exe)—or run with an engine (the Java virtual engine).
D.A. Clements, MLIS, UW iSchool 1204/20/23
![Page 13: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/13.jpg)
Compiled Languages
Examples:JavaC familyVisual BasicCOBOLForTRANmany others
D.A. Clements, MLIS, UW iSchool 1304/20/23
![Page 14: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/14.jpg)
INTERPRETED LANGUAGESAlso called scripting languages
D.A. Clements, MLIS, UW iSchool 1404/20/23
![Page 15: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/15.jpg)
Interpreted Languages
An interpreter translates from JavaScript to machine language while the Web browser renders the page
The interpreter is part of the Web browser.The JavaScript interpreter is available in all
major Web browsers
D.A. Clements, MLIS, UW iSchool 1504/20/23
![Page 16: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/16.jpg)
How the Interpreter Works
The interpreter translates the script to machine language while the program runs!Two tasks at once—translating and running
the program!Scripts run slower than compiled programs
D.A. Clements, MLIS, UW iSchool 1604/20/23
![Page 17: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/17.jpg)
The Advantages…
Scripted languages are interpreted on the fly—while they are runningMake changes while the program is running!Provides a dynamic, responsive, and
interactive experience for the userScripts respond to user input
D.A. Clements, MLIS, UW iSchool 1704/20/23
![Page 18: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/18.jpg)
JAVASCRIPTAll about
D.A. Clements, MLIS, UW iSchool 1804/20/23
![Page 19: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/19.jpg)
JavaScript
Java was developed by Sun Microsystems and is seen on the Web mostly in Java Applets.
D.A. Clements, MLIS, UW iSchool 1904/20/23
JavaScript is not Java!
![Page 20: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/20.jpg)
Brief History of JavaScript
Released with Netscape Navigator in 1995. Ratified by the European Equipment
Manufacturer’s Association (ECMA) Result:
ECMAScript is the core spec for the JavaScript language
Netscape, MS, and the others try to conform to the spec
D.A. Clements, MLIS, UW iSchool 2004/20/23
![Page 21: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/21.jpg)
Divergence from standards….
Programmers call both JavaScript. Both comply differently with the standards
D.A. Clements, MLIS, UW iSchool 2104/20/23
Developer Name
Netscape (now Mozilla) JavaScript
Microsoft JScript
![Page 22: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/22.jpg)
Javascript & the Web
Adding interaction to a static HTML page
D.A. Clements
D.A. Clements, MLIS, UW iSchool 2204/20/23
![Page 23: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/23.jpg)
Objectives
Understand how JavaScript and HTML interact
Understand where to place JavaScripts on the HTML page
04/20/23 D.A. Clements, MLIS, UW iSchool 23
![Page 24: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/24.jpg)
Programming Concepts
Programming: Act of formulating an algorithm or program
Basic concepts have been developed over last 50 years to simplify common programming tasks
Concepts will be expressed in JavaScript
![Page 25: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/25.jpg)
The Web page
Without JavaScript the Web page is like a brick; it just sits there!
04/20/23 D.A. Clements, MLIS, UW iSchool 25
![Page 26: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/26.jpg)
Scripts
Client-side scripts Your Web browser on your
computer is the client
Server-side scripts Web server Database server File server
04/20/23 D.A. Clements, MLIS, UW iSchool 26
Client
Server
![Page 27: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/27.jpg)
Web browser and JavaScript
The major Web browsers have a built-in interpreter that parses JavaScriptParses: breaks into smaller pieces that can
be translated into machine code
04/20/23 D.A. Clements, MLIS, UW iSchool 27
![Page 28: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/28.jpg)
Placing JavaScripts on a Web page
Types of scripts: Body scriptsHeader scriptsExternal scripts
D.A. Clements, MLIS, UW iSchool 2804/20/23
![Page 29: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/29.jpg)
Body Script
<html> <head> <title>Name of Page</title> </head> <body> <script type=“text/javascript”>
//JavaScript goes here </script>
</body></html>
D.A. Clements, MLIS, UW iSchool 2904/20/23
![Page 30: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/30.jpg)
Header Script
<html> <head> <title>Name of Page</title> <script type=“text/javascript”
//JavaScript goes here </script>
</head> <body> Body content goes here </body></html>
D.A. Clements, MLIS, UW iSchool 3004/20/23
![Page 31: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/31.jpg)
Linking to External JavaScripts
Linked in the <head> src gives path to file and its name
<html> <head> <title>Name of Page</title> <script type=“text/javascript” src=“basic.js”></script> </head> <body> Body content goes here </body></html>
D.A. Clements, MLIS, UW iSchool 3104/20/23
![Page 32: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/32.jpg)
External JavaScripts
Make changes to scripts in one place
ReusableLink to
any page, every page, or many sites
D.A. Clements, MLIS, UW iSchool 3204/20/23
![Page 33: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/33.jpg)
Best Practice
Best practice to separate Content from Action from AppearancePut styles in external CSSPut scripts in external JavaScript filesLeave only the HTML markup and content
on the pageAccomplishing that goal takes more
experience….
04/20/23 33D.A. Clements, MLIS, UW iSchool
![Page 34: Announcements Due dates extended: Project 1B—Wednesday by 10pm 1-1-1 rule Thursday by 10pm Lab 5—Friday by 10pm Next week Labs 6/7—Tuesday by 10pm 11/19/2015D.A](https://reader036.vdocuments.net/reader036/viewer/2022070403/56649f2f5503460f94c4a23a/html5/thumbnails/34.jpg)
Summary
Understand how JavaScript and HTML interact
Understand where to place JavaScripts on the HTML page
04/20/23 D.A. Clements, MLIS, UW iSchool 34