api-design

Najlepsze praktyki paginacji API

Chciałbym trochę pomóc w obsłudze dziwnej sprawy edge z paginated API, które buduję. Jak wiele API, ten paginuje Duże wyniki ... była jak najlżejsza (np. unikanie obsługi sesji dla żądań API). Przykłady z innych interfejsów API będą bardzo mile widziane!

Dlaczego strumienie Java są jednorazowe?

W Przeciwieństwie Do C# 's IEnumerable, Gdzie potok wykonawczy może być wykonywany tyle razy ile chcemy, w Javie strumień moż ... nia. I nie da się tego zrobić w Javie! Nie mogę nawet zapytać strumienia, czy jest pusty, bez uczynienia go bezużytecznym.

Jak zdefiniować dobre lub złe API? [zamknięte]

Background: Chodzę na zajęcia na mojej uczelni o nazwie "Software Constraints". Na pierwszych wykładach uczyliśmy się jak b ... rytej" złożoności. od użytkownika/dewelopera wymagane jest zbudowanie wrapperów wokół API, aby można było z niego korzystać.

Jaki jest właściwy kod odpowiedzi REST dla poprawnego żądania, ale pustych danych?

Na przykład uruchamiasz żądanie GET dla users/9, ale nie ma Użytkownika o id # 9. Jaki jest najlepszy kod odpowiedzi? 200 OK 202]} 204 Brak Treści 400 Bad Request 404 Nie Znaleziono

Najlepsze praktyki i wytyczne dotyczące projektowania API [zamknięty]

Jakie są wytyczne i najlepsze praktyki, których mogę przestrzegać podczas projektowania API? Wiem, że API powinno być łatwe ... Niestety terminy te mogą być raczej subiektywne, więc szukałem konkretnych wytycznych dotyczących dobrego projektowania API.

Wersjonowanie REST api (tylko wersja reprezentacji, nie sam zasób)

Przyjrzałem się najlepszym praktykom wersjonowania API?, ale nie jestem do końca przekonany do odpowiedzi, więc ponownie kwes ... do Content-negotiation(jako queryParam lub HTTP 'Accept'). Co o tym myślisz? W jakich rzeczach byś nie zgadzam się/Zgadzam?

Dlaczego ciągnie.valueOf (null) throw a NullPointerException?

Zgodnie z dokumentacją, metoda String.valueOf(Object obj) zwraca: Jeśli argumentem jest null, to łańcuch równy "null"; w ... at java.lang.String.valueOf(Unknown Source) Jak to się dzieje? Czy dokumentacja mnie okłamuje? Czy to poważny błąd w Javie?

Projektowanie API i jQuery

Często słyszałem, że jQuery podjął złe decyzje dotyczące API. Chociaż jQuery nie jest moją ulubioną biblioteką, jest to bibli ... Proszę nie porównywać biblioteki jQuery do pełnowartościowych frameworków takich jak dojo i YUI i narzekać na brak funkcji.

Kiedy definiować metody objective-c?

Uczę się Objective-C i mam doświadczenie w C / C++. W zorientowanym obiektowo C++ zawsze musisz zadeklarować swoją metodę ... dy dziedziczone nigdy nie są (re)definiowane. Czy jestem na dobrej drodze? Kiedy należy zdefiniować selektor w Objective-C?

Semantyka punktu końcowego API

Jest punktem końcowym API 'metoda', jak https://api.foursquare.com/v2/venues/ lub pełny adres URL zawierający parametry niez ... wa oddzielne punkty końcowe są uznawane za ten sam punkt końcowy? http://myapi.com/somemodel/1http://myapi.com/somemodel/2

Dlaczego int num = Integer.getInteger ("123") throw NullPointerException?

Następujący kod rzuca NullPointerException: int num = Integer.getInteger("123"); Czy mój kompilator wywołuje getInteger Na null, ponieważ jest statyczny? To nie ma sensu! Co się dzieje?

RESTful design: kiedy korzystać z sub-zasobów?

Podczas projektowania hierarchii zasobów, kiedy należy używać pod-zasobów? Kiedyś wierzyłem, że gdy zasób nie może istnieć b ... entować fakt, że zasobu Nie można zidentyfikować bez innego? jakie relacje oznaczają sub-zasoby, a nie mają być modelowane?

Kiedy powinniśmy utworzyć własne klasy WYJĄTKÓW Javy?

Z punktu widzenia dobrego projektu / praktyki, kiedy powinniśmy tworzyć i używać niestandardowych klas WYJĄTKÓW Javy zamiast ... ej strony istnieją aplikacje, które definiują niestandardowe wyjątki dla wszystkiego. Jaka jest najlepsza praktyka? Dzięki!

Jak zbudować dobre (webowe) API

Zamierzam zbudować API dla aplikacji internetowej i interesuje mnie to, co ludzie mogą sugerować jako dobre praktyki. Już pl ... ylko to, na co pozwala api). Czy ktoś ma inne pomysły lub przykłady stron ze szczególnie dobrymi API, z których korzystałeś?

Czy płynne interfejsy łamią prawo Demeter?

Artykuł Wikipedii o prawie Demeter mówi: Prawo można określić po prostu jako "użyj tylko jednej kropki". Jednak pros ... ) .Watermark("Monkey") .RoundCorners(100, Color.Bisque) .Save("test.png"); } Więc to idzie w parze?

Dlaczego jest Java date API (java.util.Data,.Kalendarz) taki bałagan?

Jak większość ludzi jest teraz boleśnie świadoma, Java API do obsługi dat kalendarzowych (w szczególności klas java.util.Date ... ące jest zrozumienie, jak projektowanie API może pójść źle. W końcu błędy są zawsze dobrą okazją do nauki (i jestem ciekawa).

GB English, czy US English?

Jeśli posiadasz API i jesteś deweloperem z Wielkiej Brytanii o międzynarodowej publiczności, powinieneś mieć API setColour( ... orykają się z pisownią GB, czy jest to normalnie dość oczywiste, co rzeczy znaczą? Czy to wszystko powinno być po angielsku?

Kiedy interfejs API jest zbyt rozbudowany? [zamknięte]

Gardzę pracą z nadmiernie rozbudowanymi API, które nie ułatwiają prostych rzeczy. Niemniej jednak pracuję nad zaprojektowani ... zywiste niż ktokolwiek inny. Jakie są sygnały ostrzegawcze z perspektywy dewelopera, że Twoje API może być zbyt rozbudowane?

REST API Design: zagnieżdżona Kolekcja vs. Nowy Root

To pytanie dotyczy optymalnego projektu REST API i problemu z wyborem pomiędzy zagnieżdżonymi zasobami a kolekcjami poziomu g ... , co sprawia, że wszystko jest jeszcze bardziej mylące. Czy Jest jakiś środek czyszczący, trzeci sposób, o którym nie myślę?

Projektowanie API z oznaczonymi kluczami klienta

Projektuję JSON Web API i chcę odróżnić klientów za pomocą unikalnych identyfikatorów, w celu monitorowania użycia i blokowan ... ytelniania lub bezpieczeństwa, ale jak wymagać od użytkowników zewnętrznych dodatkowego użycia klucza API (!) do autoryzacji!