Dart SDK: What's inside it?
Tags: dart, todayilearned, code, beginners
Published: 2019-09-02 15:09:38

##What is the SDK?
****

**SDK means Software Development Kit.** SDK is a package in which various tools are packed to develop software for a particular platform. Every platform’s SDK gives you different tools, libraries, and software that can help you create the software for that platform.

For example, Java’s JDK (Java Development Kit) provides you various tools, libraries and virtual machine for developing the apps for Java’s Platform. Same Android SDK provides you various tools and libraries for developing apps in android.

##Dart SDK
***
![Image](https://miro.medium.com/max/971/1*43lDtvCk_0BKEssQfDSZQA.png)

The Dart SDK has libraries and tools that you need to develop your apps. This is a general structure of Dart’s SDK folder.

* **lib directory** — Includes Dart Standard Libraries.

* **bin directory** — Includes tools that you need to develop apps like dart2js compiler, dartfmt, dartanalyzer, etc.

* **include directory** — Contained some necessary header-files.

* **version file** — Shows the current dart version that is installed on your system.

* **LICENSE file** — Standard SDK license.

* **README file** — Shows information about directories and files that are shipped with SDK.


##Dart SDK’s Tools
***

Dart SDK contains seven tools that are necessary for developing dart applications.

1. **DartVM** — The Dart Virtual Machine

2. **dart2js** — Dart to JavaScript transpiler (for web use only) (for deployable JavaScript)
3. **dartdevc** — Dart to JavaScript transpiler (for web use only) (for testing purpose)

4. **dartfmt** — The Dart code formatter

5. **dartanalyzer** — Analyze the code for errors and warnings that are specified in the dart language specification. DartPad, code editors, and IDEs such as Android Studio, IntelliJ IDEA, and VS Code use the same analysis engine that dartanalyzer uses.

6. **Dartdoc** — The API documentation generator.

7. **pub** — The Dart package manager. You can use the `pub` tool to manage Dart packages. *The Flutter SDK has its own commands for managing and updating packages.*


##About release channels and version strings
***

The Dart SDK has two release channels:

* **Stable channel** — Updated no more frequently than every 6 weeks.
* **Dev channel** — Usually updated 1/week.

**Stable channel** releases of the Dart SDK have version strings like `1.24.3` and `2.1.0`. They consist of dot-separated integers, with no hyphens or letters.

**Dev channel** releases of the Dart SDK (pre-releases) have additional characters, starting with a hyphen (`-`). For example, Dart 2 pre-releases have version numbers starting with `2.0.0-dev` such as `2.0.0-dev.69.5`.

So that’s all you need to know as a dart programmer about Dart SDK. Feel free to let me know if I miss something. I’ll love to learn that.

Till Then Keep Loving, Keep Coding.


Remember no teacher, no book, no video tutorial, or no blog can teach you everything. As one said Learning is Journey and Journey never ends. Just collect some data from here and there, read it, learn it, practice it, and try to apply it. Don’t feel hesitate that you can’t do that or you don’t know this concept or that concept. Remember every programmer was passed from the path on which you are walking right now. Remember Every Master was Once a Beginner. Work hard and Give your best.

###For More Information Please Visit Following Links
* [Fuchsia OS official site](https://fuchsia.dev/)
* [Dart official site](https://dart.dev/)
* [Flutter official site](https://flutter.dev/)


Jai Hind, Vande Mataram 🇮🇳

Wanna get in touch with me? Here are links. I’ll love to become your friend. 😊

- [My Site] (https://www.jaytillu.in)
- [My Blogs] (https://blogs.jaytillu.in)
- [Twitter](https://twitter.com/jay_tillu)
- [Facebook](https://www.facebook.com/jaytillu.1314/)
- [Instagram](https://www.facebook.com/jaytillu.1314/)
- [Medium](https://medium.com/jay-tillu)
- [LinkedIn](https://www.linkedin.com/in/jaytillu/)
- [Github](https://www.github.com/jay-tillu)
- [Stack overflow](https://stackoverflow.com/users/8509590/jay-tillu)
or just mail me at jd.tillu@gmail.com