Caso : estoy trabajando en una empresa, escribiendo una aplicación en Python que está manejando una gran cantidad de datos en arreglos. Soy el único desarrollador de este programa en este momento, pero probablemente será utilizado / modificado / extendido en el futuro (1-3 años) por otro programador, en este momento desconocido para mí. Probablemente no estaré allí directamente para ayudarlo, pero quizás le ofrezca asistencia por correo electrónico si tengo tiempo para hacerlo.
Entonces, como desarrollador que ha aprendido programación funcional (Haskell), tiendo a resolver, por ejemplo, filtrar de esta manera:
filtered = filter(lambda item: included(item.time, dur), measures)
El resto del código es OO, son solo algunos casos pequeños en los que quiero resolverlo así, porque es mucho más simple y hermoso según mi opinión.
Pregunta : ¿Está bien hoy escribir código como este?
- ¿Cómo reacciona un desarrollador que no ha escrito / aprendido FP a un código como este?
- ¿Es legible?
- ¿Modificable?
-
¿Debo escribir documentación como explicando a un niño qué hace la línea?
# Filter out the items from measures for which included(item.time, dur) != True
Le he preguntado a mi jefe y él simplemente dice "FP es magia negra, pero si funciona y es la solución más eficiente, está bien usarla".
¿Cuál es tu opinión sobre esto? Como programador no FP, ¿cómo reaccionas al código? ¿Es el código "googable" para que pueda entender lo que hace? Me encantaría recibir comentarios sobre esto.