사례 : 회사에서 일하면서 많은 데이터를 배열로 처리하는 Python으로 응용 프로그램을 작성하고 있습니다. 나는 현재이 프로그램의 유일한 개발자이지만, 아마도이 시점에서 다른 프로그래머가 아마도 (1-3 년) 사용하거나 수정하거나 확장 할 것입니다. 아마도 도움을 받기 위해 직접 거기에 없을 수도 있지만 시간이 있으면 이메일을 통해 지원을 제공 할 수도 있습니다.
따라서 함수형 프로그래밍 (Haskell)을 배운 개발자로서 다음과 같은 필터링을 해결하는 경향이 있습니다.
filtered = filter(lambda item: included(item.time, dur), measures)
나머지 코드는 OO입니다. 나에게 따르면 훨씬 간단하고 아름답 기 때문에 이와 같이 해결하려는 작은 경우 일뿐입니다.
질문 : 오늘 이런 코드를 작성해도 괜찮습니까?
- FP를 작성 / 학습하지 않은 개발자는 이와 같은 코드에 어떻게 반응합니까?
- 읽을 수 있습니까?
- 수정 가능?
아이에게 줄이 무엇인지 설명하는 것과 같은 문서를 작성해야합니까?
# Filter out the items from measures for which included(item.time, dur) != True
나는 상사에게 물었다. "FP는 마술이다. 그러나 그것이 효과적이고 가장 효율적인 해결책이라면 그것을 사용해도 좋다"고 말했다.
이것에 대한 당신의 의견은 무엇입니까? 비 FP 프로그래머로서 코드에 어떻게 반응합니까? 코드가 "구글 가능"하므로 코드의 기능을 이해할 수 있습니까? 이것에 대한 의견을 듣고 싶습니다.
# Select the item's from measures for which included(item.time, dur) == True
과 같이 읽을 수 있습니다. , 이중 부정을 피하면 항상 이해력이 향상됩니다.