Browse Source

docs(package): improve subject

- improve format
- add link to mentioned project
pull/2514/head
nprimo 1 month ago committed by Niccolò Primo
parent
commit
72378344c4
  1. 49
      subjects/mobile-dev/package/README.md

49
subjects/mobile-dev/package/README.md

@ -1,24 +1,21 @@
# Package
Package can be used to organize and share a set of functions in Dart. It is simply a sharable library or modules.
Package is similar to Dart Application except that Dart Package does not have application entry point - main.
Package is similar to Dart Application except that Dart Package does not have application entry point - `main`.
A minimal package consists of the following:
- pubspec.yaml:
A metadata file that declares the package name, version, author, etc.
- lib:
The lib directory contains the public code of the package, at least one .dart file.
- `pubspec.yaml`: a metadata file that declares the package name, version, author, etc.
- `lib/`: a directory contains the public code of the package, at least one dart file.
### Instructions:
Create a Flutter package for your Secure Notes app. You should write
your own package which will work with sqflite and have CRUD
functionality.
Your package should consist of Database.dart class and Note class which
will allow easy access to SQLite database.
Create a Flutter package for your [Secure Notes app](../secure-notes/README.md).
You should write your own package which will work with [`sqflite`](https://pub.dev/packages/sqflite) and have CRUD functionality.
Your package should consist of `Database` class and `Note` class which will allow easy access to SQLite database.
In the end you should be able to import it like:
```
```dart
import 'package:note/note.dart';
```
@ -31,7 +28,7 @@ import 'package:note/note.dart';
### Database.dart
```
```dart
class Database {
Database _db;
@ -45,26 +42,26 @@ Database _db;
```
Example of Database class, where you should create table "Note" with 4 parameters :
Example of Database class, where you should create table `Note` with 4 parameters:
- id
- title
- body
- date
- `id`
- `title`
- `body`
- `date`
Database class should also have CRUD methods like getAllNotes, deleteAllNotes, addNote, deleteNote, updateNote.
Database class should also have CRUD methods like `getAllNotes`, `deleteAllNotes`, `addNote`, `deleteNote`, `updateNote`.
- getAllNotes()
- deleteAllNotes()
- addNote(note: Note)
- deleteNote(note: Note)
- updateNote(oldNote: Note, newNote: Note)
- `getAllNotes()`
- `deleteAllNotes()`
- `addNote(note: Note)`
- `deleteNote(note: Note)`
- `updateNote(oldNote: Note, newNote: Note)`
### Note.dart
Model class for Note object.
```
```dart
class Note {
int id;
String title;
@ -80,6 +77,6 @@ class Note {
```
### Hints:
### Notions
[https://pub.dev/packages/sqflite](https://pub.dev/packages/sqflite) [https://flutter.dev/docs/development/packages-and-plugins/developing-packages](https://flutter.dev/docs/development/packages-and-plugins/developing-packages)
[Developing packages with Dart](https://flutter.dev/docs/development/packages-and-plugins/developing-packages)

Loading…
Cancel
Save