B
brian.wilson4
Our group is currently comparing winforms vs webforms.....app is Corp
LAN based - we have control of desktops.....Below is pros and cons list
we have come up with - if anything strikes you as untrue or you would
like to add - please comment - thanks.....
Rich Client PROS
1. User experience (* indicates feasible on web with AJAX) -
a. Single, unified application experience
b. Windows/Office-like look and feel -
i.Tabs - drag and drop tabs; open/close/minimize tabs*
ii.Common toolbar/menu options (ex. File, Edit, View)
iii.DataGrids - Excel-like look and feel*
iv.Split Container - split up screen into multiple
windows with separate controls in each window*
v.Panel Controls - like Outlook left panel (mail,
calendar, tasks, etc)
vi.Drag/Drop - easy in rich client; user could drag
files from one place to drop in another like in Windows Explorer*
vii.Parent/child windows - clearer in rich client; in
web would popup another instance of IE, in rich client,
pops up within the application
viii. Progress/status bars - allows user to see that
something is happening and how much progress has been made; can also
allow user to cancel long running queries, etc.*
c. Mouse/keyboard events - more events to access, keystrokes more
available (ex. Right click gives application options,
not just browser options)
d. Multi-threaded processing - processes run in background while
user continues to move through UI to other tasks
e. Seamless integration with MS Office
2. Logical transactions more easily managed in application vs. web page
-
a. Only one user, one connection; no need to manage connection
pooling
b. Two tier environment with business logic maintained in database
3. Simplified development environment -
a.No need for multiple development tools/languages (ex. CSS, AJAX,
javascript, dhtml, xml, etc.)
b.No application server coding needed; application and database do
all work required, no server intermediary
4. Simplified production environment -
a.Fewer moving parts; just application and database directly
connected; no web or application servers to maintain, upgrade,
provide DR for, etc.
Rich Client CONS
1. Availability of experienced winforms developers
2. Not part of current ASP.NET environment (although it is part of .NET
framework)
3. Strictly a LAN/intranet application
4. New releases require few minutes of update time on subsequent
opening of app
(terminal server only hit 1 time)
Web App PROS
1. Ease of deployment -
a. No downloads, no waiting for updates, no need for .NET framework
on client
b. Well established design/architecture patterns
2. Familiar interface; users are familiar with web-based applications
3. Leverage look and feel of other RECM ASP.NET applications
4. Ready availability of ASP.NET developers, books, articles, code,
etc.
5. Easier to move to internet in the future, if necessary
6. Security -
a. No code/business logic stored on client pc
b. No data stored on client pc
Web App CONS
1. Complexity of development environment -
a. Use of multiple development tools (ex. CSS, dhtml, xml, AJAX,
javascript, etc.)
b. While use of tools like AJAX allows for creation of more rich
interface, takes more code and experience to implement successfully on
the web than in winforms
c. Multi-tier environment requires more code to manage and deploy
2. Complexity of deployment environment -
a. More moving parts - web server, application server, database
server
b. Management of connection threads more complicated; connection
made to application server and to database server, so more expensive in
terms of memory and processing power
3. User Experience -
a. No multi-threaded processing; once user clicks "go" they are
stuck waiting for the process to finish before they can proceed
(possibly mitigated with AJAX solution)
b. Outlook/Office look and feel/functionality missing; more
difficult to integrate with desktop applications (like Office)
LAN based - we have control of desktops.....Below is pros and cons list
we have come up with - if anything strikes you as untrue or you would
like to add - please comment - thanks.....
Rich Client PROS
1. User experience (* indicates feasible on web with AJAX) -
a. Single, unified application experience
b. Windows/Office-like look and feel -
i.Tabs - drag and drop tabs; open/close/minimize tabs*
ii.Common toolbar/menu options (ex. File, Edit, View)
iii.DataGrids - Excel-like look and feel*
iv.Split Container - split up screen into multiple
windows with separate controls in each window*
v.Panel Controls - like Outlook left panel (mail,
calendar, tasks, etc)
vi.Drag/Drop - easy in rich client; user could drag
files from one place to drop in another like in Windows Explorer*
vii.Parent/child windows - clearer in rich client; in
web would popup another instance of IE, in rich client,
pops up within the application
viii. Progress/status bars - allows user to see that
something is happening and how much progress has been made; can also
allow user to cancel long running queries, etc.*
c. Mouse/keyboard events - more events to access, keystrokes more
available (ex. Right click gives application options,
not just browser options)
d. Multi-threaded processing - processes run in background while
user continues to move through UI to other tasks
e. Seamless integration with MS Office
2. Logical transactions more easily managed in application vs. web page
-
a. Only one user, one connection; no need to manage connection
pooling
b. Two tier environment with business logic maintained in database
3. Simplified development environment -
a.No need for multiple development tools/languages (ex. CSS, AJAX,
javascript, dhtml, xml, etc.)
b.No application server coding needed; application and database do
all work required, no server intermediary
4. Simplified production environment -
a.Fewer moving parts; just application and database directly
connected; no web or application servers to maintain, upgrade,
provide DR for, etc.
Rich Client CONS
1. Availability of experienced winforms developers
2. Not part of current ASP.NET environment (although it is part of .NET
framework)
3. Strictly a LAN/intranet application
4. New releases require few minutes of update time on subsequent
opening of app
(terminal server only hit 1 time)
Web App PROS
1. Ease of deployment -
a. No downloads, no waiting for updates, no need for .NET framework
on client
b. Well established design/architecture patterns
2. Familiar interface; users are familiar with web-based applications
3. Leverage look and feel of other RECM ASP.NET applications
4. Ready availability of ASP.NET developers, books, articles, code,
etc.
5. Easier to move to internet in the future, if necessary
6. Security -
a. No code/business logic stored on client pc
b. No data stored on client pc
Web App CONS
1. Complexity of development environment -
a. Use of multiple development tools (ex. CSS, dhtml, xml, AJAX,
javascript, etc.)
b. While use of tools like AJAX allows for creation of more rich
interface, takes more code and experience to implement successfully on
the web than in winforms
c. Multi-tier environment requires more code to manage and deploy
2. Complexity of deployment environment -
a. More moving parts - web server, application server, database
server
b. Management of connection threads more complicated; connection
made to application server and to database server, so more expensive in
terms of memory and processing power
3. User Experience -
a. No multi-threaded processing; once user clicks "go" they are
stuck waiting for the process to finish before they can proceed
(possibly mitigated with AJAX solution)
b. Outlook/Office look and feel/functionality missing; more
difficult to integrate with desktop applications (like Office)