8
votes
Repository Pattern vs DAL Object Creation
My understanding is:
DAL (Data Access Layer) refers to a layer in your software that sits between your persistence technology and your application logic. Its purpose is to keep data access concerns ...
8
votes
Accepted
How does Object-Oriented Design fit into N-Layered Architecture?
OOD fits inside the layers.
Multitier or N-layer architecture is the fancy grown up version of MVC. The big thing they have in common is separated areas of focus. Here, they're called layers (or tiers)...
4
votes
Accepted
Is my three layer architecture well implemented?
Your Service class is redundant. The Repository should return the 'real' object, not the EF object.
Do all your retrieval and mapping inside your Repository.
Your Unit test doesn't really test ...
4
votes
Accepted
Is it proper to inject the configuration to the business logic layer?
In any situation where information needs injecting into part of an app, remember the "tell, don't ask" principle.
If you pass configuration into the business logic layer directly, then you are ...
4
votes
Accepted
In the usual "3-layer" architecture pattern, where would one best create dynamic, user-readable strings?
this "feels" like an inherently UI-related concern,
Definitely not. Thought experiment: next major release you want to change your UI technology - the title string for the unsaved document ...
4
votes
Relationship between monolithic architecture and n-tier
In the beginning there was the big ball of mud. The application was without architectural structure. Then Trygve Reenskaug said let there be Model View Controller. And he saw that having three modules ...
3
votes
In the usual "3-layer" architecture pattern, where would one best create dynamic, user-readable strings?
How I've done it before is by having a code construct (class/interface, function...) that is able to answer "Give me the translation for this string key in the current user's language".
...
3
votes
Should i create a Core library for all business applications ? or each one individual?
Creating frameworks and reusable components takes time and a lot of experience, and often several iterations of production use and redesign based on user feedback. You should not assume that you can ...
3
votes
Repository Pattern vs DAL Object Creation
You are comparing two different and complementary concepts:
The Data Access Layer is an architectural layer that intends to abstract access to data. It doesn't say how the access shall be ...
3
votes
Should the web client (web browser) be counted as a tier in n-tier architecture?
The challenge in answering this question is that we are dealing with terms, in this case "tier", that have imprecise meanings and different people use the term differently.
For example, a common view ...
3
votes
Breaking 3-tier architecture into multi-tier architecture
On the front-end side
Your requirements seem to cover two very different needs and functionalities:
one, is the management of the application and its security (authorisations, accounts, logging)
...
3
votes
Accepted
Model "Clones" Adding Complexity to N-Tier MVC Project?
It sounds like your friend is suggesting a more ADM (Anaemic Domain Model) approach.
Essentially you just have your Method-less DTO model and use it through all the layers. Your Data layer is not ...
3
votes
How does Object-Oriented Design fit into N-Layered Architecture?
Let us flip the statement around, without an N-tier architecture how could your object design look? Your classes would be doing data persistence (for instance to a database), data validation, ...
2
votes
Accepted
Client Server Model for N-Tier Architecture - Mapping chained client>>server>>server>>client request / response
It sounds like your central complaint is routing:
The server has to queue a response message to the (right) Client Engine, then when the Client Engine processes that message, it has to send a ...
2
votes
ASP.NET Web API and MVC Architecture for Web Application
It looks like you are missing a service layer between you business logic and your websites.
If you draw in a horizontal slice on your diagram for it you can see immediately that you have a choice of ...
2
votes
Is my Architecture correct?
Here's how I would do it:
I would put the EDMX in the DAL, since Entity Framework is an ORM (Object Relational Mapper), and that is a data access concern. The classes it generates are laden with EF-...
2
votes
How can I resolve circular dependency within service layer in a n-tier architecture system?
There is a clear data relationship of Course with Student. That's where primary domain modelling should terminate. If not, it infects design decision making for the worse.
Orchestration instead
...
2
votes
How should I design a 3-tier-architecture application with Entity Framework?
How can I prevent other developer from calling saveChanges() at the upper layer?
The only sane way to do that is to enforce a true separation between layers, and the only reasonable way you can do ...
2
votes
Accepted
In an n-layer architecture with MVP in the presentation layer, how the presentation layer interacts with the business layer?
Where will I put the information that an id cannot be negative, for example?
Validation of input data from the user is typically accomplished in two places. You do validation in the UI for the user's ...
2
votes
Where to convert int to enum in a 3-tier architecture?
Am I supposed to get the int returned by the Data layer from the Business Logic Layer, map it to a BLL object, and do the conversion while mapping?
Yes - that's what we are doing in our application. ...
2
votes
What are the relations between the presentation/application/data logics, client and server, and MVC?
Do the figures specify the presentation/application/data logics? If
so, how?
They don't specify them in any precise sense, but they do show a high level logical organization of the system. ...
2
votes
Should the web client (web browser) be counted as a tier in n-tier architecture?
Based on this definition of an n-tiers architecture, a tiers is a multilayered architecture where the layers are made of components. In fact, this definition proposed by one of our peers is very close ...
1
vote
3-layer / 3-tier system
The two concepts are indeed distinct yet somewhat correlated:
The layered architecture decomposes a system into layers of related software elements, where one layer communicates in principle only ...
1
vote
Accepted
How does the DAO design pattern decouple the persistence layer from other layers?
I would suggest that a lot of your questions and the surrounding context would be answered in more detail by looking up guidelines on the specific architecture you're working with.
For the purpose of ...
1
vote
Best mapping practices in an enterprise application
The simple answer is 'it depends'.
If your team/organisation doesn't have a settled consensus then you need to agree the approach with them - 'best practice' is less about choosing one approach over ...
1
vote
Confusion about layered architecture
There are different understandings of the presentation layer.
The traditional layered architecture that you describe predates the internet and in fact originates from the three tier architecture ...
1
vote
Confusion about layered architecture
A presentation layer is a presentation layer regardless of how the rest of your app is built.
You mention single page web apps (spa), rest, angular, spring, n-tier, etc. but a presentation layers job ...
1
vote
Accepted
Where to place the business logic for an external application that is tightly coupled with an internal application and how to adapt the architecture?
Making two APIs, in this case, is probably causing a bit of confusion as far as where business logic should live. For me, I would avoid having two APIs, if possible.
If there is some company specific ...
1
vote
Accepted
Does reference logic belong on DAL or BL?
Checking if data provided for creating or updating an object complies to some rules or constraints is typically a BL layer responsibility. For this reason, checking if EmployeeId are valid should ...
1
vote
What are the relations between the presentation/application/data logics, client and server, and MVC?
MVC (model-view-controller) is an architectural pattern, but it does not map directly into N-tier architecture: Those are more or less orthogonal, and in principle each layer can have their own (even ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
n-tier × 92architecture × 33
layers × 13
.net × 11
design × 10
c# × 10
design-patterns × 10
mvc × 10
asp.net-mvc × 7
entity-framework × 6
enterprise-architecture × 6
java × 5
domain-driven-design × 5
asp.net × 5
architectural-patterns × 5
repository × 5
business-logic × 5
object-oriented × 4
database × 4
web-applications × 4
dependency-injection × 4
orm × 4
programming-practices × 3
web-api × 3
inversion-of-control × 3