ahmad_gomaa
New member
Hope you are doing well
I am trying to develop an application to serve a lot of users, so i used VB.Net as an IDE to achieve that.
The application has a large scale database built in SQL Server 2008 and it tends to have billions of records.
There are three approaches can be used during the application development:
1- The First Approach: to design an application consists of a single tier.
It means that every form created with its controls, methods and event handlers all of them have been coded internally.
---- Advantage of this approach:
1- Quick production of applications without need to organize, separate and reference multiple assemblies.
---- Disadvantage of this approach:
1- The extreme hardness found during system development and maintenance because of randomized system architecture.
2- The Second Approach: to design 3-tier application divided into 3 assemblies (1 .exe and 2 .dll)
* The First Tier is Presentation Layer: consists of all forms and user controls needed to present Graphical User Interface.
** The Second Tier is Business Logic Layer: consists of a lot of classes coded to manipulate data from/to Data Access Layer.
*** The Third Tier is Data Access Layer: consists of Typed Dataset.
---- Advantage of this approach:
1- Ease of System Development and Maintenance because of successful organization of the assemblies.
---- Disadvantages of this approach:
1- Cumbersome Performance of the application while updating database via dataset.
2- The application will contain app.config file that could be used to discover sensitive data like connection password.
3- The Third Approach: to design 2-tier application divided into 2 assemblies (1 .exe and 1 .dll)
* The First Tier is Presentation Layer: consists of all forms and user controls needed to present Graphical User Interface.
** The Second Tier is Business/Data Logic: consists of Entity Framework Objects with its attributes, methods, properties and events.
---- Advantage of this approach:
1- Ease of System Development and Maintenance because of successful organization of the assemblies.
2- Securing sensitive data like connection strings due to missing app.config file.
3- Accelerating application performance due to using stored procedures from SQL server database.
Note: Some developers on a lot of web forums recommended using LINQ to SQL instead of Typed Dataset in the 3-Tier applications.
Please help me to choose the best approach to develop my application and i am ready to tell you with any required information.
Best Regards
I am trying to develop an application to serve a lot of users, so i used VB.Net as an IDE to achieve that.
The application has a large scale database built in SQL Server 2008 and it tends to have billions of records.
There are three approaches can be used during the application development:
1- The First Approach: to design an application consists of a single tier.
It means that every form created with its controls, methods and event handlers all of them have been coded internally.
---- Advantage of this approach:
1- Quick production of applications without need to organize, separate and reference multiple assemblies.
---- Disadvantage of this approach:
1- The extreme hardness found during system development and maintenance because of randomized system architecture.
2- The Second Approach: to design 3-tier application divided into 3 assemblies (1 .exe and 2 .dll)
* The First Tier is Presentation Layer: consists of all forms and user controls needed to present Graphical User Interface.
** The Second Tier is Business Logic Layer: consists of a lot of classes coded to manipulate data from/to Data Access Layer.
*** The Third Tier is Data Access Layer: consists of Typed Dataset.
---- Advantage of this approach:
1- Ease of System Development and Maintenance because of successful organization of the assemblies.
---- Disadvantages of this approach:
1- Cumbersome Performance of the application while updating database via dataset.
2- The application will contain app.config file that could be used to discover sensitive data like connection password.
3- The Third Approach: to design 2-tier application divided into 2 assemblies (1 .exe and 1 .dll)
* The First Tier is Presentation Layer: consists of all forms and user controls needed to present Graphical User Interface.
** The Second Tier is Business/Data Logic: consists of Entity Framework Objects with its attributes, methods, properties and events.
---- Advantage of this approach:
1- Ease of System Development and Maintenance because of successful organization of the assemblies.
2- Securing sensitive data like connection strings due to missing app.config file.
3- Accelerating application performance due to using stored procedures from SQL server database.
Note: Some developers on a lot of web forums recommended using LINQ to SQL instead of Typed Dataset in the 3-Tier applications.
Please help me to choose the best approach to develop my application and i am ready to tell you with any required information.
Best Regards