Czy istnieje jakaś funkcjonalna biblioteka programowania dla Objective-C?Funkcjonalna biblioteka programowania dla Objective-C
Odpowiedz
Można spróbować FunctionalKit
FunctionalKit jest próba wykorzystania paradygmatów funkcjonalne w Objective-C. Jest to zestaw niskopoziomowych typów funkcjonalnych API: &. Zawiera typy, takie jak, opcja, itp., Które pozwalają pisać poprawny, czysty, zwięzły, zwięzły i (jeśli to możliwe) bezpieczny kod. Zapewnia także bardziej zaawansowane koncepcje, takie jak przenoszenie funkcji w monady.
Objective-C nie jest funkcjonalnym językiem programowania (jest to wyraźnie proceduralne OO), więc nie widzę, jak byłoby coś takiego. Jeśli szukasz serwerów lambda i obsługi współbieżności, o to chodzi w Grand Central Dispatch w wersji 10.6.
Pseudo funkcjonalne, jeśli chcesz ... Szukam czegoś w duchu http://functionaljava.org/ i http://code.google.com/p/lambdaj/ dla Java. – luvieere
Uważam to za komplement, że jedyne opinie, jakie otrzymuję, są bez towarzyszących komentarzy. – Chuck
Nitpick: Lambda nie jest wynikiem GCD; są one częścią tego, w jaki sposób korzystasz z GCD. Sprawdź FunctionalKit, przy okazji. W Objective-C można napisać czysty, w większości funkcjonalny i bezpieczny dla kodu kod. –
Można użyć Functional.m do programowania funkcyjnego w Objective-C. To sprawia, że ciężkie użycia i zawiera bloki funkcjonalne swoje zwykłe podejrzanych programistycznych, takich jak mapy, zmniejszyć, filtr, odrzucić itp
Można także wypróbować OCTotallyLazy, port biblioteki Java TotallyLazy.
Na przykład mapowania NSArray Można to zrobić w następujący sposób:
[array(@"one", @"two", @"three", nil) map:^(NSString *item){
return [item uppercaseString];
}];
// Returns array(@"ONE", @"TWO", @"THREE", nil)
Jest też zestaw makr dostępnych, które pozwalają na krótszy składni, na przykład:
#define TL_LAMBDA_SHORTHAND
[array(@"one", @"two", @"three", nil) map:_([_ uppercaseString])];
// Returns array(@"ONE", @"TWO", @"THREE", nil)
Zapewnia również własny typ kolekcji Sekwencja, która leniwie ocenia mapy, filtry itp.
Oto przewodnik użycia TotallyLazy: http://intrepidis.blogspot.com/2013/07/using-totallylazy-functional-library.html –
Jestem wielkim fanem underscore.m.
- 1. Funkcjonalna funkcja programowania zamieszania
- 2. Biblioteka programowania liniowego dla iOS
- 3. Czy istnieje biblioteka programowania funkcjonalnego dla .NET?
- 4. Dobra biblioteka programowania liniowego dla języka C#?
- 5. funkcjonalna hibernate.cfg.xml dla hibernacji 4
- 6. Jaka jest najaktywniejsza biblioteka programowania genetycznego?
- 7. Biblioteka rejestratorów dla iOS
- 8. Biblioteka SNMP dla Androida
- 9. Czym jest funkcjonalna dekompozycja?
- 10. Biblioteka UUID dla C?
- 11. Biblioteka kodów QR dla Go
- 12. ObjectiveC Parse Integer from String
- 13. Wdrożenie ObjectiveC protokół w szybkim
- 14. Różnica między NSLog oraz sprawozdania printf dla ObjectiveC
- 15. W pełni funkcjonalna siatka danych Android
- 16. Szablony edytora dla programowania defensywnego
- 17. UML dla języka programowania C
- 18. . Język Java dla programowania jednoczesnego
- 19. ObjectiveC: gdzie zadeklarować prywatne właściwości instancji?
- 20. Biblioteka SSH dla Java
- 21. Biblioteka rysunków dla Ruby
- 22. Biblioteka wykresów dla Qt
- 23. Biblioteka QR dla MonoTouch?
- 24. Biblioteka SSH2 dla ios
- 25. Biblioteka AS3 dla Socket.io
- 26. Biblioteka VoIP dla Androida
- 27. Biblioteka WebP dla java?
- 28. Biblioteka SASL dla .net
- 29. Biblioteka JSON dla C#
- 30. Biblioteka dla IMAP IDLE
Wygląda na to, że programowanie w stylu funkcjonalnym jest trudniejsze niż wbudowane lambdy i powiązane metody w 10.6, o których wspomniałem w mojej odpowiedzi. – Chuck
Wypróbuj gałąź Blocks of FunctionalKit. Napisałem również system, który automatycznie zawija dowolną operację w typie opcji w środowisku uruchomieniowym, którą wkrótce udostępnię. Bloki i złe wyniki w środowisku wykonawczym sprawiają, że FunctionalKit jest bardzo przydatnym narzędziem, które szeroko stosowałem w moich ostatnich dwóch aplikacjach na iPhone'a. –