Factories form the basis of production industry. Are there factories in the software world?
Factories can be in any industry. Factories essentially puts the required machinery in place and sets a process around it. In case of automobile industry, from cars to airplanes, we call it an assembly line. In case of pharmaceutical industry, there are manufacturing units that convert chemicals to packaged drugs.
In case of software too there are factories. The idea of having factories in this world is to take care of the common processes which are essential in (good) software development. Some processes are inbuilt in the development platform. These assemblies can be included by anyone using that particular platform. Other processes are developed by software engineers to use and reuse their best practices. These processes are activities like error logging, messaging, sending alerts and emails, maintaining connections with databases and so on. Factories in software provide the necessary efficiency and reduces the probability of human error.