SlideShare a Scribd company logo
1 of 35
Universitas Sriwijaya
Dart Basics &
Introduction to Flutter
Part 1
About Me
Universitas Sriwijaya
github.com/mfazrinizar
linkedin.com/in/mfazrinizar
instagram.com/mfazrinizar
M. Fazri Nizar
• Mobile Development Team Member
at GDSC UNSRI
Universitas Sriwijaya
Table of Contents
• Why is it Dart?
• Overview of Dart & setting up environment
• Dart Basics (Syntax & Structure):
- Variables & data types
- Functions
- Conditional Operators
- Control flow
Universitas Sriwijaya
Limitations
• Complete deep-code course of Dart.
• Complete Flutter application building
(differed into 4 days of session).
Universitas Sriwijaya
Apa itu Dart?
Universitas Sriwijaya
• Object Oriented Programming (OOP).
• Support development for web, mobile,
desktop, and server.
• Productive-based programming.
2011
Universitas Sriwijaya
dart.dev/overview
Universitas Sriwijaya
dart.dev
Kenapa harus belajar Dart?
Universitas Sriwijaya
Backed by Framework
Universitas Sriwijaya
Getting Started
https://docs.flutter.dev/get-started/install/windows/mobile
Flutter
SDK
Android SDK Toolchain
AVD/Android Emulator
VS Code with Flutter
Extension
Universitas Sriwijaya
Getting Started
Universitas Sriwijaya
Getting Started
USB Debugging
Use your own Android device
https://developer.android.com/codelabs/basic-
android-kotlin-compose-connect-device
Universitas Sriwijaya
Getting Started
DartPad
https://dartpad.dev
Universitas Sriwijaya
Getting Started
Importing Package/Library Commenting
Universitas Sriwijaya
Variables & Data Types
pch.vector via Freepik
Universitas Sriwijaya
Variables & Data Types
Universitas Sriwijaya
Variables & Data Types
final hanya diinisialisasi saat
digunakan.
const harus diinisialisasi dan
diketahui (tidak boleh bernilai null)
Sama-sama bersifat konstan.
Universitas Sriwijaya
Functions
via codeanalogies.com
Universitas Sriwijaya
Functions
Void Non-
Void
Universitas Sriwijaya
Functions
greetPersonOptional('Tono');
atau
greetPersonOptional('Tono', 'Hi');
Universitas Sriwijaya
Functions
greetPersonNamed(name: 'Tono');
atau
greetPersonNamed(name: 'Tono', greeting: 'Hi');
Universitas Sriwijaya
Functions
int result = addNumbersShort(3, 4);
Universitas Sriwijaya
Conditional Operators
Assign result with defaultValue if value is
null
Universitas Sriwijaya
Conditional Operators
Assign message with ‘This is true’ if isTrue ==
true
Universitas Sriwijaya
Conditional Operators
Execute doSomething() if isTrue == true
Universitas Sriwijaya
Control Flow
Universitas Sriwijaya Control Flow
Universitas Sriwijaya Control Flow
Continue =>
skips current true
condition loop
Universitas Sriwijaya
QnA
Universitas Sriwijaya
Quiz
Universitas Sriwijaya
Quiz
1. Yang bukan termasuk dalam control
flow dalam Dart adalah...
A. For loops
B. Try-catch
C. Break & continue
D. Void function()
Universitas Sriwijaya
Quiz
2. Apa itu keyword break dalam Dart?
A. Melewati suatu iterasi true dalam loop
B. Menghentikan proses eksekusi loop
C. Keluar dari suatu fungsi
D. Menunda eksekusi suatu program
Universitas Sriwijaya
Quiz
3. Apa best practice untuk mendeklarasikan
nilai Pi = 3.14159?
A. int Pi = 3.14159
B. double Pi = 3.14159
C. const double Pi = 3.14159
D. final double Pi = 3.14159
Universitas Sriwijaya
Quiz
4. Bagaimana cara mendefinisikan fungsi
tanpa kembalian nilai dalam Dart?
A. function functionName() {}
B. def functionName() {}
C. void functionName() {}
D. int functionName() => ...
A. oof
B. foo
C. Tidak ada output
D. Compilation error
Universitas Sriwijaya
Quiz
5. Apakah outputnya?

