4
votes
2answers
115 views

Establishing an API to provide end-user apps/scripts access to multiple types of databases

Question and Context I am currently working on a project where the main question is, how do we insert an API between the database and end-users who may develop applications/scripts of their own that ...
1
vote
4answers
298 views

When should code favour optimization over readability and ease-of-use?

I am in the process of designing a small library, where one of my design goals is that the API should be as close to the domain language as possible. While working on the design, I've noticed that ...
3
votes
1answer
164 views

When designing an enterprise API, what level is appropriate for separating libraries?

Assume we are developing a REST system for an enterprise company to expose the companies resources in a Java based application. Ultimately you have one web application, and domain libraries. My ...
3
votes
3answers
441 views

Designing an API on top with Java RMI and Rest APIs

I'm working on the backend of a java web application. We have a document repository (Fedora Commons specifically) where we house xml files. I want to abstract the API of the repository internally so ...
5
votes
2answers
133 views

API design involving standard and custom settings

Suppose a class allows some kind of configuration that has some well-known default values but also has the option of defining a custom value. For example, suppose you want to let users configure a ...
0
votes
1answer
483 views

Conceptually speaking, how would I pull facebook wall posts from 100k users?

Not looking for any code snippets here, so here goes: Let's say 100,000 users on my web app have authorized my application to connect to facebook (with or without offline_access). I want to build a ...
3
votes
5answers
331 views

When Interfacing with a 3rd Party API, What Can Make Things Challenging?

Reuse of components in development of software program are always exposed through the API's. Most of the products in today's world (such a facebook, google, .Net, JDK, ...) provide API's to reuse ...
3
votes
5answers
377 views

In my API, how can I make knowing implementation details unnecessary?

Is it feasible that we have a layer of API simply for the reason so that people in the team don't have to understand the actual implementation of the individual components each of us are working on? ...
45
votes
4answers
1k views

Why were Java collections implemented with “optional methods” in the interface?

During my first implementation extending the Java collection framework, I was quite surprised to see that the collection interface contains methods declared as optional. The implementer is expected ...
4
votes
3answers
472 views

What should I name these methods?

I have two interfaces, one with and one without generic type parameters. The non-generic interface is used internally so that I can store instances of the generic interface in a collection. All would ...
5
votes
10answers
326 views

What is the term that means “keeping the arguments for different API calls as similar as possible”?

There is a word which I can never remember... it expresses a design goal that API calls (or functions or methods or whatever) should be as similar as reasonably possible in their argument patterns. ...
4
votes
2answers
436 views

What are the best patterns/designs for stateful API development?

I am about to implement a API for my TCP/IP server written in Java. Right now I have a temporary method that takes a String, executes a command based on the String and returns a String basically like ...
9
votes
6answers
2k views

Are Java's public fields just a tragic historical design flaw at this point?

It seems to be Java orthodoxy at this point that one should basically never use public fields for object state. (I don't necessarily agree, but that's not relevant to my question.) Given that, would ...
11
votes
4answers
1k views

What do you think of Android API design?

When I got acquainted with Android platform my first impression was WOW, that's must be a super awesome thing. But when I started developing for it I felt that its learning curve could be simpler. ...
2
votes
1answer
232 views

Question about API and Web application code sharing

This is a design question. I have a multi part application with several user types. There is a user client for the patient that interacts with a web service. There is an API evolving behind the web ...
7
votes
6answers
342 views

What core principles would you want in a library?

Theres talk about what syntax and feature you like in a programming language; i'll now ask what core principles or feature would you like in a library in your favorite (or any) language? An example ...