Έχουν δημοσιευτεί
Κυριακή, 6 Ιουνίου 2010 6:30 μμ
από το μέλος
PALLADIN
Πριν από λίγες μέρες, ένας φίλος μου έστειλε ένα programming puzzle που του τέθηκε κατά την διάρκεια ενός job interview.
Το σκέφτηκα για λίγο και του έστειλα μια πρόχειρη λύση.
Με το που είδε τον κώδικα που του έστειλα, μου απάντησε ότι αποκλείεται να είχαν κάτι τέτοιο στο μυαλό τους.
Επειδή είμαι περίεργος να δω και άλλες ιδέες για το πρόβλημα, όσοι φίλοι
θέλουν, μπορούν να αφήσουν ένα comment με τις ιδέες τους.
Σε επόμενο blog post, θα δώσω την λύση που του έστειλα.
Το puzzle:
Δώστε μια εναλλακτική υλοποίηση της παρακάτω class χωρίς να χρησιμοποιηθεί
κανενός είδους conditional logic construct (if, switch, ()?).
public class Thunk<T>
{
private T value;
private bool flag = false;
private Func<T> func;
public T Value
{
get
{
if(!flag)
{
value = func();
flag = true;
}
return value;
}
}
public Thunk(Func<T> func)
{
this.func = func;
}
}