Thursday, April 10, 2008

Introduction to Programming (Java)

3.3 Technologies in J2ME

  • Mobile Information Device Profile (MIDP) is one of two configurations that make up the Java runtime environment for resource-constrained mobile information devices. MIDP provides the core application functionality, including the user interface, network connectivity, local data storage, and application life cycle management.

  • Connected Device Configuration (CDC) is a standards-based framework for building and delivering applications that can be shared across a range of network-connected consumer and embedded devices.

  • Mobile 3D Graphics API for J2ME (M3G) is a lightweight, interactive 3D graphics API that sits alongside J2ME and MIDP as an optional package.

Introduction to Programming (Java)

3. 2 Technologies in J2EE

  • Enterprise JavaBeans (EJB) technology uses a component model to simplify the development of middleware applications with automatic support for services such as transactions, security, and database connectivity.

  • Portlet Specification defines a set of APIs for Java portal computing, addressing the areas of aggregation, personalization, presentation, and security.

  • JavaMail is an API that provides a set of abstract classes that model a mail system.

  • Java Message Service (JMS) is an API that enables the development of portable, message-based applications for the Java platform by defining a common set of messaging concepts and programming strategies for all JMS technology-compliant messaging systems.

  • JavaServer Faces (JSF) provides a programming model that helps developers craft Web applications by assembling reusable UI components in a page, connecting these components to an application data source, and wiring client-generated events to server-side event handlers.

  • JavaServer Pages (JSP) lets Web developers rapidly develop and easily maintain dynamic, platform-independent Web pages with separate user interfaces and content generation so designers can change the page layout without altering the dynamic content. The technology uses XML-like tags that encapsulate the logic that generates the content for the page.

  • Standard Tag Library for JavaServer Pages (JSTL) is a collection of custom tags that enable many common Web site functions in a standardized format.

  • Java Servlets extend and enhance the reach of Web servers by providing a component-based, platform-independent method for building Web-based applications without the performance limitations of CGI programs.

  • J2EE Connector Architecture (JCA) defines a standard architecture for connecting J2EE platforms to heterogeneous Enterprise Information Systems (EIS) by defining a set of scalable, secure, and transactional mechanisms, enabling an EIS vendor to provide a standard resource adapter that plugs into an application server.

  • J2EE Management Specification (JMX) defines a management information model for the J2EE platform. The J2EE Management Model is designed to be interoperable with many management systems and protocols and includes standard mappings of the model to the Common Information Model (CIM), an SNMP Management Information Base (MIB), and to the Java object model through a server resident EJB component, the J2EE Management EJB Component (MEJB).

  • Java Transaction API (JTA) is a high-level, implementation- and protocol-independent API that lets applications and application servers access transactions. Java Transaction Service (JTS) specifies the implementation of a Transaction Manager that supports JTA and implements the Java mapping of the OMG Object Transaction Service (OTS) 1.1 specification at the level below the API. JTS propagates transactions using the Internet Inter-ORB Protocol (IIOP).

Introduction to Programming (Java)

3.1 Technologies in Java SE
  • Java Foundation Classes (Swing) (JFC) is a set of Java class libraries that support building GUIs and graphics functionality for Java-based client applications.

  • JavaHelp is a platform-independent, extensible help system that enables developers and authors to incorporate online help in applets, components, applications, operating systems, and devices and to deliver Web-based online documentation.

  • Java Native Interface (JNI) lets Java code that runs inside a JVM interoperate with applications and libraries written in other programming languages.

  • Java Platform Debugger Architecture (JPDA) is the debugging support infrastructure for Java SE.

  • Java 2D API is a set of classes for advanced 2D graphics and imaging that provides extensive support for image compositing and alpha channel images, a set of classes to provide accurate color space definition and conversion, and a set of display-oriented imaging operators.

  • Java Web Start helps you simplify deployment of Java applications by letting users download and launch full-featured applications (such as spreadsheets) with a single click, without going through installation procedures.

  • Certification Path API provides a set of APIs for creating, building, and verifying certification paths (also known as "certificate chains") for securely establishing the mapping of a public key to a subject.

  • Java Database Connectivity (JDBC) is an API that lets you access most tabular data sources from within Java code, providing cross-DBMS connectivity to a wide range of SQL databases and access to other tabular data sources, such as spreadsheets or flat files.

  • Java Advanced Imaging (JAI) is an API that provides a set of object-oriented interfaces that support a simple, high-level programming model that lets developers manipulate images easily.

  • Java Authentication and Authorization Service (JAAS) is a package that enables services to authenticate and enforce access controls on users by implementing a Java version of the standard Pluggable Authentication Module (PAM) framework and by supporting user-based authorization.

  • Java Cryptography Extension (JCE) is a set of packages that provides a framework and implementations for encryption, key generation and agreement, and Message Authentication Code (MAC) algorithms. It provides encryption support for symmetric, asymmetric, block, and stream ciphers, and it supports secure streams and sealed objects.

  • Java Data Objects (JDO) is a standard interface-based Java model abstraction of persistence that lets programmers directly store their Java domain model instances into the persistent store (database), potentially replacing such methods as direct file I/O, serialization, JDBC, and EJB Bean Managed Persistence (BMP) or Container Managed Persistence (CMP) Entity Beans.

  • Java Management Extensions (JMX) provides tools for building distributed, Web-based, modular and dynamic applications for managing and monitoring devices, applications, and service-driven networks.
  • Java Media Framework (JMF) enables audio, video, and other time-based media to be added to Java applications and applets.

  • Java Naming and Directory Interface (JNDI) provides Java applications with a unified interface to multiple naming and directory services in the enterprise, enabling seamless connectivity to heterogeneous enterprise naming and directory services.

  • Java Secure Socket Extensions (JSSE) is a set of packages that enables secure Internet communications, implementing a Java version of SSL (Secure Sockets Layer) and TLS (Transport Layer Security) protocols and including functionality for data encryption, server authentication, message integrity, and optional client authentication.

  • Java Speech API (JSAPI) includes the Grammar Format (JSGF) and Markup Language (JSML) specifications and lets Java applications incorporate speech technology into user interfaces. JSAPI defines a cross-platform API to support command and control recognizers, dictation systems, and speech synthesizers.

  • Java 3D is an API developers can use to incorporate scalable, platform-independent 3D graphics into Java applications easily by providing a set of object-oriented interfaces that support a simple, high-level programming model.

  • Metadata Facility lets you mark classes, interfaces, fields, and methods as having particular attributes so that they can be processed in special ways by development tools, deployment tools, or runtime libraries.

  • Java Content Repository API is an API for accessing content repositories in Java SE independently of implementation. A content repository is a high-level information-management system that is a superset of traditional data repositories.

  • Enumerations are a type that lets you represent specific pieces of data as constants, all in a type-safe manner.

  • Generics let you define classes with abstract type parameters that you specify at instantiation time.

  • Concurrency Utilities are a set of medium-level utilities that provide functionality commonly needed in concurrent programs.

  • Java API for XML Processing (JAXP) lets Java applications parse and transform XML documents independently of a particular XML processing implementation and gives you the flexibility to swap between XML processors without making application code changes. Java API for XML Binding (JAXB) lets you automate the mapping between XML documents and Java objects.

  • SOAP with Attachments API for Java (SAAJ) enables developers to produce and consume messages conforming to the SOAP 1.1 specification and SOAP with Attachments note.

