APIDesign
Everything on SkillVeris tagged APIDesign — collected across the glossary, study notes, blog, and cheat sheets.
44 resources across 1 library
Interview Questions(44)
GraphQL vs REST: How Do They Fetch Data From Databases Differently?
REST exposes fixed, resource-shaped endpoints that each return a predetermined set of columns and joins decided by the server, while GraphQL exposes a single e…
How Do You Implement API Rate Limiting With Database-Backed Counters?
Database-backed rate limiting stores a per-client request counter and a time window in a row, atomically incrementing that counter on each request and rejectin…
Public vs Private vs Protected
"public" members are accessible from any class anywhere, "private" members are accessible only within the declaring class itself, and “protected” members are a…
What is a Final Class in OOP?
A final class is a class declared with the final keyword so it cannot be subclassed by any other class, locking its implementation as the end of the inheritanc…
What is Operator Overloading in OOP?
Operator overloading is the object-oriented feature that lets a class redefine what a built-in operator, such as +, ==, or [], means when applied to its own ob…
What is a Fluent Interface in OOP?
A fluent interface is an API design style in which methods return the object itself (typically 'this'), allowing consecutive calls to be chained together into…
What is Method Chaining in OOP?
Method chaining is the technique of invoking multiple methods sequentially on the same object in a single expression, where each method call returns a value th…
What is Information Hiding?
Information hiding is the software design principle of concealing a module’s internal design decisions — data structures, algorithms, and implementation choice…
Information Hiding vs Encapsulation
Information hiding is the design-level principle of concealing decisions likely to change behind a stable interface, while encapsulation is the language-level…
Facade vs Adapter Pattern
A Facade pattern provides a single, simplified interface over a complex subsystem of multiple classes, while an Adapter pattern converts one existing interface…
Header Interface vs Role Interface
A header interface exposes every public method of a single concrete class as one large interface mirroring that class, while a role interface is a small, clien…
What is a Protocol in Swift?
A Swift protocol is a blueprint of methods, properties, and other requirements that a class, struct, or enum can adopt and conform to, functioning like an inte…
Protocols vs Interfaces
Protocols and interfaces both define a contract of requirements a type must satisfy, but a protocol (as in Swift or Python) can typically be adopted by value t…
HTTP Status Codes Explained in Detail
HTTP status codes are three-digit responses that classify the outcome of a request into five families — 1xx informational, 2xx success, 3xx redirection, 4xx cl…
What is Rate Limiting?
Rate limiting is the practice of capping how many requests a client can make to a service within a given time window, protecting the system from overload and a…
What is Idempotency in System Design?
Idempotency means that performing the same operation multiple times produces the same result as performing it once, so retries or duplicate requests do not cau…
How to Design a Rate Limiter?
A rate limiter is designed by choosing an algorithm (token bucket, leaky bucket, fixed window, or sliding window log) that tracks request counts per client key…
How to Design an API Rate Limiter
An API rate limiter design centers on a shared, low-latency counter store (typically Redis) that tracks per-client request counts using a sliding-window or tok…
What is Retry with Exponential Backoff?
Retry with exponential backoff is a strategy for re-attempting a failed request after progressively longer wait times between each retry, often with added rand…
How Do You Version an API at Scale?
API versioning is the discipline of introducing breaking changes without disrupting existing clients, typically by embedding a version marker in the URL path,…
GraphQL vs REST at Scale: How Do You Choose?
REST exposes fixed, resource-shaped endpoints that are simple to cache and operate at scale, while GraphQL exposes a single endpoint with a flexible query lang…
Long Polling vs Server-Sent Events: Which for Real-Time Updates?
Long polling simulates real-time delivery by having the client repeatedly open an HTTP request that the server holds open until new data exists or a timeout hi…
What Are the Main Rate Limiting Algorithms?
The main rate limiting algorithms are token bucket, leaky bucket, fixed window counter, sliding window log, and sliding window counter, each trading off burst…
Token Bucket vs Leaky Bucket: What Is the Difference?
Token bucket allows bursts of traffic up to a stored capacity of accumulated tokens while enforcing a long-run average rate, whereas leaky bucket forces reques…
Showing 24 of 44.