As far i can see from all the previous answers i summarize this. let's see at least if we share some points here:
- The *er convention is not better or worse than the *able convention, the former may apply better in some scenarios than the latter. - The "er" suffix goes like a charm with most of the verbs, i guess that's why the convention enforces the use on interfaces with a single method, because you are able to describe the interface by the sole thing that it does. - The "er" suffix causes confusion when applied on a subject. Stringer, for example, still doesn't have any sense...; this is where the purpose of the *er convention gets me dizzy. - The "able" suffix works with most of the verbs and subjects alike. Recall in java as everthing is an object, the client code is within an object, and that object would be the one sending the message to (or "invoke method of") the *able interface. This is part of the "vision" enforced by the *able convention, worth to mention in order to understand the intend. - The "able" suffix adds indirection (regarding who will perform an action), where the "er" is direct (you know who will perform an action), my thoughts on this is that each convention allow to see the same scenario from a different sides. - Example: If i see an abstraction called reader i would expect it to have the behaviour to perform reads (over things that are readable), on the other side if see an abstraction called Readable, I would expect it to have the behaviour that allows it be readable (by things that are reader). - From what perspective would be correct to approach the scenario? i guess there is no predefined answer to this as it is something specific to the business domain and is up to the dev team to decide what is need to be done. Each approach will lead you to different code. I do believe in honour the language conventions the same as i believe on doing the things the right way, V El sáb., 19 ene. 2019 a las 3:29, Frank Dunn (<fr...@dunnspace.org>) escribió: > Readable is an adjective as in "This is a readable comment." Reader is a > noun as in "Frank is a reader of comments." Read is a verb as in "Read this > comment." > > So what part of speech would interfaces be? It seems in idiomatic Go they > would be nouns that can take action. i.e. things that read. Since they are > defined in terms of functions this makes some sense. Since Frank can read > he is a reader. > > However if they are nouns that can be acted upon i.e. things that can be > read then using an adjective makes more sense. This comment is readable. > > Thoughts? > > -- > You received this message because you are subscribed to a topic in the > Google Groups "golang-nuts" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/golang-nuts/nzYmUimJUhE/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > golang-nuts+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.