Sunday, March 9, 2008

kapil

send me dbms notes

Sunday, March 2, 2008

OOPL Comparison

The following table shows some similarities and differences in features and the use of terms and concepts in Smalltalk, C++, and Java.

OO Concept/syntax

Smalltalk

C++

Java

Abstract class

Concept exists, no mechanism for enforcement

A class with a pure virtual function can't be instantiated

Classes may be declared abstract

Assignment operator

:=

=

=

Character constant

$c

'c'

'c'

Class

Class

Class

Class

Class method (corresponds to a message sent to the class rather than an instance)

Class method

Static function member

Class (or static) method

Class variable (data associated with the class, not an instance)

Class variable

Static data member

Class field

Comment

"Comment"

// Comment
/* Comment */

// Comment
/* Comment */
/** Javadoc Comment **/

Dynamic binding

Unrestricted

Only subclasses of the declared class

Subclasses of the declared class or implementations of the declared interface

Equality test (see also identity test)

=

==

equals()

Finalization of instances before deletion (e.g., to release operating system resources)

Some implementations support finalize method

Destructor function

finalize method is standard

Garbage collection (automatic memory management)

Garbage collection is standard

No garbage collection - programmer explicitly manages memory

Garbage collection is standard

Identity test (see also Equality test)

==

same as equality

==

Inheritance

Single inheritance only

Multiple inheritance

Single inheritance only

Initialization of instances

Override new method

Constructor function

Constructor function

Instance data or state

Instance variable

Data member

Instance field

Interface contract (specifies the public interface to classes that implement it)

No corresponding construct

No corresponding construct

Interface

Message

Message

Member function call

Method invocation

Message send syntax

anObject doIt

anObject.doIt() (direct)
pObject->doIt() (pointer)

anObject.doIt()

Method

Method

Member function

Method

Method argument syntax

methodName: argument (keyword method)

memberFunctionName(argument)

methodName(argument)

Method return

^ (caret)

return

return

Object (root of all classes)

Class Object

No corresponding class

Class Object

Operator overloading (an aspect of polymorphism; different operator behavior based on receiver type)

Any operator can be overloaded

Any operator can be overloaded

Only methods can be overloaded, not built-in operators such as +, - , *

Pointers

No explicit storage pointers

Explicit use of storage pointers and pointer arithmetic

No explicit storage pointers

Self (the object executing a method)

self

this (usually not written)

this (usually not written)

String constant

'string constant'

"string constant"

"string constant"

Subclass

Subclass

Derived class

Subclass

Superclass

Superclass

Base class

Superclass

Superclass method invocation

super

:: (scoping operator, more general than Smalltalk or Java capability)

super()


Wednesday, January 9, 2008

ASP.NET

The Microsoft .NET Framework

The .NET Framework is the infrastructure for the Microsoft .NET platform.

The .NET Framework is an environment for building, deploying, and running Web applications and Web Services.

Microsoft's first server technology ASP (Active Server Pages), was a powerful and flexible "programming language". But it was too code oriented. It was not an application framework and not an enterprise development tool.

The Microsoft .NET Framework was developed to solve this problem.

.NET Frameworks keywords:

  • Easier and quicker programming
  • Reduced amount of code
  • Declarative programming model
  • Richer server control hierarchy with events
  • Larger class library
  • Better support for development tools

The .NET Framework consists of 3 main parts:

Programming languages:

  • C# (Pronounced C sharp)
  • Visual Basic (VB .NET)
  • J# (Pronounced J sharp)

Server technologies and client technologies:

  • ASP .NET (Active Server Pages)
  • Windows Forms (Windows desktop solutions)
  • Compact Framework (PDA / Mobile solutions)

Development environments:

  • Visual Studio .NET (VS .NET)
  • Visual Web Developer

This tutorial is about ASP.NET.


ASP.NET 2.0

ASP.NET 2.0 improves upon ASP.NET by adding support for several new features.

You can read more about the differences between ASP.NET 2.0 and ASP.NET in the next chapter of this tutorial.


ASP.NET 3.0

ASP.NET 3.0 is not a new version of ASP.NET. It's just the name for a new ASP.NET 2.0 framework library with support for Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow Foundation; and Windows CardSpace.

These topics are not covered in this tutorial.

Differences between ASP and ASP.NET

previousnext


ASP.NET has better language support, a large set of new controls and XML based components, and better user authentication.

ASP.NET provides increased performance by running compiled code.

ASP.NET code is not fully backward compatible with ASP.


New in ASP.NET

  • Better language support
  • Programmable controls
  • Event-driven programming
  • XML-based components
  • User authentication, with accounts and roles
  • Higher scalability
  • Increased performance - Compiled code
  • Easier configuration and deployment
  • Not fully ASP compatible

Language Support

ASP.NET uses the new ADO.NET.

ASP.NET supports full Visual Basic, not VBScript.

ASP.NET supports C# (C sharp) and C++.

ASP.NET supports JScript as before.


ASP.NET Controls

ASP.NET contains a large set of HTML controls. Almost all HTML elements on a page can be defined as ASP.NET control objects that can be controlled by scripts.

ASP.NET also contains a new set of object oriented input controls, like programmable list boxes and validation controls.

A new data grid control supports sorting, data paging, and everything you expect from a dataset control.


Event Aware Controls

All ASP.NET objects on a Web page can expose events that can be processed by ASP.NET code.

Load, Click and Change events handled by code makes coding much simpler and much better organized.


ASP.NET Components

ASP.NET components are heavily based on XML. Like the new AD Rotator, that uses XML to store advertisement information and configuration.


User Authentication

ASP.NET supports forms-based user authentication, including cookie management and automatic redirecting of unauthorized logins.

(You can still do your custom login page and custom user checking).


User Accounts and Roles

AS .NET allows for user accounts and roles, to give each user (with a given role) access to different server code and executables.


High Scalability

Much has been done with ASP.NET to provide greater scalability.

Server to server communication has been greatly enhanced, making it possible to scale an application over several servers. One example of this is the ability to run XML parsers, XSL transformations and even resource hungry session objects on other servers.


Compiled Code

The first request for an ASP.NET page on the server will compile the ASP.NET code and keep a cached copy in memory. The result of this is greatly increased performance.


Easy Configuration

Configuration of ASP.NET is done with plain text files.

Configuration files can be uploaded or changed while the application is running. No need to restart the server. No more metabase or registry puzzle.


Easy Deployment

No more server restart to deploy or replace compiled code. ASP.NET simply redirects all new requests to the new code.


Compatibility

ASP.NET is not fully compatible with earlier versions of ASP, so most of the old ASP code will need some changes to run under ASP.NET.

To overcome this problem, ASP.NET uses a new file extension ".aspx". This will make ASP.NET applications able to run side by side with standard ASP applications on the same server.