A function is a group of statements that perform a specific task. Functions are mostly used to automate the repeated task. They are basically used to divide the large program into smaller chunks. Divide our program into smaller chunks makes it more organized and manageable. Also, it avoids repetition and makes our code reusable.
The bad thing about function is they are famous with several names. Different programming languages name them differently for example functions, methods, sub-routines, procedures, etc. When you hear any one of them just imagine the same concept.
Advantages of Functions
Functions have three major advantages:
They make our code manageable.
They reduce the boilerplate code
They make our code reusable.
Types of Functions
There are basically two types of functions in programming.
Built-in functions are functions that come with language and are ready to use. For example dart print(), readLineSync(), and tryParse*()* are built-in functions. In Dart, there are many libraries, in which all built-in functions are stored and ready to help you. Dart SDK comes with many pre-built libraries like dart: core, dart: async, dart: collection, etc.
Dart libraries come in three major flavours:
Core libraries — Core libraries come directly with the Dart SDK. You can find detailed documentation on Dart API.
Community Shared Libraries — Some libraries are shared with the Dart community and they are distributed as library packages and published at Pub Site. The pub tool allows us to create, publish and manage library packages.
You can also use libraries from GitHub, from a URL, or from a local path. Please visit this for more information.
User define functions
User-defined functions are functions that are created by programmers. You can also create functions according to your needs and those functions will be called User-define functions.
In conclusion, functions are a fundamental concept in programming that allows developers to divide an extensive program into smaller, more manageable chunks. By doing so, functions make the code more organized, reduce repetition, and promote reusability. They come with several names in different programming languages, such as functions, methods, sub-routines, and procedures, but they all represent the same concept.
There are two main types of functions: built-in functions and user-defined functions. Built-in functions are provided by the programming language and are readily available for use. They are stored in libraries that come with the language's SDK and can perform various tasks like printing output, reading input, and parsing data. Dart, for example, comes with core libraries, and community-shared libraries, and allows the use of external libraries from various sources.
On the other hand, user-defined functions are created by programmers to fulfil specific requirements. They allow developers to encapsulate a set of statements that perform a specific task and provide a name to that functionality. By creating user-defined functions, developers can break down complex problems into smaller, more manageable pieces, making the code more organized, easier to maintain, and reusable.
Overall, functions are a powerful tool in programming, offering significant advantages such as improved code manageability, reduced boilerplate code, and enhanced code reusability. They play a crucial role in writing efficient, modular, and maintainable software.
So, guys, That’s all you need to know about Functions. Please let me know if I miss something. I’ll be happy to learn from you. Until then Keep Loving, Keep Coding. I’ll surely catch you up in the following article. Jai Hind, Vande Mataram 🇮🇳
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.