Please help me to choose the best approach

ahmad_gomaa

New member
Joined
Oct 23, 2013
Messages
3
Location
Egypt
Programming Experience
5-10
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
 
You seem to be under some misconceptions there. Why does a 3-tier app have to use a typed DataSet and a 2-tier app have to use EF? You can use either in either case. You can also use stored procedures with both typed DataSets or EF. Also, your assertion that an EF app has no config file and one using a typed DataSet does is complete rubbish.

If it was me, I'd be building a 3-tier app using EF, no stored procedures unless required for a specific reason and encrypting the connection string in the config file. I would not use L2S where EF is available, i.e. I use L2S on Windows Phone only.
 
I want to develop N-tier application to work as medical network website as facebook but specifically for healthcare professionals.
I had divided the application into multiple modules (Medical Laboratory Module, Clinics, Human Imaging Centers ... etc).
at first, the user must suggest his career to select any module to track, so the users will be successfully classified (Physicians, Technicians ... etc)
while the user select laboratory module, the application will grant him a secret id for his database so he could insert the data privately.
I need an expert to ask him about the policies and strategies that defined federally for this type of websites please !!!
also i need to know the definite methods to earn money from this website please !!!
 
I need an expert to ask him about the policies and strategies that defined federally for this type of websites please !!!
also i need to know the definite methods to earn money from this website please !!!

Those don't sound like anything to do with ADO.NET or n-tier design so not questions for this thread.
 
Do you mean that i have to avoid ADO.Net while developing a social network website ?

I mean that this thread has been posted in the ADO.NET forum and is about data access in various application architectures and those last two questions have no relation to either, so they do not belong in this thread in this forum. If you want to ask a question on a new topic then please start a new thread in an appropriate forum.
 
Back
Top