Posts

Implement value objects in EF

Important characteristics of value objects Value object implementation in C# How to persist value objects in the database with EF Core 2.0 and later Persist value objects as owned entity types in EF Core 2.0 and later Additional resources  Tip This content is an excerpt from the eBook, .NET Microservices Architecture for Containerized .NET Applications, available on .NET Docs or as a free downloadable PDF that can be read offline. .NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail. As discussed in earlier sections about entities and aggregates, identity is fundamental for entities. However, there are many objects and data items in a system that do not require an identity and identity tracking, such as value objects. A value object can reference other entities. For example, in an application that generates a route that describes how to get from one point to another, that route would be a value object. It would be a snapshot of points on a speci...

Data exploration

Image
Data exploration: An introduction for data analysts Data exploration is the foundational phase of data analysis, where you familiarize yourself with your dataset. It's about understanding its structure, identifying potential issues, and beginning to formulate questions for deeper investigation. Data exploration encompasses a diverse range of activities, each designed to reveal different aspects of your dataset. These activities can be broadly categorized into three core areas: understanding your data, uncovering relationships, and formulating hypotheses. Understanding your data This phase involves getting familiar with the individual variables and their characteristics within your dataset. The first step is to identify the types of variables you're working with. Are they numerical (continuous or discrete) or categorical (nominal or ordinal)? Understanding the nature of your variables is fundamental for choosing appropriate analysis techniques and visualizations. Next, you'l...

Event Sourcing

Image
  Introduction Event Sourcing has been used in production by some of the world's biggest companies (including Netflix and Walmart) for years, providing them with the platform to rapidly scale, iterate and evolve their systems, and establishing a data model that delivers a strong competitive advantage. In this guide, we discuss what Event Sourcing is,  why  you'd use it, the range of benefits it provides and we break down the jargon. What is Event Sourcing? Event Sourcing is an architectural design pattern where changes that occur in a domain are immutably stored as events in an append-only log. This provides a business with richer data as each change that occurs within the domain is stored as a sequence of events which can be replayed in the order they occurred. This means you’re able to see more than just the current state of your domain - you can see what lead up to the current state.  In addition, as events also contain the context of the change – the ‘what’, ‘whe...

S.O.L.I.D The First 5 Principle Of Object Oriented Design

Image
  Introduction SOLID  is an acronym for the first five object-oriented design (OOD) principles by Robert C. Martin (also known as  Uncle Bob ). Note:  While these principles can apply to various programming languages, the sample code contained in this article will use PHP. These principles establish practices for developing software with considerations for maintaining and extending it as the project grows. Adopting these practices can also help avoid code smells, refactor code, and develop Agile or Adaptive software. SOLID stands for: S  - Single-responsibility Principle O  - Open-closed Principle L  - Liskov Substitution Principle I  - Interface Segregation Principle D  - Dependency Inversion Principle In this article, you will be introduced to each principle individually to understand how SOLID can help make you a better developer. Single-Responsibility Principle Single-responsibility Principle (SRP) states: A class should have one and only...