Globale linker
Inet+
Tester
Braindumps
Chapter 3 - Development principles
- Define and explain Internet programming terminology
- Differentiate between client-side and server-side programming languages
- Differentiate between relation and nonrelational databases
- Describe the issues in integrating databases with Web sites
- Create HTML pages
- Identify common multimedia extensions and plug-ins
- Describe multimedia formats used in Web site design
- Describe prelaunch site and application function prototyping
Essential programming terms
- Application Programming Interface (API)
- An API defines how an application connects to a database
and passes commands.
- DB-library
Is provided primarily for backward compatibility. Support SQL Server 6.5, but not 7.0. - Object Linking and Embedding Database (OLE DB)
Data object interfaces and applications written using OLD DB can access a SQL server as well as other relational databases and other data sources. OLE DB is a Component Object Model (COM)-based data access interface. - Open Database Connectivity (ODBC)
Data object interfaces and applications written using OLD DB can access a SQL server as well as other relational databases. ODBC is a call-level interface that directly accesses the SQL Server Tabular Data Stream protocol.
- DB-library
- An API defines how an application connects to a database
and passes commands.
- Common Gateway Interface (CGI)
- CGI programming was designed to add functionality to web servers
with programs and logic that run on a request-by-request
basis. A CGI program can be an executable or a script
that is used to provide user-specified information;
handling formdata, guestbook. Drawbacks include slow
response. Advantage is that it is widely available.
A method of providing a connection between a web server and a server application.
- CGI programming was designed to add functionality to web servers
with programs and logic that run on a request-by-request
basis. A CGI program can be an executable or a script
that is used to provide user-specified information;
handling formdata, guestbook. Drawbacks include slow
response. Advantage is that it is widely available.
- Structured Query Language (SQL)
- SQL defines communication among relational database applications as well as defines basic SQL commands and keywords. Defines how data is organized in a database. SQL command statements let you create and manage databases.
- Thin clients
- A thin client runs in a web browser. An interface for connecting to a database.
Types of internet programming
The logical structure of compiled and interpreted programming languages are similar, so some types of code might look similar. See table pages 166-168 in the book.
- Compiled languages often have more features and
are designed for developing large-scale applications. Often
execute faster than interpreted languages, although they
must be compiled prior to execution. Compiling is a process
through which a computer-executable program (often called
a binary file) is created from the text (the source code)
for a specific architecture.
- C (structured)
- C++ (Object-oriented)
- Java (Object-oriented)
- Visual Basic (Object-based)
- Interpreted languages do not need to be compiled
in order to execute. Interpreted languages are executed
by an interpreter, which is a special program that must
be installed.
- Perl (structured)
- JScript/JavaScript (Object-based)
- VBScript (Object-based)
- Server-side programming executes in conjunction
with the Web server, acting on (or creating) the data stream
that is sent out to the Internet client. Benefits of server-side
programming include:
- Browser compatibility
Less network traffic
Better performance
Easier maintainability
Inability to view logic - C and C++
- A structured, procedural programming language. One of the most widely used programming languages. Efficient execution and code portability make C++ generally recognized as the language of choice for developing large-scale applications.
- Java
- Object-oriented, multithreaded language. Gets compiled into -class files, which can be executed client side within a browser or as an applet. Can also be executed server side either by the Web server or as a servlet Must have JVM (Java Virtual Machine) installed to run. Platform independent. Has a steep learning curve.
- Perl
- A script programming language. Often used for CGI.
- Visual Basic
- A programming environment from Microsoft. VB is the most popular language for developing applications for the Windows operating system and is increasingly used to create objects for Internet applications.
- Active Server Pages (ASP)
- ASP allows developers to utilize a Web server, such as IIS to manage communication with client applications, security issues and connection logging. ASP is compiled by IIS or another Web server. Regardless of the scripting language or components used in its code, its output to the client (browser) is plain HTML.
- CGI
- A method of providing a connection between a web server and a server application. Supports any browser. Can be used to create dynamic web page content from the server, or may act as a conduit for two-way communication between client and server, e.g. forms.
- Extensible Markup Language (XML)
- AS HTML, XML is based on SGML. However, where HTML allows you to use tags to define how a particular string of text should be displayed, XML allows you to use tags to define how data should be structured. See the CIW-departement for more on XML
- Browser compatibility
- Client-side programming executes at the the client,
most often in a browser. The primary advantage is to give
the client a faster response by executing minor functions
locally, rather than sending a request over the network.
Also reduces server load.
- JavaScript
- An object-based scripting language developed by Netscape. Platform independent.
- JScript
- Microsoft's implementation of JavaScript. Will not work in NS.
- VBScript
- A simplified version of Visual Basic. Often used with ASP. Will not work in NS.
- VRML
- Is not code that executes, it is a specification of metainformation, like all markup language tagging. VRML is a standard for specifying three-dimensional image information and possible interactions. Must have a browser plug-in to run.
- JavaScript
Database principles
A database represents an attempt to describe real-world values in a way that allows for easy storage, manipulation and retrieval. Data is stored in rows (records) and columns (fields).
Traditional nonrelational databases are seldom used in modern database applications. Think of a nonrelational database as an Excel-database where all the data is stored in one place. Each database operation requires moving the entire databasefile to the workstation running the application. Sharing data between different applications is difficult.
Relational databases stores multiple data tables in one file or multiple files. Relations are built/established between the different tables.
SQL is a data-definition and data-manipulation language for relational databases.
- Workstation databases are designed primarily for single-user access or limited shared access. E.g. Access.
- Network databases are designed to support multiple users, large amounts of data and the need for fast and reliable performance. E.g. SQL.
The decision to integrate a database into a website can be made whenever active or dynamic data is needed on the site, or the site needs to store information. This can be anything from personalization of a site to developing a full ecommerce site.
There are several different technologies which can be used to connect a site to backend databases:
- JSP
Java Server Pages. Java Server Pages are written using Java scripting language and processed using a Java Application Server. Using Java Databases Connectivity, JSP pages can connect to several different types of databases. - CFML
Cold Fusion Markup Language. CFML is used by ColdFusion, an application server platform. CFML also connects to several different types of databases. - ASP
Active Server Pages. A Microsoft technology which is tightly integrated into their servers, ASP allows easy scripting and connecting to databases on the NT platform. - PHP
- PHP is a free open source scripting language which allows easy integration of databases into a website.
HTML & CSS
HyperText Markup Language explained
Cascading Style Sheets explained.
Multimedia
Every web developer must consider browser compatibility issues when deciding on the use of new web technologies. Viewers of your site must either avoid new features or the must download and use the must up-to-date browser.
Causes of web browser incompatibility includes:
- A text only browser attempts to display a site not enabled or enhanced for text viewing.
- A browser does not support nonstandard web (proprietary) technology
- A browser does not support nonstandard (proprietary) HTML tags and extensions.
- A browser supports only older versions of HTML.
- A browser displays HTML differently than intended by the page's developer. This can occur by default or because of preferences the user sets on the browser.
Multimedia file formats:
- gif89a
A graphic format natively supported in most browsers. Can display up to 256 colors (8 bit), can be animated and can be transparent. Lossless compression. - png
Supports all of the popular features of gif, and includes better compression, improved interlacing, and advanced color control. Not fully supported in all browsers. - jpg
Supports up to 16,7 million colors (24 bit). Lossy compression. - tif
Used to transfer high-resolution photographic images in the printing and graphics industry. Not supported in browsers. - bmp
Developed by Microsoft to display graphics on Windows operating systems. Uncompressed. Not supported by browsers. - eps (encapsulated post script)
Used for printing documents on laser printers. Used in Desktop Publishing. Cannot be displayed in browsers. - pdf (Portable Document Format)
Developed by Adobe for screen and print. Must have Acrobat Reader plug-in installed to view in a browser. Platform independent. - wav
Standard for storing sound on Windows-based PCs. Non-streaming. The entire file must be downloaded before it can be played. Not compressed. - aiff (audio interchange file format)
Standard for storing sound on MACs. Not compressed, non streaming. - mp3
An audio compression format that produces very small, yet very high quality digital sound files. - mov
Apple's QuickTime video files. Have streaming capabilities. Natively supported on MACs, PCs need plug-in. - avi (audio video interleave)
Developed by Microsoft to compete with Apple's video standard. Non-streaming format. - mpeg (motion picture experts group)
Compressed video format. Generally produces better quality video than AVI or QuickTime. - asf (active streaming format)
Developed by Microsoft, expected to replace avi. Supports streaming multimedia files over the web. - ra
RealAudio and RealVideo are streaming audio and video that play well on the Internett. Requires plug-in. - swf
Shockwave/Flash. For multimedia presentations on the web. Requires plug-in. - qtvr (quicktime virtual reality)
Developed by Apple. Enables users to display and rotate 3D objects. Needs plug-in. - Windows Media Player
Can play virtually all common streaming and nonstreaming formats, including asf, realaudio and video, mpeg, avi, aif, wav and others.
Analysis and testing
Checking hot links - Before launching a site, a thorough review of the hot links and checking the hyperlinks for dead links and mistyped links should be performed. Visitors have short attention spans for sites with broken links.
Testing different browsers - You should also check your site in Internet Explorer & Netscape Navigator. You should preview your site in several different versions of the browsers, as different versions render the screen differently.
Testing for e-commerce site corruption - If you are running an e-commerce site, you should have a test version of the site available for reliability testing and run tests which look like actual customers using your site.
Load testing - You should also test the access to your site and the ability of your servers to handle volumes of visitors and customers. Software is available which runs scripted tests on your server and records how well your server handles the sample visitors.
Testing with various speed connections - Another test which should be run on your site is testing your site with various connections, including 28.8K, 33.6K, and 56.6K dialup, DSL, Cable Modem, ISDN, and T1. Testing your site with the various connections can show slow spots where a majority of customers (dialup) will experience.
NB!
With the help of JavaScript you can prevent your pages from being displayed inside another Web site's frameset. Your top-level document must check whether it is loaded into its own top or parent window. When a document is in its own top window, a reference to the top property of the current window is equal to a reference to the current window (self). If the two values are not equal, you can script your document to reload itself as a top-level document:
<script language="javascript">
if(top != self) {
top.location = location;
}
</script>
