What does “implementation-agnostic” mean?

雨燕双飞 提交于 2019-12-09 05:24:39

问题


I'm just wondering what "implementation-agnostic" means? I didn't find any explanation. I mean it in this context: "an implementation-agnostic engineering approach".


回答1:


The opposite of "implementation-agnostic" is "implementation-specific". Some examples should make the difference clear:

Implementation-agnostic

Synonym: Implementation-independent

Examples:

  • Sorting algorithm "Quicksort"
  • Algorithms written in pseudo-code

The examples above can be implemented with every language
(Assembler, BASIC, C#, C++, Java, JavaScript, ...)


Implementation-specific

Synonym: Implementation-dependent

Examples:

  • Device drivers
  • Machine language code for Intel processors

The examples above run only on the hardware they are written for.

But also software that depends on other software, drivers, operating systems, services or frameworks is implementation-specific (for example, although .NETs intermediate language MSIL can run on different hardware or operating systems, it still depends on the .NET framework and hence is implementation-specfic).




回答2:


This is often used to discuss a problem without committing to a particular implementation. Doing so may lead to choosing an implementation / tool that's best suited for the problem rather than having to worry about the limitations of an already chosen solution during the problem definition.




回答3:


Agnostic, in this context, means "doesn't care about". So implementation agnostic is something that does not care about the implementation.




回答4:


To say that a solution is implementation-agnostic is to say that it's not reliant on specific technologies, programming languages etc. Pseudocode would be a good example of an implementation-agnostic tool, as would UML for modelling.



来源:https://stackoverflow.com/questions/10969057/what-does-implementation-agnostic-mean

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!