Online Art Gallery
Online Art Gallery
CONTENTS
1. INTRODUCTION
2.1. MODULES
4. PROJECT DICTIONARY
6. BIBILIOGRAPHY
1. INTRODUCTION
Existing System:
Customer can also register online and they can browse art
works that are arranged in different categories scientifically. Each
Customer can create their own gallery to see his favorite art works
with out much difficult. And each user has the right to purchase an
art work using the integrated payment gateway and participate in
auction by submitting their bids. Qualified bidder should remit the
amount using payment gateway and after each valid payment the
art work will be shipped within some days.
Proposed System:
ONLINE ART GALLERY is a application software and it is very
helpful for the art lovers and others who wants to know the
addresses where this kind of arts will we sold.
This application helps the end-users to search their arts and
paintings and they can place order for the selected pieces. The end-
user can also get the information about the art exhibition and the
respective address, so, that they can visit to those exhibitions.
An
2.1. MODULES
User Registration
Art Exhibition
Artist Directory
Contact Us
4. PROJECT DICTIONARY
DFD level 0:
ADMIN
DFD level 1 member:
REGEST
MEMBER ATION
DATA BASE
CHANGE
LOG
PASS
IN WORD
VIEW SEARC
GET ART H ADD SELEC
PROFILE GALLE ARTIST CART T ART
RY WISE
BILLI CON
ORD PAY
NG & FIRM
ER MEN
SHIP ATIO
NOW T
PING N
DFD Level 1 Artist:
REGES
ARTIST TRATIO
N
CHANG
EPASS
LOGIN WORD
DATA BASE
ARTIST
ADMIN
Context Level Diagram:
login
login
ADMIN
4.2. E-R Diagrams:
uid pwd
Member pwd
uname
pwd unam
e
Login Artist
Authentication
Member Artist
Unam Upload
Fnam Email
e e
No yes
profile City
Artid Artist Artpat
h
Arts
View artby
Shipping
gg
Billing
Artpath
Artist
Order artid
Drafts
Credit
Payment
Object diagram:
1:1 1:1
A:Admin
Registration
Input details
Store details
Display details
Login
No Yes
Valid
Get profile
View gallery
Add to cart
password
Payment
Activity diagram for Artist:
Registration
Input details
Store details
Display details
Login
No Yes
Valid
Get profile
View gallery
Update Gallery
State Chat diagrams:
State chart Diagram for Online registration:
CONFORMATION
login valid
purchase store
conformation
Uml diagrams:
For member:
Use case diagram:
Registration
member
getprofile
ViewGallery
Admin
SearchbyArtist
Addtocart
Shippingdetails
Artist
payment
Login
Class Diagram:
Admin
userid : type = varchar
pwd : type = varchar
Activate()
1:1 deactivate()
1:1
Transactions()
deliverSoldArts()
1:1 1:1
1:1
1:1 1:1
1:*
view gallery
1:* artid
member login payment
uid : type = int artist
uname : type = char order drafts
uname : type = char art path billing
pwd credit
art cost shipping artid
email debit
name2 artistname
fname : type = int login() get arts() artpath
lname : type = int payment()
submit() artcost
city : type = varchar 1:*
pwd 1:*
1:* order()
1:*
register()
get profile
fname : type = char
lname : type = initval
gender : type = char
email
city : type = char
update()
Collaboration:
: member
1: register( )
: member
2: login( )
6: order( ) 9: Confirmations
: order
: login
: get
profile
3: update( )
7: payment( )
8: Transactions
5: submit( ) : Admin
4: get arts( )
: view :
gallery payment
: billing
Sequence diagram:
1: register( )
2: login( )
3: update( )
4: get arts( )
5: submit( )
6: order( )
7: payment( )
8: Transactions
9: Confirmations
For artist:
Class diagram:
Admin
userid : type = varchar
pwd : type = varchar
Activate()
1:1 deactivate()
Transactions() 1:1
deliverSoldArts()
1:*
update()
Collabora:
1: register( )
: artist
: Artist
2: login( ) 7: conformation
3: update( )
: get : Admin
: login profile
6: check arts
5: get arts( ) 4: upload( )
: view : upload
gallery
Sequence:
: artist : login : get profile : upload : view gallery
: Artist
1: register( )
: Admin
2: login( )
3: update( )
4: upload( )
5: get arts( )
6: check arts
7: conformation
Microsoft.NET Framework
while also enforcing strict type safety and other forms of code
code, while code that does not target the runtime is known as
this topic.
that hosts the runtime (in the form of a MIME type extension).
architecture.
language runtime.
application.
common type system (CTS). The CTS ensures that all managed
language compilers
that target the .NET Framework make the features of the .NET
This not only makes the .NET Framework types easy to use,
Framework.
services:
Console applications.
Scripted or hosted applications.
Windows GUI applications (Windows Forms).
ASP.NET applications.
XML Web services.
Windows services.
consistent.
Each assembly has one and only one assembly manifest, and
it contains all the description information for the assembly.
However, the assembly manifest can be contained in its own
file or within one of the assembly’s modules.
System
System.Data
System.Data.SQLClient
Namespace Description
Types in the .NET Framework come in two varieties: value types and
reference types. The primary difference between value types and reference
types has to do with the way variable data is accessed. To understand this
difference, a little background on memory dynamics is required.
Application data memory is divided into two primary components, the stack
and the heap. The stack is an area of memory reserved by the application to
run the program. The stack is analogous to a stack of dinner plates. Plates
are placed on the stack one on top of another. When a plate is removed from
the stack, it is always the last one to have been placed on top that is removed
first. So it is with program variables. When a function is called, all the
variables used by the function are pushed onto the stack. If that function
calls additional functions, it pushes additional variables onto the stack.
When the most recently called function terminates, all of its variables go out
of scope (meaning that they are no longer available to the application) and
are popped off the stack. Memory consumed by those variables is then freed
up, and program execution continues.
The heap, on the other hand, is a separate area of memory reserved for the
creation of reusable objects. The common language runtime manages
allocation of heap memory for objects and controls the reclamation of
memory from unused objects through garbage collection.
All the data associated with a value type is allocated on the stack. When a
variable of a value type goes out of scope, it is destroyed and its memory is
reclaimed. A variable of a reference type, on the other hand, exists in two
memory locations. The actual object data is allocated on the heap. A variable
containing a pointer to that object is allocated on the stack. When that
variable is called by a function, it returns the memory address for the object
to which it refers. When that variable goes out of scope, the object reference
is destroyed but the object itself is not. If any other references to that object
exist, the object remains intact. If the object is left without any references, it
is subject to garbage collection. (See Lesson 6 of this chapter.)
Value Types
int myInteger;
This line tells the runtime to allocate the appropriate amount of memory to
hold an integer variable. Although this line creates the variable, it does not
assign a value to it. You can assign a value using the assignment operator, as
follows:
myInteger = 42;
You can also choose to assign a value to a variable upon creation, as shown
in this example:
int myInteger = 42;
Reference Types
System.Windows.Forms.Form myForm;
This line tells the runtime to set aside enough memory to hold a Form
variable and assigns it the name myForm, but it does not actually create the
Form object in memory. The second step, called instantiation, actually
creates the object. An example of instantiation follows:
myForm = new System.Windows.Forms.Form();
Widget myWidget;
myWidget = new Widget("This string is required by the constructor");
If desired, you can also combine both declaration and instantiation into a
single statement. By declaring and instantiating an object in the same line,
you reserve the memory for the object and immediately create the object that
resides in that memory. Although there was a significant performance
penalty for this shortcut in previous versions of Visual Basic, Visual
Basic .NET and Visual C# are optimized to allow this behavior without any
performance loss. The following example shows the one-step declaration
and instantiation of a new Form:
System.Windows.Forms.Form myForm = new
System.Windows.Forms.Form();
Both value types and reference types must be initialized before use. For class
and structure fields in Visual Basic .NET, types are initialized with default
values on declaration. Numeric value types (such as integer) and floating-
point types are assigned zero; Boolean variables are assigned False; and
reference types are assigned to a null reference.
A variable that represents a value type contains all the data represented by
that type. A variable that represents a reference type contains a reference to a
particular object. This distinction is important. Consider the following
example:
int x, y;
x = 15;
y = x;
x = 30;
// What is the value of y?
System.Windows.Forms.Form x,y;
x = new System.Windows.Forms.Form();
x.Text = "This is Form 1";
y = x;
x.Text = "This is Form 2";
// What value does y.Text return?
What value does y.Text return? This time, the answer is less obvious.
Because System.Windows.Forms.Form is a reference type, the variable x
does not actually contain a Form; rather, it points to an instance of a Form.
When the line y = x is encountered, the runtime copies the reference from
variable x to y. Thus, the variables x and y now point to the same instance of
Form. Because these two variables refer to the same instance of the object,
they will return the same values for properties of that object. Thus, y.Text
returns “This is Form 2”.
Up to this point of the chapter, if you wanted to access a type in the .NET
Framework base class library, you had to use the full name of the type,
including every namespace to which it belonged. For example:
System.Windows.Forms.Form
This is called the fully-qualified name, meaning it refers both to the class
and to the namespace in which it can be found. You can make your
development environment “aware” of various namespaces by using the
Imports (Visual Basic .NET) or using (Visual C#) statement. This technique
allows you to refer to a type using only its generic name and to omit the
qualifying namespaces. Thus, you could refer to
System.Windows.Forms.Form as simply Form. In Visual Basic .NET, the
Imports statement must be placed at the top of the code window, preceding
any other statement (except Option). In Visual C#, the using statement must
occur before any other namespace element, such as a class or struct. This
example demonstrates use of this statement:
using System.Windows.Forms;
When two types of the same name exist in more than one imported
namespace, you must use the fully qualified name to avoid a naming
conflict. Thus, if you are using MyNameSpaceOne and MyNameSpaceTwo,
and each contains a Widget class, you would have to refer to
MyNameSpaceOne.Widget or MyNameSpaceTwo.Widget to ensure the
correct result.
using myAlias = MyNameSpaceTwo.Widget;
After implementing an alias, you can use it in code to represent the aliased
class. For example:
// You can now refer to MyNameSpaceTwo as myAlias. The
// following two lines produce the same result:
MyNameSpaceTwo.Widget anotherWidget = new MyNameSpaceTwo.Widg
et() ;
myAlias anotherWidget = new myAlias() ;
You cannot create aliases for types in this manner in Visual Basic .NET.
You might want to use class libraries not contained by the .NET Framework,
such as libraries developed by third-party vendors or libraries you
developed. To access these external libraries, you must create a reference.
Classes can be thought of as blueprints for objects: they define all of the
members of an object, define the behavior of an object, and set initial values
for data when appropriate. When a class is instantiated, an in-memory
instance of that class is created. This instance is called an object. To review,
a class is instantiated using the New (new) keyword as follows:
To continue with the real-world example of a car, consider that a Car object
has fields and properties, such as Color, Make, Model, Age, GasLevel, and
so on. These are the data that describe the state of the object. A Car object
might also expose several methods, such as Accelerate, ShiftGears, or Turn.
The methods represent behaviors the object can execute. And events
represent notifications. For example, a Car object might receive an
EngineOverheating event from its Engine object, or it might raise a Crash
event when interacting with a Tree object.
Object Models
Simple objects might consist of only a few properties, methods, and perhaps
an event or two. More complex objects might require numerous properties
and methods and possibly even subordinate objects. Objects can contain and
expose other objects as members. For example, the TextBox control exposes
a Font property, which consists of a Font object. Similarly, every instance of
the Form class contains and exposes a Controls collection that comprises all
of the controls contained by the form. The object model defines the
hierarchy of contained objects that form the structure of an object.
Encapsulation
Objects should only interact with other objects through their public methods
and properties. Thus, objects should contain all of the data they require, as
well as all of the functionality that works with that data. The internal data of
an object should never be exposed in the interface; thus, fields rarely should
be Public (public).
Returning to the Car example. If a Car object interacts with a Driver object,
the Car interface might consist of a GoForward method, a GoBackward
method, and a Stop method. This is all the information that the Driver needs
to interact with the Car. The Car might contain an Engine object, for
example, but the Driver doesn’t need to know about the Engine object—all
the Driver cares about is that the methods can be called and that they return
the appropriate values. Thus, if one Engine object is exchanged for another,
it makes no difference to the Driver as long as the interface continues to
function correctly.
Polymorphism
Interface Polymorphism
Inheritance Polymorphism
Requirements: