In the previous posts, I described several examples of
services using F# with WCF.
In this post, and in a series of future ones, I will
describe a high efficient web application technology using three-tier architecture: host
server, database server and web browser interface.
The software resources used in these posts are:
·
Host server:
o
F# language
o
Windows Communication Foundation (WCF) –
services oriented application framework
·
Database server:
o
SQL Server Compact – database engine
o
Entity Framework – object relational mapper
o
F# type providers – information rich application
component
·
Web client:
o
HTML5 – web markup language
o
javascript – web scripting language
o
jquery – javascript library
o
jqWidgets – web user interface library
o
knockoutjs –model-view-view-model javascript
library
In my opinion, these set of software technologies represent
the state-of-art available for web applications. The advantages are:
·
All software, except the jqWidgets and knockoutjs,
are supplied by Microsoft
·
Microsoft Visual Studio is the only development
tool required
·
All software, except jqWidgets, are free if you
own the Window Operation System
·
Host server has high performance due to compiled
code and the use of REST and Json
·
Application can be self-hosted or part of a
server application as IIS
·
No SQL commands are needed to access the
database
·
Client is available in all devices that support
HTML5
·
Several components are used to hide complexity
resulting in application with few lines of code
A user authentication web application is presented as an
example.
Check the full article including source code at: