Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
This video was recorded on http://wrocloverb.com. You should follow us at https://twitter.com/wrocloverb. See you next year! I would like to describe all of the pieces that we're working on: new relational algebra engine, new model definition and introspection layers, new validation library and other things that will become part of DM2 (better migrations, UoW library, optimizer layer). The talk would be in the context of a better way of handling business logic in Rails apps.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
This video, titled "DataMapper 2," features Piotr Solnica discussing the evolution of the DataMapper ORM toolkit, built to address the complexities found in traditional ORM frameworks. The talk, presented at the wroc_love.rb 2012 conference, highlights the main motivations for transitioning from ActiveRecord to a more modular architecture with DataMapper 2. ### Key Points: - **Beyond ORM**: DataMapper is described as more than just an ORM; it is presented as an ORM toolkit that allows for custom configurations and usage of various components independently. - **Separation of Concerns**: Solnica emphasizes the importance of separating the domain model from persistence logic, a distinct shift from the ActiveRecord pattern, which forces them to coalesce. - **Evolution of DataMapper**: DataMapper 1 was limited by the ActiveRecord pattern, leading the team to develop DataMapper 2 with a clear focus on reducing the coupling between the database schema and object model. - **New Libraries**: The speaker introduces several key components of DataMapper 2: - **Veritas**: A new relational algebra engine designed for abstract database operation execution, supporting a range of data sources with operations leveraging in-memory execution for unsupported joins. - **Virtus**: A property definition library that enhances the usability of plain Ruby objects, including support for embedded values and collections. - **Equitas**: A refined validation library that updates the validation mechanisms from DataMapper 1. - **Components of DataMapper 2**: Key features include a smaller core library, a new query API, and a unit of work that allows managing data changes through a session-based approach instead of directly manipulating objects as in ActiveRecord. - **Practical Examples**: Solnica provides insights on data manipulation using Veritas with both GitHub API data and PostgreSQL, illustrating the process of mapping data, performing Joins, and executing complex queries seamlessly across different data stores. - **Future Developments**: Throughout the talk, Solnica encourages attendees to follow the ongoing developments of DataMapper 2 as they progress toward stabilization. ### Conclusions: The primary takeaway from Solnica's presentation is the significance of adopting a modular approach that promotes clear separation of business logic and data persistence. By addressing the limitations of ActiveRecord and evolving into a toolkit format, DataMapper 2 aims to enhance flexibility and control for developers dealing with complex applications.
Suggest modifications
Cancel