"ToDo-List" is a personal notes management application. Using this application, user can add new notes, update the notes, delete the notes, read the created notes, and search saved notes. Notes could be consideres as an essential feature in mobile devices. The application should consist straightforward interfaces with efficient user experience for convenient usability.
The requirements of the applications are;
This feature would allow the application user to create a new note in the “ToDo-List” application, based on the choice of the user. This feature would require the user to enter the desired ‘title’ of the note and then the ‘content’ related with the specific note to create a new note.
This feature would act as the primary requirement of the application. This feature allows the user to view the list of all created notes in a list view, which would be the home screen of the application.
This feature would assist the user to update changes in any existing note. The user would be able to edit the existing note ‘title’ as well as its ‘content’ and the save the changes of the specific note.
This feature allows the user to delete any unnecessary notes created in the application. The user would be able to select any existing note from the ‘view existing notes’ section and delete the specific note.
Dart programming language has been selected to program the required ToDo-List application. Dart is a free and open-source OOP (Object-Oriented Programming) language, consisted with C-based composition developed by Google LLC. Dart is majorly used to design the frontend user interfaces for mobile applications. It supports common concepts of programming languages like classes, interfaces, functions. Moreover, Dart is also a compiled language, the code requires to be compiled to machine code before being executed during development.
Flutter framework has been selected to assist the application development with Dart language. Flutter is an open-source and free mobile application user interface framework released by Google LLC. Flutter is well-known for its ability to design a native mobile application using one codebase. The Flutter framework is consisted of an SDK (Software Development Kit), which assists with tools used for development. It also consists a widget-based UI (User Interface) library, with a group of reusable UI elements.
The ToDo-List application will be implemented using cross-platform development technique. Cross-platform is a development methodology procedure that allows application implementation to be able work on multiple mobile operating systems concurrently, mainly including iOS, Android and Microsoft Windows. These applications are programmed with native codes along with independent codes supporting multiple platforms, which increases the development efficiency and effectiveness.
The ToDo-List application would be developed using SQLite database system for the backend procedures. SQLite is a software library that would provide a relational database management system for the Dart + Flutter application. SQLite is popular among developers due to its serverless, self-contained and transactional abilities. Moreover, the database also has way less configuration requirements compared to similar database systems.