Citat:
Ursprungligen postat av
bithax
Man får inte använda metoder i standardbiblioteket för att de är ”funktionell programnering”? okej. I java har du list.Sort(). Utgör den funktionell programmering?
Vi kan skriva en egen order by så är det inte funktionell programmering då. Smart.
Jag gillar inte funktionell stil när det blir svårare att förstå (som linq i många fall) och när man bryter mot SOLID för att koden ska bli ”bättre och mer läsbar”.
Nu är ju SOLID specifikt inriktat på OOP, så att funktionell programmering inte uppfyller det är inte så konstigt.
Men det är ju inte så att det innebär att funktionell kod för den delen blir oläslig (vilket för övrigt är rätt så subjektivt). Den som har jobbat med funktionella språk tycker antagligen att koden är mer lättläst.
Men nu handlar tråden om funktionell programmering i ett OOP-språk, så det är väl egentligen en relevant invändning från din sida.
Det går självklart att missbruka LINQ så att man får en lång kedja av komplicerade lambda-funktioner, men använt på "rätt" sätt så tycker jag ändå att koden blir både elegant och lättläst. Särskilt jämfört med imperativ kod med en massa loopar.