God’s creation in Genesis 1 is actually very similar to object oriented development. The idea in object oriented development is that you want to start with the most general use case and then you want to create more definition from there.
In Genesis 1:3-5 God creates a general framework, in which creation can live. He creates light and darkness, day and night. Everything lives in day and night. Secondly, he creates sections of sky, water and land (Gen. 1:6-10) these are the general terrains and atmospheres that humans and animals will reside, but each one is vastly different than the other.
God then begins to get more specific, in Genesis 1:11-19 He begins to give attributes and behaviors to the various environments. He provides the Sun and the Moon for the sky and provides green vegetation for the land.
Finally, God created life in each of the environments (Gen. 1:20-25). He created birds to fly in the sky, all kinds of sea creatures for the water and all the creatures that walk and crawl on the land. In Genesis 1:25 it says “So God made the wildlife of the earth according to their kinds, the livestock according to their kinds, and all the creatures that crawl on the ground according to their kinds” (CSB). The phrase, according to their kinds reminds me of classes in object oriented development. It’s like God had class definitions of the different type of land creatures: wildlife, livestock and crawling creatures. Yet those aren’t even all the creatures God made, those are just the ones that inherit from the “LandAnimal” abstract class.
In Genesis 1:26-28, God decides to create man. Man in some ways inherits from the “creatures that walk on the land” class of animals, yet mankind has something special. An “added Interface” if you will, that provides particular attributes not found in other animals. “Interfaces define and standardize the ways in which things such as people and systems can interact with one another” (Deitel & Deitel, 2018, p. 386). In fact, this Interface is only found in one other definition. God. God provides parts of His character and personality into mankind even though God and humans are completely different, we share a common set of attributes. In a similar way, a programmer can have two completely different classes share similar attributes through an Interface.