Introduction to Programming (Java)

2. Why is Java technology important?

The main benefit of the Java language is the portability of Java applications across hardware platforms and operating systems -- possible because the JVM installed on each platform understands the same bytecode.

The Java language and platform are impressively scalable. At the low end, existing applications can easily be adapted for devices with limited-memory resources. Scaling up, the language is an ideal framework for server-side Web programming. Because it was designed to run in a secure manner over networks, it affords this level of security when operating over the Internet. In essence, Java technology extends a user's computing power from the desktop to the resources of the Web. Web components are supported by runtime platforms called Web containers, whose services include request dispatching, security, concurrency, life-cycle management, and access to APIs such as naming, transactions, and e-mail. At the high end, Java application servers serve as Web containers for Java components, XML, and Web services that can interact with databases and provide dynamic Web content; they also provide an application-deployment environment for enterprise applications, with capabilities for transaction management, security, clustering, performance, availability, connectivity, and scalability.

The Java language was one of the first technologies to support open standards in the enterprise, opening the door to using XML and Web services to help share information and applications across business lines. Java technology serves as the backbone of many IBM products and technical consulting services and is critical to key IBM initiatives:

  • Learn more about the IBM Service Oriented Architecture - SOA philosophy and how SOA helps users build composite applications that draw upon functionality from multiple sources within and beyond the enterprise to support horizontal business processes.

  • IBM's Business Process Management enabled by SOA offers a component-based, comprehensive approach to strategic change. Offerings are based on a flexible, extensible, open standards-based software -- including Java technology -- and hardware infrastructure.

Multiple editions of the Java platform
Three editions of the Java platform make it easier for software developers, service providers, and device manufacturers to target specific markets:

Introduction to Programming (Java)

1. What is Java technology?

Java technology is both a high-level, object-oriented programming language and a platform. Java technology is based on the concept of a single Java Virtual Machine (JVM) -- a translator between the language and the underlying software and hardware. All implementations of the programming language must emulate the JVM, enabling Java programs to run on any system that has a version of the JVM.

The Java programming language is unusual because Java programs are both compiled (translated into an intermediate language called Java bytecode) and interpreted (bytecode parsed and run by the JVM). Compilation occurs once, and interpretation happens each time the program runs. Compiled bytecode is a form of optimized machine code for the JVM; the interpreter is an implementation of the JVM.

The Java platform is a software-only platform that runs on top of various hardware-based platforms. It comes in three versions (see Multiple editions of the Java platform, below). It consists of the JVM and the Java Application Programming Interface (API), a large collection of ready-made software components (classes) that ease the development and deployment of applets and applications, including robust, secure, and interoperable enterprise applications. It spans everything from basic objects to networking and security and XML generation and Web services. The Java API is grouped into libraries of related classes and interfaces; the libraries are known as packages.

Along with the Java API, every full implementation of the Java platform includes:

  • Development tools for compiling, running, monitoring, debugging, and documenting applications.
  • Standard mechanisms for deploying applications to users.
  • User interface toolkits that make it possible to create sophisticated graphical user interfaces (GUIs).
  • Integration libraries that enable database access and manipulation of remote objects.

Java technology was developed by Sun Microsystems. The Java Community Process (JCP), an open organization of international Java developers and licensees, develops and revises Java technology specifications, reference implementations, and technology compatibility kits. In 2007, Sun made the bulk of its core Java technology available as open-source software under the GNU general public license version 2 (GPLv2).

---------------------------------------------------------------------------

Multiple editions of the Java platform
Three editions of the Java platform make it easier for software developers, service providers, and device manufacturers to target specific markets:

Tuesday, April 8, 2008

Industrial Placement

Sorry. This Page is not available.

Group Project

Sorry. This Page is not available.