More Related Content

Similar to Dart Basics & Introduction to Flutter Part 1

[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...
[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...
[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...
Hiroshi Igaki
 
Software Testing in Cloud Platform A Survey_final
Software Testing in Cloud Platform A Survey_finalSoftware Testing in Cloud Platform A Survey_final
Software Testing in Cloud Platform A Survey_final
www.pixelsolutionbd.com
 
Android Best Practices - Thoughts from the Trenches
Android Best Practices - Thoughts from the TrenchesAndroid Best Practices - Thoughts from the Trenches
Android Best Practices - Thoughts from the Trenches
Anuradha Weeraman
 
Ravinder_Pal_Singh_Resume_Latest
Ravinder_Pal_Singh_Resume_LatestRavinder_Pal_Singh_Resume_Latest
Ravinder_Pal_Singh_Resume_Latest
Ravinder Singh
 

Similar to Dart Basics & Introduction to Flutter Part 1 (20)

Java programming course syllabus
Java programming course syllabus Java programming course syllabus
Java programming course syllabus
 
Core Java Certification
Core Java CertificationCore Java Certification
Core Java Certification
 
W2_ChaitanyaDaphane_Report
W2_ChaitanyaDaphane_ReportW2_ChaitanyaDaphane_Report
W2_ChaitanyaDaphane_Report
 
[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...
[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...
[ICSE2014 SEET]Quantitative Assessment with Using Ticket Driven Development f...
 
Continuous Testing - The Final Frontier
Continuous Testing - The Final FrontierContinuous Testing - The Final Frontier
Continuous Testing - The Final Frontier
 
Software Testing in Cloud Platform A Survey_final
Software Testing in Cloud Platform A Survey_finalSoftware Testing in Cloud Platform A Survey_final
Software Testing in Cloud Platform A Survey_final
 
Advanced java programming
Advanced java programmingAdvanced java programming
Advanced java programming
 
Agile Testing 2020
Agile Testing 2020Agile Testing 2020
Agile Testing 2020
 
Android Best Practices - Thoughts from the Trenches
Android Best Practices - Thoughts from the TrenchesAndroid Best Practices - Thoughts from the Trenches
Android Best Practices - Thoughts from the Trenches
 
mca online self
mca online selfmca online self
mca online self
 
Certified Core Java Developer
Certified Core Java DeveloperCertified Core Java Developer
Certified Core Java Developer
 
Protecting from transient failures in cloud deployments
Protecting from transient failures in cloud deploymentsProtecting from transient failures in cloud deployments
Protecting from transient failures in cloud deployments
 
Functional Programming With Lambdas and Streams in JDK8
 Functional Programming With Lambdas and Streams in JDK8 Functional Programming With Lambdas and Streams in JDK8
Functional Programming With Lambdas and Streams in JDK8
 
strut2
strut2strut2
strut2
 
Ravinder_Pal_Singh_Resume_Latest
Ravinder_Pal_Singh_Resume_LatestRavinder_Pal_Singh_Resume_Latest
Ravinder_Pal_Singh_Resume_Latest
 
Rahul Chauhan 2
Rahul Chauhan 2Rahul Chauhan 2
Rahul Chauhan 2
 
Project Management in 3 Slides
Project Management in 3 SlidesProject Management in 3 Slides
Project Management in 3 Slides
 
DevOps : Integrate, Deliver and Deploy continuously with Visual Studio Team S...
DevOps : Integrate, Deliver and Deploy continuously with Visual Studio Team S...DevOps : Integrate, Deliver and Deploy continuously with Visual Studio Team S...
DevOps : Integrate, Deliver and Deploy continuously with Visual Studio Team S...
 
Best Practices for JSF, Gameduell 2013
Best Practices for JSF, Gameduell 2013Best Practices for JSF, Gameduell 2013
Best Practices for JSF, Gameduell 2013
 
Final Proect Slide on A Social Platfrom For CSE Department of SIU
Final Proect Slide on A Social Platfrom For CSE Department of SIUFinal Proect Slide on A Social Platfrom For CSE Department of SIU
Final Proect Slide on A Social Platfrom For CSE Department of SIU
 

More from pmgdscunsri

More from pmgdscunsri (14)

[InspireHER] Carving Success as Kartini: Strategies in Pursuing Careers
[InspireHER] Carving Success as Kartini: Strategies in Pursuing Careers[InspireHER] Carving Success as Kartini: Strategies in Pursuing Careers
[InspireHER] Carving Success as Kartini: Strategies in Pursuing Careers
 
Leveling Up your Branding and Mastering MERN: Fullstack WebDev
Leveling Up your Branding and Mastering MERN: Fullstack WebDevLeveling Up your Branding and Mastering MERN: Fullstack WebDev
Leveling Up your Branding and Mastering MERN: Fullstack WebDev
 
Deep Learning For Computer Vision- Day 3 Study Jams GDSC Unsri.pptx
Deep Learning For Computer Vision- Day 3 Study Jams GDSC Unsri.pptxDeep Learning For Computer Vision- Day 3 Study Jams GDSC Unsri.pptx
Deep Learning For Computer Vision- Day 3 Study Jams GDSC Unsri.pptx
 
Firebase integration with Flutter
Firebase integration with FlutterFirebase integration with Flutter
Firebase integration with Flutter
 
Building a Flutter App.pptx
Building a Flutter App.pptxBuilding a Flutter App.pptx
Building a Flutter App.pptx
 
Dart Object-Oriented Programming (OOP) and Flutter State Management
Dart Object-Oriented Programming (OOP) and Flutter State ManagementDart Object-Oriented Programming (OOP) and Flutter State Management
Dart Object-Oriented Programming (OOP) and Flutter State Management
 
Convolutional Neural Networks (CNN) for Computer Vision - Day 4 Study Jams G...
Convolutional Neural Networks (CNN) for Computer  Vision - Day 4 Study Jams G...Convolutional Neural Networks (CNN) for Computer  Vision - Day 4 Study Jams G...
Convolutional Neural Networks (CNN) for Computer Vision - Day 4 Study Jams G...
 
Linear Regression, Classification and Data Time Series - Day 2 Study Jams GDS...
Linear Regression, Classification and Data Time Series - Day 2 Study Jams GDS...Linear Regression, Classification and Data Time Series - Day 2 Study Jams GDS...
Linear Regression, Classification and Data Time Series - Day 2 Study Jams GDS...
 
Introduction to Machine Learning - Day 1 Study Jams GDSC Unsri.pptx
Introduction to Machine Learning - Day 1 Study Jams GDSC Unsri.pptxIntroduction to Machine Learning - Day 1 Study Jams GDSC Unsri.pptx
Introduction to Machine Learning - Day 1 Study Jams GDSC Unsri.pptx
 
Seminar and DevTalk : Mastering UX Research - 5 Whys Framework
Seminar and DevTalk : Mastering UX Research - 5 Whys FrameworkSeminar and DevTalk : Mastering UX Research - 5 Whys Framework
Seminar and DevTalk : Mastering UX Research - 5 Whys Framework
 
Seminar and DevTalk : Mastering UX Research - What is UX Research
Seminar and DevTalk : Mastering UX Research - What is UX ResearchSeminar and DevTalk : Mastering UX Research - What is UX Research
Seminar and DevTalk : Mastering UX Research - What is UX Research
 
Info Session Bangkit Academy "Empowering Through Bangkit: Unveiling the Essen...
Info Session Bangkit Academy "Empowering Through Bangkit: Unveiling the Essen...Info Session Bangkit Academy "Empowering Through Bangkit: Unveiling the Essen...
Info Session Bangkit Academy "Empowering Through Bangkit: Unveiling the Essen...
 
Sosialisasi Bangkit 2024: Discovering Bangkit Academy, Capstone, and Incubati...
Sosialisasi Bangkit 2024: Discovering Bangkit Academy, Capstone, and Incubati...Sosialisasi Bangkit 2024: Discovering Bangkit Academy, Capstone, and Incubati...
Sosialisasi Bangkit 2024: Discovering Bangkit Academy, Capstone, and Incubati...
 
Sharing Session Internal : Computer Security
Sharing Session Internal : Computer SecuritySharing Session Internal : Computer Security
Sharing Session Internal : Computer Security
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Dart Basics & Introduction to Flutter Part 1