Anda di halaman 1dari 25

1.

4 SOFTWARE DESCRIPTION ANDROID


Android is a Linux-based operating system for mobile devices such

as smart phones and tablet computers. It is developed by the Open Handset Alliance, led by Google. Google financially backed the initial developer of the software, Android Inc., and later purchased it in 2005. The unveiling of the Android distribution in 2007 was announced with the founding of the Open Handset Alliance, a consortium of 86 hardware, software, and telecommunication companies devoted to advancing open standards for mobile devices. Google releases the Android code as open-source, under the Apache License. The Android Open Source Project (AOSP) is tasked with the maintenance and further development of Android. Android is a robust software that includes an operating system, middleware and select applications. Developed and maintained as an open source project by Google, Android benefits by contributions from members of the Open handset Alliance (OHA), including ARM. Android has been designed and built for the ARM architecture, and continues to be the primary development platform of the OHA with hundreds of companies contributing to the Android on ARM codebase. One of the best sources for Android on ARM is directly from Googles own Android website. Android development on ARM falls into two categories; application development and OS porting to various ARM based SoCs and boards. There are two development kits for Android applications. The first is the SDK, or Software Development Kit, which is a Java development environment that produces applications intended to run in the Android Dalvik Java VM. The Dalvik runtime environment, heavily optimized for the ARM architecture,

including an ARM targeted Just-in-time (JIT) compiler, utilizes the latest ARMv7 architectural features. The second devevelopment kit is the NDK, or Native Development Kit. The NDK augments the SDK for the creation of native ARM code used in timing sensitive or performance critical applications.

ANDROID SOFTWRE STACK

Android has a large community of developers writing applications ("apps") that extend the functionality of the devices. Developers write primarily in a customized version of Java. Apps can be downloaded from third-party sites

or through online stores such as Google Play (formerly Android Market), the app store run by Google. In June 2012, there were more than 600,000 apps available for Android, and the estimated number of applications downloaded from Google Play was 20 billion. Android became the worlds leading smart phone platform at the end of 2010. For the first quarter of 2012, Android had a 59% smart phone market share worldwide. At the half of 2012, there were 400 million devices activated and 1 million activations per day. Analysts point to the advantage to Android of being a multi-channel, multi-carrier OS. Android gives you everything you need to build best-in-class app experiences. It gives you a single application model that lets you deploy your apps broadly to hundreds of millions of users across a wide range of devices from phones to tablets and beyond. Android also gives you tools for creating apps that look great and take advantage of the hardware capabilities available on each device. It automatically adapts your UI to look it's best on each device, while giving you as much control as you want over your UI on different device types. XML and the Java Platform Java API for XML Processing (JAXP) : In many ways, XML and the Java Platform are a partnership made in heaven. XML defines a cross platform data format and Java provides a standard cross platform programming platform. Together, XML and Java technologies allow programmers to apply Write Once, Run Anywhere fundamentals to the processing of data and documents generated by both Java based programs and non-Java based programs.

Foundation

Android, Inc. was founded in Palo Alto, California, United States in October 2003 by Andy Rubin (co-founder of Danger), Rich Miner (co-founder of Wildfire Communications, Inc.), Nick Sears and Chris White. At Google, the team led by Rubin developed a mobile device platform powered by the Linux kernel. Google marketed the platform to handset makers and carriers on the promise of providing a flexible, upgradable system. Google had lined up a series of hardware component and software partners and signaled to carriers that it was open to various degrees of cooperation on their part. On November 5, 2007, the Open Handset Alliance, a consortium of several companies unveiled itself. The goal of the Open Handset Alliance is to develop open standards for mobile devices. On the same day, the Open Handset Alliance also unveiled their first product, Android, a mobile device platform built on the Linux kernel version 2.6. Android Open Source Project The Android Open Source Project (AOSP) is led by Google, and is tasked with the maintenance and development of Android. According to the project "The goal of the Android Open Source Project is to create a successful realworld product that improves the mobile experience for end users."AOSP also maintains the Android Compatibility Program, defining an "Android compatible" device "as one that can run any application written by third-party developers using the Android SDK and NDK", to prevent incompatible Android implementations. The compatibility program is also optional and free of charge, with the Compatibility Test Suite also free and open-source. Version history Android has been updated frequently since the original release of "Astro", with each fixing bugs and adding new features. Each version is named in alphabetical order, with 1.5 "Cupcake" being the first named after adessert and every update since following this naming convention. List of Android version names:

