Calling Developers!
We are reenergizing our code contribution process! Learn More

What are the Slack Archives?

It’s a history of our time together in the Slack Community! There’s a ton of knowledge in here, so feel free to search through the archives for a possible answer to your question.

Because this space is not active, you won’t be able to create a new post or comment here. If you have a question or want to start a discussion about something, head over to our categories and pick one to post in! You can always refer back to a post from Slack Archives if needed; just copy the link to use it as a reference..

Hello, I'm reading Spryker docs and in the first page I saw, that "advanced calculations" should be

Options
USZB5JN4W
USZB5JN4W Posts: 112 🧑🏻‍🚀 - Cadet

Hello,
I'm reading Spryker docs and in the first page I saw, that "advanced calculations" should be done in the "persistence layer". I always thought that advanced calculations are business logic and should be in the "business" layer. Could you please tell me why they should be in the persistence?

Comments

  • Chemaclass
    Chemaclass Tech Lead Spryker Solution Partner Posts: 213 🧑🏻‍🚀 - Cadet
    edited April 2021
    Options

    I think “processing” and “advance calculations” are referring to DB data in this context. The persistence layer is the infrastructure layer responsible for the DB operations. You should not put domain/business logic in it.

  • USZB5JN4W
    USZB5JN4W Posts: 112 🧑🏻‍🚀 - Cadet
    Options

    I know what persistence should be for, but this text is in the first page of the official docs and sounds super confusing 🙂 Even if this is referring to the DB data, I think, it should be mapped to the transfer objects and processed in the business layer. If docs authors mean for example in-DB logic, or some specific stuff, then it's also confusing, because "business layer" is described as "includes your products, pricing, stock, and general information surrounding your commercial offering", so "processing" and "advanced calculations" are mentioned only in the "persistence layer". That's why I asked, because or there is some specific case which I don't know / Spryker is changing approach, or this section of the documentation is misleading.

  • Chemaclass
    Chemaclass Tech Lead Spryker Solution Partner Posts: 213 🧑🏻‍🚀 - Cadet
    Options

    Totally agree with you. Good point.

  • Valerii Trots
    Valerii Trots SRE @ Spryker Sprykee Posts: 1,654 ✨ - Novice
    Options

    Hi Przemysław, this indeed sounds like a mistake and is now being discussed internally.