Tämä esimerkki kuvaa, kuinka tehdasmenetelmää voidaan käyttää alustojen välisten käyttöliittymäelementtien luomiseen liittämättä asiakaskoodia konkreettisiin käyttöliittymäluokkiin.
Perusikkunaluokka käyttää erilaisia käyttöliittymäelementtejä ikkunan hahmontamiseen. Eri käyttöjärjestelmissä nämä elementit voivat näyttää hieman erilaisilta, mutta niiden tulisi silti käyttäytyä johdonmukaisesti. Painike Windowsissa on edelleen painike Linuxissa.
Kun tehdasmenetelmä tulee käyttöön, sinun ei tarvitse kirjoittaa uudelleen kunkin käyttöjärjestelmän valintaikkunan logiikkaa. Jos ilmoitamme tehdasmenetelmän, joka tuottaa painikkeita valintaikkunan sisällä, voimme myöhemmin luoda valintaikkunan aliluokan, joka palauttaa Windows-tyyliset painikkeet tehdasmenetelmästä. Alaluokka perii sitten suurimman osan valintaikkunan koodista perusluokalta, mutta tehdasmenetelmän ansiosta se voi tehdä Windows-näköisiä painikkeita ruudulla.
Jotta tämä malli toimisi, perusvalinta-luokan on oltava työskentele abstraktien painikkeiden kanssa: perusluokka tai käyttöliittymä, jota kaikki konkreettiset painikkeet seuraavat. Tällä tavalla valintaikkunan koodi pysyy toiminnallaan sen mukaan, minkä tyyppisten painikkeiden kanssa se toimii.
Voit tietysti soveltaa tätä lähestymistapaa myös muihin käyttöliittymän elementteihin. Jokaisella uudella valintaikkunaan lisäämäsi tehdasmenetelmällä pääset kuitenkin lähemmäksi Abstract Factory -kuviota. Älä pelkää, puhumme tästä mallista myöhemmin.