Cupcake Donut Eclair Froyo Gingerbread Honeycomb Ice Cream Sandwich Jelly Bean Design Android consists of a kernel based on the Linux kernel 2.6,

with middleware, libraries and APIs written

in C and application

software

running on an application framework which includes Java-compatible libraries based on Apache Harmony. Android uses the Dalvik virtual machine with justin-time compilation to run Dalvik dex-code (Dalvik Executable), which is usually translated from Java bytecode. The main hardware platform for Android is the ARM architecture. There is support for x86 from the Android x86 project, and Google TV uses a special x86 version of Android. Linux Android's kernel is based on the Linux kernel and has further

architecture changes by Google outside the typical Linux kernel development cycle. Android does not have a native X Window System nor does it support the full set of standard GNU libraries, and this makes it difficult to port existing Linux applications or libraries to Android. Certain features that Google contributed back to the Linux kernel, notably a power management feature called wakelocks, were rejected by mainline kernel developers, partly because kernel maintainers felt that Google did not show any intent to maintain their own code.Even though Google announced in April 2010 that they would hire two employees to work with the

Linux kernel community, Greg Kroah-Hartman, the current Linux kernel maintainer for the -stable branch, said in December 2010 that he was concerned that Google was no longer trying to get their code changes included in mainstream Linux. Some Google Android developers hinted that "the Android team was getting fed up with the process", because they were a small team and had more urgent work to do on Android. However, in September 2010, Linux kernel developer Rafael J. Wysocki added a patch that improved the mainline Linux wakeup events framework. He said that Android device drivers that use wakelocks can now be easily merged into mainline Linux, but that Android's opportunistic suspend features should not be included in the mainline kernel. In August 2011, Linus Torvalds said that "eventually Android and Linux would come back to a common kernel, but it will probably not be for four to five years". In December 2011, Greg Kroah-Hartman announced the start of the Android Mainlining Project, which aims to put some Android drivers, patches and features back into the Linux kernel, starting in Linux 3.3. further integration being expected for Linux Kernel 3.4. Eclipse SDK Eclipse is a multi-language software development environment

comprising an integrated development environment (IDE) and an extensible plug-in system. It is written mostly in Java. It can be used to develop applications in Java and, by means of various plug-ins, other programming languages including Ada, C, C++, COBOL, Haskell, Perl, PHP, Python, R, Ruby (including Ruby on Rails framework), Scala, Clojure, Groovy and Scheme. It can also be used to develop packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others. The initial codebase originated from IBM VisualAge. The Eclipse SDK (which includes the Java development tools) is meant for Java developers. Users can

extend its abilities by installing plug-ins written for the Eclipse Platform, such as development toolkits for other programming languages, and can write and contribute their own plug-in modules. Released under the terms of the Eclipse Public License, Eclipse SDK is free and open source software. It was one of the first IDEs to run under GNU Classpath and it runs without issues under IcedTea. Features Handset layouts The platform is adaptable to larger, VGA, 2D graphics library, 3D graphics library based on OpenGL ES 2.0 specifications, and traditional smartphone layouts. Storage SQLite, a lightweight relational database, is used for data storage purposes. Connectivity Android supports connectivity technologies including GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, WiFi, LTE, NFC and WiMAX. Messaging SMS and MMS are available forms of messaging, including threaded text messaging and Android Cloud To Device Messaging (C2DM) and now enhanced version of C2DM, Android Google Cloud Messaging (GCM) is also a part of Android Push Messaging service. Multiple language support Android supports multiple languages.

Web browser

The web

browser

available in Android is based on engine, coupled with Chrome's V8

the openJavaScript

source WebKit layout Java support

engine. The browser scores 100/100 on the Acid3 test on Android 4.0.

