Flutter alapú szoftverfejlesztés
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Flutter alapú szoftverfejlesztés
Flutter-based Software Development
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIAUAV45 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | félévközi érdemjegy | ||||||||||||
| Tantárgy kreditértéke | 2 | ||||||||||||
| Tantárgyfelelős |
DR. Ekler Péter
beosztás: egyetemi docens
elérhetőség:
ekler.peter@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Automatizálási és Alkalmazott Informatikai Tanszék
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | — | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzés
|
Hét |
Előadás
anyaga |
|
1. |
A Dart nyelv
rövid története. Dart szintaktikai áttekintés és példakódok bemutatása
DartPadben. A Flutter keretrendszer rövid történelme. A Flutter és Dart SDK-k
telepítése, frissítések kezelése. Az Android Studio konfigurálása, Flutter
plugin telepítése. |
|
2. |
Egy Flutter projekt felépítésének
elemzése. A Flutter alapelemeinek megismerése. A Counter példa app elemzése
Android Studióban. Állapotkezelés StatefulWidget és InheritedWidget
segítségével. |
|
3. |
Főbb
Flutter widgetek: MaterialApp, Appbar, Text, Image, Icon, SizedBox,
Transform. UI elemek elrendezését segítő widgetek. |
|
4. |
Adatbevitelt segítő widgetek.
Material Design elemeket megvalósító widgetek. A képernyők közötti navigáció
megoldásának lehetőségei. Egyedi UI widget tervezése és megvalósítása. |
|
5. |
Listák és rácsos nézetek kezelése.
Lista frissítés. A Sliver rendszer. Animációs lehetőségek. Telefon és tablet
egyidejű támogatása. |
|
6. |
HTTP kapcsolatok alapszintű
kezelése. Kódgenerátorok
telepítése. Tipikus adatformátumok és azok feldolgozási
lehetőségei. Aszinkron kommunikáció kezelése Future-ökkel. |
|
7. |
A hálózati kommunikáció
kezelését megkönnyítő könyvtárak (Dio, Chopper). Egy konkrét HTTP API
megszólítása, a válasz megjelenítése egy alkalmazásban. Widget Key szerepe,
felhasználásuk. |
|
8. |
Perzisztens adattárolási
lehetőségek. Egyszerű kulcs-érték tároló: SharedPreferences és UserDefaults
wrapper. File kezelés, alkalmazás cache és tárhely elérése. ORM adatbázis
kezelő megoldások SQLite alapokon (Moor, Floor). |
|
9. |
NoSQL adatbázis kezelés
(Sembast, Hive). Komplex alkalmazás megvalósítása lista kezeléssel és
adatbázis támogatással. Firebase Adattárolási lehetőségek: real time
adatbázis, Cloud Firestore. |
|
10. |
Backend as a Service
szolgáltatások áttekintése. Firebase képességek. Bejelentkeztetés és felhasználó
kezelés. Crash reporting lehetőségek. Analitika. FlutterFire könyvtárak. |
|
11. |
Állapotkezelés
Provider könyvtárral. BLoC tervezési minta, implementálása bloc és
flutter_bloc könyvtárakkal. MobX állapotkezelés. |
|
12. |
Többnyelvűség
támogatása Flutter alkalmazásban: flutter_localizations, flutter_i18n |
|
13. |
Architektúra rétegek
implementációja (repository réteg, interactor réteg, presenter réteg, reducer
réteg, megjelenítési réteg). Dependency injection. |
|
14. |
Webes és asztali platform
támogatása. Összefoglalás, kitekintés. |
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
Tanulástámogató anyagok
Online források
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Általános szabályok
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Nincs megadva.
Ajánlott tantárgyak
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.