Definition of Polymorphism and its role in the atPlatform
The condition of occurring in several different forms.
Polymorphism on the atPlatform is the ability to share different data depending on the context of who’s asking. atPlatform applications enable you to set up multiple personas for different areas of your life. When you share data with someone else, the value of that data may be different depending on the person receiving that data. This is true for both sides, you may ask for data from different sources and get a different answer for each one.
The @buzz app is a stellar example of polymorphic data on the atPlatform. @buzz is like your contacts application, but with a twist. Rather than manually entering details for all of your contacts, and having to deal with duplicate contact entries from trying to sync all of your contacts over the cloud, you simply connect with someone through their atSign. In @buzz, they can create and share a specific persona with you. For example, I might want to share my work phone and email with colleagues, but my phone and a different email with friends. I can set up separate “work” and “friends” personas with each set of information, so when I connect with someone new, all I have to do is share the correct persona with that person. Better yet, if I want to share multiple personas, I can do that too! If I move or change my email address, I can update my information in the app, and my contacts have access to the new information and don’t have to make any edits themselves.
@alice’s work persona may have a different value for email than her persona. When she shares her email with her colleagues, they will receive her work email, however, when she shares it with her friends and family, they will see her personal email. As she updates the data in each of her personas, the changes will be reflected in each person that she has shared the data with.
To learn more about polymorphism see this article post