Esta pregunta trata sobre el estilo de nomenclatura variable en el objetivo cy cacao. Solo quiero enfatizar que no estoy buscando una respuesta "correcta", solo buenas ideas.Convenios de nomenclatura de instancias de instancia en Cocoa
He leído las guías de estilo objetivas c de Apple y Google y no estoy muy contento con ninguna de ellas. La guía de Apple no tiene ninguna recomendación de estilo real con respecto a las variables de instancia frente a las variables locales. De hecho, la biblioteca Cocoa en sí misma parece perfectamente feliz de tener parámetros de función del mismo nombre que las variables de instancia. Eso me hace temblar personalmente.
La guía de Googles especifica que las variables de instancia se deben indicar con un guión bajo final. De acuerdo, todo está muy bien, pero sugiere que sinteticemos todas las propiedades públicas con @synthesize property = property_. No sé de nadie más, pero me condenaré si voy a hacer eso para cada variable de instancia en mi proyecto. Creo que es una solución derrochadora y confusa.
Tengo la tentación de ir con el estilo de nombre myX (por ejemplo, "myInstanceVariable") para las propiedades de los objetos, pero rara vez he visto ese estilo en el objetivo c.
Así que sí, ¿qué usas? ¿Hay alguna convención de estilo que desconozca que haya encontrado útil? ¿Cree que los parámetros de la función con el mismo nombre que las variables de instancia son peligrosos, especialmente en múltiples entornos de desarrollador? Gracias chicos y chicas!
NOTA - Como mucha gente ha señalado, mi terminología no estaba en el OP. Disculpas si la redacción original dañó la claridad, pero creo que el punto aún estaba claro.
Buena respuesta. Estoy de acuerdo en que prefijar el parámetro es más limpio que tratar de calzar una convención en variables de instancia objetivo c. Los documentos de Apple describen las convenciones para esto en el caso de los tipos comunes de objetos NSO, por lo que extenderlo para sus propios tipos tiene mucho sentido. Estoy marcando esto como la respuesta porque responde mejor al punto principal de mi pregunta, evitando el espaciado de nombres ambiguos en las funciones de clase, y no agrega ninguna convención o solución alternativa. – DougW