---
title: "Comment by Harun Wangereka on \"When to use api over implementation.\" | Hashnode"
description: "One question. Why would one prefer api over implementation ?"
url: "https://hashnode.com/posts/when-to-use-api-over-implementation/5d89fbf0834924e9756a255b/comment/5d8a35bb480c27195b861009"
---

[Discussion](https://hashnode.com/posts/when-to-use-api-over-implementation/5d89fbf0834924e9756a255b)

Comment [When to use api over implementation.](https://hashnode.com/posts/when-to-use-api-over-implementation/5d89fbf0834924e9756a255b)

[Harun Wangereka](https://hashnode.com/@wangerekaharun)

[Sep 24, 2019](https://hashnode.com/posts/when-to-use-api-over-implementation/5d89fbf0834924e9756a255b/comment/5d8a35bb480c27195b861009)

One question.

Why would one prefer `api` over `implementation` ?

[David Odari](https://hashnode.com/@davidodari)

[Sep 25, 2019](https://hashnode.com/posts/when-to-use-api-over-implementation/5d89fbf0834924e9756a255b/comment/5d8a35bb480c27195b861009#reply-5d8b4708c587eecd750a4be9)

from my case I found it useful only when you need to expose a library to other modules,for example lets say a library like firebase ui built on top of other firebase libraries other than implementing all this libraries again while you can use api to expose them to other modules in the event you need to go beyond the abstraction

[Harun Wangereka](https://hashnode.com/@wangerekaharun)

[Sep 25, 2019](https://hashnode.com/posts/when-to-use-api-over-implementation/5d89fbf0834924e9756a255b/comment/5d8a35bb480c27195b861009#reply-5d8b49dbc587eecd750a4c8b)

Nice.I get it now.
