2009-12-03 18 views
12

Q: Aynı modül dosyasında birden çok davranış tanımlamak artıları ve eksileri hakkında bir fikrim var.Erlang: Aynı modülde tanımlanan birden fazla davranış?

E.g. düzeni bu tür kullanarak

-module(someapp_sup). 
-behavior(supervisor). 
-behavior(application). 

, ben (bütün uygulama someapp_sup:start() yoluyla başlatılır) idame tarafında çok yitirmeksizin iken bir modül dosyası kaydedebilirsiniz.

+0

+1, Aynı şeyi merak ediyordum, ancak bu kafa karıştırıcı bir uygulamadır. – Dacav

cevap

15

Davranışta tanımlanan geri aramalar, başka bir davranışın geri çağrılmasıyla çelişmediği sürece (örneğin, kendi davranışınızı tanımladığınızı varsayalım), bunu daha karmaşık kafa karıştırıcı kodlarla yapmaktan başka bir sorun yoktur. Açıkçası, bazı iyi yerleştirilmiş yorumlarla ve bu kodu dosyada mantıklı bir şekilde ortaya koyabilirsiniz.

+5

Tam olarak. Davranışları OO dünyasındaki arayüzlerle aynı şekilde tedavi edebilirsiniz. – Zed

+0

Bu, kendimi düşündüğüm ama daha bilgili bir kalabalıkla kontrol etmek istediğim şeydi. Teşekkürler beyler! – jldupont

İlgili konular