Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the definition of an implementation detail? [closed]

Tags:

terminology

I see this term on the internet a lot (in fact, typing it on google returns a lot of results).

What is the exact definition of an "implementation detail"?

like image 280
GurdeepS Avatar asked Nov 22 '09 03:11

GurdeepS


People also ask

How to describe an implementation?

Implementation is the execution or practice of a plan, a method or any design, idea, model, specification, standard or policy for doing something. As such, implementation is the action that must follow any preliminary thinking for something to actually happen.

What is implementation details in Java?

The implements keyword is used to implement an interface . The interface keyword is used to declare a special type of class that only contains abstract methods. To access the interface methods, the interface must be "implemented" (kinda like inherited) by another class with the implements keyword (instead of extends ).

Which class does not include implementation details?

Abstract classes are similar to interfaces. You cannot instantiate them, and they may contain a mix of methods declared with or without an implementation.

What is functionality and implementation?

The term implementation details are the code you write inside your function. The term functionality it the method signature or the things you want to expose to the calling client. This is how you want your method to be used.


1 Answers

It's a behavior produced by code which may be relied on by consuming code, though that behavior is not specified by the spec the code is written to. Hence, other implementations of the same spec may not exhibit the same behavior, and will break that consuming code. That's why it's bad to rely on them.

For instance, if you were to write some code against a list interface which specified an array sort but not the algorithm it used, and you needed the sort method to be stable, and a version of your code was used with a non-stable sort algorithm, then your code would break.

like image 105
RCIX Avatar answered Sep 21 '22 12:09

RCIX