site:geeksforgeeks.org facade vs proxy pattern - Search