While most Android applications are written in Java, there is no Java Virtual Machine in the platform and Java byte code is not executed. Java classes are compiled into Dalvik executables and run on Dalvik, a specialized virtual machine designed specifically for Android and optimized for battery-powered mobile devices with limited memory and CPU. J2ME support can be provided via third-party applications. Media support Android supports the following audio/video/still media formats: WebM, H.263, H.264 (in 3GP or MP4 container), MPEG-4 SP, AMR, AMR-WB (in 3GP container), AAC, HE-AAC(in MP4 or 3GP container), MP3, MIDI, Ogg Vorbis, FLAC, WAV, JPEG, PNG, GIF, BMP, WebP. Streaming media support RTP/RTSP streaming (3GPP PSS, ISMA), HTML progressive download (HTML5 <video> tag). Adobe Flash Streaming (RTMP) and HTTP Dynamic Streaming are supported by the Flash plugin. Apple HTTP Live Streaming is supported by RealPlayer for Android, and by the operating system in Android 3.0 (Honeycomb). Multi-touch Android has native support for multi-touch which was initially made available in handsets such as the HTC Hero. The feature was originally disabled at the kernel level (possibly to avoid infringing Apple's patents on touch-screen technology at the time). Google has since released an update for the Nexus One and the Motorola Droid which enables multitouch natively. Bluetooth

Supports A2DP, AVRCP, sending files (OPP), accessing the phone book (PBAP), voice dialing and sending contacts between phones. Keyboard, mouse and joystick (HID) support is available in Android 3.1+, and in earlier versions through manufacturer customizations and third-party applications. Video calling Android does not support native video calling, but some handsets have a customized version of the operating system that supports it, either via the UMTS network (like the Samsung Galaxy S) or over IP. Video calling through Google Talk is available in Android 2.3.4 and later. Gingerbread allows Nexus S to place Internet calls with a SIP account. This allows for enhanced VoIP dialing to other SIP accounts and even phone numbers. Skype 2.1 offers video calling in Android 2.3, including front camera support. Multitasking Multitasking of applications, with unique handling of memory allocation, is available. Voice based features Google search through voice has been available since initial release. Voice actions for calling, texting, navigation, etc. are supported on Android 2.2 onwards. Tethering Android supports tethering, which allows a phone to be used as a wireless/wired Wi-Fi hotspot. Before Android 2.2 this was supported by third-party applications or manufacturer customizations. Screen capture Android supports capturing a screenshot by pressing the power and volume-down buttons at the same time. Prior to Android 4.0, the only methods of capturing a screenshot were through manufacturer and third-party customizations or otherwise by using a PC connection (DDMS

developer's tool). These alternative methods are still available with the latest Android. External storage Most Android devices include microSD slot and can read microSD cards formatted with FAT32, Ext3 or Ext4 file system. To allow use of highcapacity storage media such as USB flash drives and USB HDDs, many Android tablets also include USB 'A' receptacle. Storage formatted with FAT32 is handled by Linux Kernel VFAT driver, while 3rd party solutions are required to handle other popular file systems such as NTFS, HFS Plus and exFAT. Applications Applications are usually developed in the Java language using

the Android Software Development Kit, but other development tools are available, including a Native Development Kitfor applications or extensions in C or C++, Google App Inventor, a visual environment for novice programmers and various cross platform mobile web applications frameworks. Applications can be acquired by end-users either through a store such as Google Play or the Amazon Appstore, or by downloading and installing the application's APK file from a third-party site.

JAVA
Java is a programming language originally developed by James Gosling at Sun Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives model and regardless much of its syntaxfrom C and C++ but Java has a are simpler object Machine (JVM) fewer low-level facilities. of computer applications is

typically compiled to bytecode (class file) that can run on any Java Virtual architecture. Java a generalpurpose, concurrent, class-based, object-oriented language that is specifically designed to have as few implementation dependencies as possible. It is

intended to let application developers "write once, run anywhere" (WORA), meaning that code that runs on one platform does not need to be recompiled to run on another. Java is as of 2012 one of the most popular programming languages in use, particularly for client-server web applications, with a reported 10 million users. The original and reference implementation Java compilers, virtual

machines, and class libraries were developed by Sun from 1995. As of May 2007, in compliance with the specifications of the Java Community Process, Sun relicensed most of its Java technologies under the GNU General Public License. Others have also developed alternative implementations of these Sun technologies, such as the GNU Compiler for Java and GNU Classpath. History James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991. Java was originally designed for interactive television, but it was too advanced for the digital cable television industry at the time. The language was initially called Oak after an oak tree that stood outside Gosling's office; it went by the name Green later, and was later renamed Java, from Java coffee, said to be consumed in large quantities by the language's creators. Gosling aimed to implement a virtual machine and a language that had a familiarC/C++ style of notation. Sun Microsystems released the first public implementation as Java 1.0 in 1995. It promised "Write Once, Run Anywhere" (WORA), providing no-cost run-times on popular platforms. Fairly secure and featuring configurable security, it allowed network- and file-access restrictions. Major web browsers soon incorporated the ability to run Java applets within web pages, and Java quickly became popular. With the advent of Java 2 (released initially as J2SE 1.2 in December 19981999), new versions had multiple configurations built for different types and of the platforms. greatly For example, J2EEtargeted enterprise mobile applications stripped-down version J2ME for

applications (Mobile Java). J2SE designated the Standard Edition. In 2006, for marketing purposes, Sun renamed new J2 versions as Java EE, Java ME, and Java SE, respectively. In 1997, Sun Microsystems approached the ISO/IEC JTC1 standards body and later the Ecma International to formalize Java, but it soon withdrew from the process. Java remains a de facto standard, controlled through the Java Community Process. At one time, Sun made most of its Java implementations available without charge, despite their proprietary software status. Sun generated revenue from Java through the selling of licenses for specialized products such as the Java Enterprise System. Sun distinguishes between its Software Development Kit (SDK) andRuntime Environment (JRE) (a subset of the SDK); the primary distinction involves the JRE's lack of the compiler, utility programs, and header files. Principles There were five primary goals in the creation of the Java language: 1. It should be "simple, object-oriented and familiar" 2. It should be "robust and secure" 3. It should be "architecture-neutral and portable" 4. It should execute with "high performance" 5. It should be "interpreted, threaded, and dynamic" Versions Major release versions of Java, along with their release dates:

JDK 1.0 (January 23, 1996) JDK 1.1 (February 19, 1997) J2SE 1.2 (December 8, 1998) J2SE 1.3 (May 8, 2000) J2SE 1.4 (February 6, 2002) J2SE 5.0 (September 30, 2004)

Java SE 6 (December 11, 2006) Java SE 7 (July 28, 2011)

Automatic memory management Java uses an automatic garbage collector to manage memory in

the object lifecycle. The programmer determines when objects are created, and the Java runtime is responsible for recovering the memory once objects are no longer in use. Once no references to an object remain, the unreachable memory becomes eligible to be freed automatically by the garbage collector. Something similar to a memory leak may still occur if a programmer's code holds a reference to an object that is no longer needed, typically when objects that are no longer needed are stored in containers that are still in use. If methods for a nonexistent object are called, a "null pointer exception" is thrown. One of the ideas behind Java's automatic memory management model is that programmers can be spared the burden of having to perform manual memory management. In some languages, memory for the creation of objects is implicitly allocated on the stack, or explicitly allocated and deallocated from the heap. In the latter case the responsibility of managing memory resides with the programmer. If the program does not deallocate an object, a memory leak occurs. If the program attempts to access or deallocate memory that has already been deallocated, the result is undefined and difficult to predict, and the program is likely to become unstable and/or crash. This can be partially remedied by the use of smart pointers, but these add overhead and complexity. Note that garbage collection does not prevent "logical" memory leaks, i.e. those where the memory is still referenced but never used. Garbage collection may happen at any time. Ideally, it will occur when a program is idle. It is guaranteed to be triggered if there is insufficient free memory on the heap to allocate a new object; this can cause a program to stall momentarily. Explicit memory management is not possible in Java.

Java does not support C/C++ style pointer arithmetic, where object addresses and unsigned integers (usually long integers) can be used interchangeably. This allows the garbage collector to relocate referenced objects and ensures type safety and security. Java contains multiple types of garbage collectors. By default, HotSpot uses the Concurrent Mark Sweep collector, also known as the CMS Garbage Collector. However, there are also several other garbage collectors that can be used to manage the Heap. For 90% of applications in Java, the CMS Garbage Collector is good enough. Java Virtual Machine The heart of the Java platform is the concept of a "virtual machine" that executes Java bytecode programs. This bytecode is the same no matter what hardware or operating system the program is running under. There is a JIT(Just In Time) compiler within the Java Virtual Machine, or JVM. The JIT compiler translates the Java bytecode into native processor instructions at run-time and caches the native code in memory during execution. The use of bytecode as an intermediate language permits Java programs to run on any platform that has a virtual machine available. The use of a JIT compiler means that Java applications, after a short delay during loading and once they have "warmed up" by being all or mostly JIT-compiled, tend to run about as fast as native programs. Since JRE version 1.2, Sun's JVM implementation has included a just-in-time compiler instead of an interpreter. Although Java programs are cross-platform or platform independent, the code of the Java Virtual Machines (JVM) that execute these programs is not. Every supported operating platform has its own JVM.

Usages Desktop use According to Oracle, the Java Runtime Environment is found on over 850 million PCs. Microsoft has not bundled a Java Runtime Environment (JRE) with its operating systemssince Sun Microsystems sued Microsoft for adding Windows-specific classes to the bundled Java runtime environment, and for making the new classes available through Visual J++. Some Java applications are in fairly widespread desktop use, including the NetBeans and Eclipse integrated development environments, and file sharing clients such as LimeWireand Vuze. Java provides cross platform user interface for some high end collaborative applications like Lotus Notes. Mobile devices Java ME has become popular in mobile devices, where it competes with Symbian, BREW, and the .NET Compact Framework. The diversity of mobile phone manufacturers has led to a need for new unified standards so programs can run on phones from different suppliers MIDP. The first standard was MIDP 1, which assumed a small screen size, no access to audio, and a 32kB program limit. The more recent MIDP 2 allows access to audio, and up to 64kB for the program size. With handset designs improving more rapidly than the standards, some manufacturers relax some limitations in the standards, for example, maximum program size. Google's Android operating system uses the Java language, but not its class libraries, therefore the Android platform cannot be called Java. Android executes the code on the Dalvik VM instead of the Java VM. Web server and enterprise use The Java platform has become a mainstay of enterprise IT development since the introduction of the Enterprise Edition in 1998, in two different ways:

Through the coupling of Java to the web server, the Java platform has become a leading platform for integrating the Web with enterprise backend systems. This has allowed companies to move part or all of their business to the Internet environment by way of highly interactive online environments (such as highly dynamic websites) that allow the customer direct access to the business processes (e.g. online banking websites, airline booking systems and so on). This trend has continued from its initial Web-based start:

The Java platform has become the main development platform for many software tools and platforms that are produced by third-party software groups (commercial, open source and hybrid) and are used as configurable (rather than programmable) tools by companies. Examples in this category include Web servers, application servers, databases, enterprise service buses, business process management (BPM) tools and content management systems.

DATABASE DESIGN
Database design forms an important part of every project. The management of data involves both the definition of structure for the storage of information and provision of mechanisms for manipulation of information. The database system must provide safety for the information stored; despite system crashes or attempts of unauthorized access the database used in this project is SQLite. About SQLite SQLite is a relational database management system contained in a small (~275 kB) C programming library. In contrast to other database management systems, SQLite is not a separate process that is accessed from the client application, but an integral part of it.

SQLite is ACID-compliant and implements most of the SQL standard, using a dynamically and weakly typed SQL syntax that does not guarantee the domain integrity. SQLite is a popular choice as embedded database for local/client storage in application software such as web browsers. It is arguably the most widely deployed database engine, as it is used today by several widespread browsers, operating systems, and embedded systems, among others. SQLite has many bindings to programming languages. Design Unlike clientserver database management systems, the SQLite engine has no tandalone processes with which the application program communicates. Instead, the SQLite libraryis linked in and thus becomes an integral part of the application program. The library can also be called dynamically. The application program uses SQLite's functionality through simple function calls, which reduce latency in database access: function calls within a single process are more efficient than inter-process communication. SQLite stores the entire database (definitions, tables, indices, and the data itself) as a single cross-platform file on a host machine. It implements this simple design by locking the entire database file during writing. SQLite read operations can be multitasked, though writes can only be performed sequentially. History D. Richard Hipp designed SQLite in the spring of 2000 while working for General Dynamics on contract with the United States Navy. Hipp was designing software used on boardguided missile destroyer ships, which were originally based on HP-UX with an IBM Informix database back-end. The design goals of SQLite were to allow the program to be operated without installing a database management system or administration. In August 2000, version 1.0 of SQLite was released, based on gdbm (GNU Database Manager).

SQLite 2.0 replaced gdbm with a custom B-tree implementation, adding support for transactions. SQLite 3.0, partially funded by America Online, added internationalization, manifest typing, and other major improvements. In 2011 Hipp announced his plans to add an UnQL interface to SQLite databases database. Features SQLite implements most of the SQL-92 standard for SQL but it lacks some features. For example it has partial support for triggers, and it can't write to views (however it supports INSTEAD OF triggers that provide this functionality). While it supports complex queries, it still has limited ALTER TABLE support, as it can't modify or delete columns. SQLite uses an unusual type system for a SQL-compatible DBMS. Instead of assigning a type to a column as in most SQL database systems, types are assigned to individual values; in language terms it is dynamically typed. Moreover, it is weakly typed in some of the same ways that Perl is: one can insert a string into an integer column (although SQLite will try to convert the string to an integer first, if the column's preferred type is integer). This adds flexibility to columns, especially when bound to a dynamically typed scripting language. However, the technique is not portable to other SQL products. A common criticism is that SQLite's type system lacks the data integrity mechanism provided by statically typed columns in other products. Several computer processes or threads may access the same database concurrently. Several read accesses can be satisfied in parallel. A write access can only be satisfied if no other accesses are currently being serviced. Otherwise, the write access fails with an error code (or can automatically be retried until a configurable timeout expires). This concurrent access situation would change when dealing with temporary and to develop UnQLite, an embeddable document-oriented

tables. This restriction is relaxed in version 3.7 when WAL is turned on enabling concurrent reads and writes. A standalone program called sqlite3 is provided that can be used to create a database, define tables within it, insert and change rows, run queries and manage a SQLite database file. This program is a single executable file on the host machine. It also serves as an example for writing applications that use the SQLite library. SQLite is a popular choice for local/client SQL storage within a web browser and within a rich internet application framework;most notably the leaders in this area embed SQLite. SQLite full Unicode support is optional. SQLite also has bindings for a large number of programming languages, including BASIC, C, C++, Clipper//Harbour, Common Lisp, C#, Curl, D, Delphi, Free Pascal, Haskell, Java,Livecode, Lua, newLisp, Objective-C (on Mac , Scheme, Smalltalk, Tcl, Visual An ADO.NET adapter, maintained by Christian jointly initially with the Basic, developed SQLite ODBC by Robert developers driver is the OS X and iOS), OCaml, Perl, PHP, Pike, Python, REBOL, R, REALbasic, Ruby andJavaScript. Simpson, since is April

2010. An ODBC driver has been developed and is maintained separately Werner. Werner's recommend connection method for accessing SQLite from OpenOffice. There is also a COM (ActiveX) wrapper making SQLite accessible on Windows to scripted languages such as JScript and VBScript. This adds database capabilities to HTML Applications(HTA).

About PHP
Rasmus Lerdorf Software Engineer, Apache team member, and international man of mysteryis the creator and original driving force behind PHP. PHP is the Web development language written by and for Web developers.PHP stands for Hypertext Preprocessor. The product was originally named Personal Home Page Tools. But as it expanded in scope, a new and more appropriate name was selected by community vote. PHP is currently in its fifth major rewrite, called PHP5 or just plain PHP. PHP is a server-side scripting language, which can be embedded in HTML or used as a standalone binary. Proprietary products in this niche are Microsofts Active Server Pages, Macromedias ColdFusion, and Suns Java Server Pages. Some tech journalists used to call PHP the open source ASP because its functionality is similar to that of the Microsoft productalthough this formulation was misleading, as PHP ASP was developed before. Server-side scripting is a collection of super-HTML tags or small programs that run inside your Web pagesexcept on the server side, before they get sent to the browser. For example, you can use PHP to add common headers and footers to all the pages on a site or to store form-submitted data in a database. PHP is an official module of Apache HTTP Server, the marketleading free Web server that runs about 67 percent of the World Wide Web. This means that the PHP scripting engine can be built into the Web server itself, leading to faster processing, more efficient memory allocation, and greatly simplified maintenance. Like Apache Server, PHP is fully crossplatform, meaning it runs native on several flavors of UNIX, as well as on Windows and now on Mac OS X. All projects under the aegis of the Apache Software Foundationincluding PHPare open source software. Features of PHP Cost is low

PHP is an open source software PHP is easy to learn PHP is embedded within HTML The HTML- Embeddedness of PHP has many helpful consequences: PHP can quickly be added to code produced by WYSIWYG editors. PHP lends itself to a division of labor between designers and script writers. Every line of HTML does not need to be rewritten in a programming language. PHP can reduce labor costs and increase efficiency due to its shallow learning curve and ease of use. PHP has Cross-platform compatibility PHP is not tag-based PHP is stable means The software doesnt change radically and

incompatibly from release to release. The server doesnt need to be rebooted often

PHP is much faster for almost every use than CGI scripts PHP makes it easy to communicate with other programs and protocols PHP is fast becoming one of the most popular choices for so-called two-tier development PHP is developed and supported in a collaborative fashion by a worldwide community of users

Hyper Text Transfer Protocol (HTTP) HTTP is the protocol spoken by Web servers. Client programs that can speak HTTP, are known as browsers, are used by the people on the Internet to

connect to HTTP servers. These servers provide access to distributed hyper linked documents, applications and databases. HTTP is a stateless, object oriented application level protocol that has been in the existence since the early days of the WWW. NSCA HTTP is a HTTP/1.0 compliant Web Server and is credited with being one of the first HTTP servers available. It supports multiple schemes of authentication. Html The Frame Work For WebPages Hypertext Markup Language (HTML) is the text markup language on the World Wide Web. The markup commands applied to the web based content tell the browser software the structure of document and, when appropriate, how we want the content to be displayed. It has a well defined syntax and HTML documents have a formal structure. With the introduction of scripting languages such as JavaScript, the concept of dynamic HTML (DHTML) is becoming more and more popular and is used to create highly interactive web pages. When browser reads a document that has HTML markup in it, it determines how to render it on screen by considering the html elements embedded within the document.

DATABASE MANAGEMENT SYSTEM (DBMS)


A Database is defined as a collection of interrelated data, stored together without necessary redundancy to serve multiple applications. It can be defined as a large, interrelated, shared pool of information in a form that is suitable for handling by a computer. The data are stored so that they are independent of programs that use the data. A common and controlled method is followed for manipulating the data in the database.

About MySQL

MySQL is a fast, easy-to-use RDBMS used being used for many small and big businesses. MySQL is developed, marketed, and supported by MySQL AB, which is a Swedish company. MySQL (pronounced My Ess Q El) is an open source, SQL Relational Database Management System (RDBMS) that is free for many uses (more detail on that later). Early in its history, MySQL occasionally faced opposition due to its lack of support for some core SQL constructs such as sub selects and foreign keys. Ultimately, however, MySQL found a broad, enthusiastic user base for its liberal licensing terms, perky performance, and ease of use. Its acceptance was aided in part by the wide variety of other technologies such as PHP, Java, Perl, Python, and the like that have encouraged its use through stable, well-documented modules and Extensions. MySQL has not failed to reward the loyalty of these users with the addition of both sub selects and foreign keys. A database system is an overall collection of different database software components and database containing the parts viz. Database application programs, front-end components, Database Management Systems, and Databases. A database system must provide following features, A variety of user interfaces. Physical data independence. Logical data independence. Query optimization. Data integrity. Concurrency control. Backup and recovery. Security and authorization.

MySQL is becoming so popular because of many good reasons.

MySQL is released under an open-source license. So you have nothing to pay to use it.

MySQL is a very powerful program in its own right. It handles a large subset of the functionality of the most expensive and powerful database packages.

MySQL uses a standard form of the well-known SQL data language. MySQL works on many operating systems and with many languages including PHP, PERL, C, C++, JAVA etc.

MySQL works very quickly and works well even with large data sets. MySQL is very friendly to PHP, the most appreciated language for web development.

MySQL supports large databases, up to 50 million rows or more in a table. The default file size limit for a table is 4GB, but you can increase this (if your operating system can handle it) to a theoretical limit of 8 million terabytes (TB).

MySQL is customizable. The open source GPL license allows programmers to modify the MySQL software to fit their own specific environments.

Anda mungkin juga menyukai