Descubre cómo usar Flutter en este completo curso para principiantes. Flutter es un kit de desarrollo de software de interfaz de usuario de código abierto que se utiliza para crear aplicaciones multiplataforma para iOS, Android, Windows, Mac y más. 💻 Repo GitHub: ✏️ Curso desarrollado por Vandad Nahavandipoor. Echa un vistazo a su canal: 🔗 Grupo de estudio de Discord (para preguntas y respuestas sobre este curso): 🔗 Configuración de Firebase CLI y FlutterFire CLI en Windows: ⭐️ Contenido del curso ⭐️ ⌨️ (00:00:00) Introducción ⌨️ ( 00:02:57) ) Cuenta de desarrollador ⌨️ (00:39:12) Configuración ⌨️ (01:14:42) Introducción a Dart ⌨️ (02:01:26) Declaraciones y colecciones de control de Dart ⌨️ (02:46:44) Seguridad de Sound Null en Dart ⌨️ (03:27:12) Enumeraciones, clases y objetos Dart ⌨️ (04:18:36) Dart avanzado ⌨️ (05:00:41) Configuración del proyecto ⌨️ (05:48:30) Configuración de la aplicación iOS ⌨️ (06:59: 32) Configuración de la aplicación de Android ⌨️ (07:31:31) Configuración del backend de Firebase ⌨️ (08:01:20) Pantalla de registro básico ⌨️ (09:04:54) Ver inicio de sesión ⌨️ (09:53:10) Separar la inicialización de la aplicación del inicio de sesión y pantallas de registro ⌨️ (10:19:47) Configuración de Git y GitHub ⌨️ (11:10:34) Vista de verificación de correo electrónico ⌨️ (11:44:45) Enlace entre vistas de acceso y registro ⌨️ (12:18:01) Cerrar sesión Ver ⌨️ (13:13:46) Cambiar de Iniciar sesión a Ver notas ⌨️ (13:36:43) Limpiar nuestras rutas ⌨️ (13:51:17) Manejo de errores en Vista de inicio de sesión ⌨️ (14:16:21) Manejo de errores en la vista de registro, siguiente pantalla después del registro ⌨️ (14:44:45) Confirmación de identidad antes de ir a la interfaz de usuario principal ⌨️ (14:52:21) Servicio de autenticación ⌨️ (15:55) :22) Migración a Servicio de Autenticación ⌨️ (16:33:41) Prueba Unitaria de nuestro Servicio de Autenticación ⌨️ (17:43:42) Almacenamiento Local CRUD ⌨️ (19:30:57) Uso de flujos en el servicio de Notas ⌨️ (20: 04:32)) Preparación de la vista de notas para leer todas las notas ⌨️ (20:39:21) Preparación para crear nuevas notas ⌨️ (21:00:16) Creación de nuevas notas ⌨️ (21:35:42) Visualización de notas en Notas vista ⌨️ (21:56): 04) Eliminación de notas existentes en la vista de Notas ⌨️ (22:40:46) Actualización de notas existentes ⌨️ (23:14 : 12) Asegurar NotesService con el usuario actual ⌨️ (23:40:44) Escribir notas en Cloud Firestore ⌨️ (24: 58:08) Migrar a nuestro servicio Firestore ⌨️ (25:22:35) Compartir notas ⌨️ (25:37: 43) Introducción al bloqueo ⌨️ (26:24:31) Conversión de nuestro proceso de autenticación en masa ⌨️ (27:31: 17) Manejo de excepciones de bloqueo de autenticación al iniciar sesión ⌨️ (28:52: 45) Cambiar a bloqueo para enrutamiento y diálogo ⌨️ (28:58:23) Pantallas de carga ⌨️ (29:48:31) Toques finales antes del lanzamiento de la aplicación ⌨️ (30:43:03) Iconos y nombre de la aplicación ⌨️ (31:06:34) Pantalla de inicio ⌨️ ( 31:56:58) Enviar nuestra aplicación iOS a App Store Connect ⌨️ (32:55:44) Liberar nuestra aplicación iOS ⌨️ (33:20:31) Corregir las reglas de seguridad de Firebase y volver a enviar la aplicación iOS ⌨️ (33:50:07) Lanza nuestra aplicación Android ⌨️ (34:55:19) Localización en Flutter ⌨️ (36:33:57) Outro
Compruebe también
¿Cuánto Java aprender para el desarrollo de Android? (DESCUBRE ESTOS TEMAS)
¿Cuánto Java debo saber antes de comenzar a aprender el desarrollo de aplicaciones de Android? …
If you enjoy this course, please make sure to give Vandad a follow on his YouTube ( https://www.youtube.com/c/vandadnp ), Twitter ( https://twitter.com/vandadnp ) and LinkedIn ( https://www.linkedin.com/in/vandadnp/ )
The argument type 'FirebaseAuthProvider' can't be assigned to the parameter type 'AuthService'
Could someone tell me how to save the flutter file to a folder using Windows in the CMD prompt, please?
Thanks
After 37 hours will it still beginners?
I could'nt follow it. The curve with which the complexity rose for firebase, was just incredibly intimidating.
Half of the course is about checking the notes whether the teacher talked about it or not 🙂
8:56:00
8:57:00
8:57
right arrow key was handy throughout the video😁
This is absolutely fire. Can't thank you enough for the content you are providing
Aagha, Shoma irani hasteen? nah?
4:13:08
Perfect 👍
I'm just finishing this tutorial on the side by watching it bit by bit. All the errors that are coming up around 7:20:00 as such I feel are really helpful. I feel it helps seeing things get explained and walked through to fix the errors. These are the kind of little things that usually mess with people who are just starting to learn something for fun.
Why didn't you segment this video ?
Awesome content. Would be greay if you can add timeline markers per topic.
When updating the path at 7:38:48 when I run vim~/.zshrc => export PATH="$PATH":"$HOME/.pub-cache/bin" my terminal says zsh: permission denied. How do I get the permission to add this to zsh?
too much talking. damn slow
Bookmark: 9:19
Oh ma Gawd wow the video is so long wow!!
In 37 jours 🤯🤯 (1 day and 13 hours 🤯🤯🤯)
Can we Connect C Backend with Flutter Frontend?
4:12:49 / 1:12:39:21
Cannot create a project within the Flutter SDK. Target directory
'/Users/shashankreddy/development/flutter/learningdart' is within the Flutter
SDK at '/Users/shashankreddy/development/flutter'.
In my case (Android) I needed to add to the "build.gradle" file (inside "defaultConfig {}") lines:
minSdkVersion 19
multiDexEnabled true
I hope I helped someone.
Be careful if you make a Google Developer account. If you do not publish an app within a certain amount of time, Google will permanently suspend your developer account with no point of contact or refund.
I had a Google Developer account, but Google closed it for inactivity without a refund.
I need full time flutter app developer, salary according to knowledge and experience, reply my comment who want to do this job.
hi how to watch this videos but very very long how to use this course I am waiting your advice and comment.
Too much rambling…
Whats flutter
Great tutorial!
The Course is Awsome
37 hours – omfg 🤣
Which flutter version used here?
I started rejecting offers from Google after watching this
Such a lengthy tutorial had never been seen on youtube. Thanks, #freeCodeCamp team for making this video.
Please give time stamps
4:50:00
More Details About The Course Content
(00:00:00) Chapter 0 – Introduction
——————————————————-
(00:00:00) freeCodeCamp.org – Introduction
(00:00:12) Free Flutter Course – Hi. I'm Vandad, Google Developer Expert for Flutter & Dart
(00:00:20) Who is this course for? – Absolute beginners!
(00:01:07) Designed to be followed chronologically – Will be kept updated as things change
(00:01:37) What we will learn? – Dart, Flutter and we will release our apps as well
(00:02:27) Please follow me on social media – Twitter: @vandadnp, and LinkedIn as Vandad Nahavandipoor
(00:02:43) Want to support my work? – https://www.buymeacoffee.com/vandad
(00:02:56) Let's get started!
(00:02:58) Chapter 1 – Developer Accounts
——————————————————————–
(00:09:36) iOS – What is a dev account? – What is a developer account and why we need it?
(00:10:05) iOS – Different dev accounts – Individual/company (liability)
(00:14:11) iOS – Register for dev account – How to register ( https://developer.apple.com/programs/enroll/ )
(00:15:57) iOS – D.U.N.S Number for Organizations – https://developer.apple.com/support/D-U-N-S/
(00:24:47) iOS – Long Process and not free – This process sometimes can take weeks for organizations
(00:29:12) Android – similar to App Store Connect for releasing Android apps
(00:30:00) Android – Sign up for dev account – https://play.google.com/console/u/O/signup
(00:39:12) Chapter 2 – Setup
———————————————
(00:40:32) What is Flutter? – Flutter is a rich UI framework developed by Google
(00:45:33) What is Dart? – Dart is the language that powers Flutter
(00:46:20) What is DartPad? – DartPad allows you to test your Dart code right in the browser
(00:49:26) Let's install Flutter – For Mac, Windows and Linux
(01:00:14) Flutter Doctor – Let's you find issues with your Flutter installation
(01:02:30) Installing Xcode – We need Xcode to develop apps for iOS, iPadOS and macOS
(01:04:22) Installing Android Studio and Android SDK – We use Android Studio for its Android SDK Manager
(01:08:51) Visual Studio Code – Free and open source code editor from Microsoft
(01:10:01) Error Lens – A great extension for Visual Studio Code for showing errors in line
(01:11:28) Bracket Pair Colorizer – A built-in setting in Visual Studio Code
(01:12:00) Flutter + Dart – Both are official extensions for Visual Studio Code
(01:12:30) Bloc – An extension for Visual Studio Code that we will use later in the course
(01:13:09) Tokyo Night – A free theme for Visual Studio Code
(01:14:02) Learning Dart… – We need to learn Dart in order to write Flutter apps
(01:14:43) Chapter 3 – Introduction to Dart
——————————————————————-
(01:15:58) Getting started – Creating a sample Flutter project where we can test our dart code
(01:26:58) Keywords – https://dart.dev/guides/language/language-tour#keywords
(01:29:52) DataTypes – https://api.dart.dev/stable/2.17.3/dart-core/dart-core-library.html
(01:33:37) Constants – Compile-time vs Run-time
(01:40:30) Variables – To hold data
(01:43:25) Functions – They hold your logic
(02:01:26) Chapter 4 – Dart control statements and collections
—————————————————————————————————
(02:02:10) If & Else – Conditionals in Dart
(02:14:00) Operators – Simple operators such as + – * and /
(02:21:55) Lists in Dart – List of homogenous "things"
(02:29:52) Sets in Dart – List of unique "things"
(02:38:23) Maps in Dart – Maps are used to hold key-value pairs of information
(02:45:41) What's coming in next chapter – We will talk about null-safety next and what that means
(02:46:45) Chapter 5 – Sound null-safety in Dart
—————————————————————————
(02:49:28) What are null values? – https://dart.dev/null-safety
(02:52:19) Making any type nullable – Use the question mark after the data type such as "String?"
(03:00:07) Cherry-picking non-null values – Use the ?? operator
(03:07:56) Null-aware assigment operator – Use ??= in this case
(03:13:38) Conditional invocation – Use the ?. syntax to conditionally invoke a method or property
(03:22:14) Make sure to check out the official documentation – https://dart.dev/null-safety/understanding-null-safety
(03:24:41) What's coming in the next chapter? – More Dart of course!
(03:27:12) Chapter 6 – Dart enumerations, classes and objects
—————————————————————————————————
(03:28:00) Enumerations – Named list of related items
(03:32:10) Switch Statement – To avoid if else over enumerations
(03:39:00) Classes – What are classes in Dart and why do we use them?
(03:44:43) Objects – They are instances of classes
(03:46:09) Constructors – Allow you to create an instance of a class with optional parameters
(03:50:14) Methods – What are methods on a class and why are they useful?
(03:53:23) Inheritance and Subclassing – Classes can do a lot for us including inheritance and allowing us to subclass them
(03:59:07) Abstract Classes – They can contain logic too! ( https://dart.dev/guides/language/language-tour#abstract-classes )
(04:01:34) Factory Constructors – Can return instances that are not of the same class! ( https://dart.dev/guides/language/language-tour#factory-constructors )
(04:08:12) Custom Operators – You can define custom operators on your own classes in Dart
(04:18:37) Chapter 7 – Advanced dart
———————————————————–
(04:19:46) Extensions – Adding logic to existing classes
(04:26:23) Future – Data to be returned in the future, as its name suggests
(04:33:27) async / await – Mechanism for controlling asynchronous flow of data
(04:37:26) Streams – An asynchronous "pipe" of data
(04:41:36) Awaiting for Stream data – await for (…) syntax similar to await on Future
(04:46:26) Generators – For generating "iterables", marked with sync* and async*
(04:54:05) Generics – To avoid re-writing similar code
(04:59:27) What's coming in the next chapter? – We need to set up our project structure in the next chapter…
(05:00:41) Chapter 8 – Project setup
———————————————————
(05:02:33) Set project up from Terminal – Using "flutter create –org xxx.domain appname"
(05:12:12) Quick look around – Let's check out the project structure
(05:21:52) Dependencies and more – pubspec.yaml includes it all ( https://pub.dev )
(05:40:22) Adding our dependencies – We need firebase_core, firebase_auth, cloud_firestore and firebase_analytics
(05:48:30) Chapter 9 – iOS App Setup (App Identifier, Certificates and Profiles)
—————————————————————————————————————————
(05:50:42) Developer account – In order to release the app for iOS and iPadOS you need a developer account
(05:52:50) Certificates and Profiles – What they are and why we need them
(06:04:53) Account Walkthrough – https://developer.apple.com/account
(06:07:35) The missing pieces – We need certificates, profiles and app ID plus device identifiers
(06:09:25) Certificates in Keychain – We will delete all certificates in our local keychain now
(06:15:02) Delete existing certificates and profiles – We will now delete all existing certificates and profiles from developer.apple.com/account
(06:16:35) Development certificate – Let's create a dev certificate
(06:21:18) Production certificate – We need to create a production certificate as well
(06:23:52) App ID – We need an App ID as well
(06:27:06) Device UUID – In order to debug on a real device we need a UUID to register for our profile
(06:30:45) Development profile and download – We should now create a new dev profile and download and install it on our computer
(06:33:16) Production profile and download – We also need a production profile and need to download and install it
(06:36:11) Set up profiles in Xcode project – We need to tell Xcode about our profiles and certificates now
(06:48:26) Mirror iPhone screen – Use QuickTime Player to mirror iPhone screen on Mac
(06:57:35) We are good to go on iOS – We installed our Flutter app on a real iOS device. Next stop is Android!
(06:59:33) Chapter 10 – Android app Setup
——————————————————————–
(07:04:18) Scrcpy ( https://github.com/Genymobile/scrcpy ) – We will be using "scrcpy" to mirror a real Android device on the screen
(07:06:15) ADB (Android Debug Bridge) – brew install –cask android-platform-tools
(07:10:25) USB Debugging – You will need to enable USB debugging to mirror your screen
(07:14:15) Select Android device in VSCode – We can switch between devices easily
(07:15:45) Android mirroring – Let's see if it all works!
(07:27:12) Disable screen sleeping – You can disable this feature so you don't have to turn the screen on all the time
(07:30:55) We are good to go on Android as well – We need to set up our backend now on Firebase
(07:31:32) Chapter 11 – Firebase Backend Setup
—————————————————————————-
(07:34:38) FlutterFire initialization – flutter fire initialization https://firebase.flutter.dev/docs/overview
(07:36:56) Install FlutterFire CLI – dart pub global activate flutterfire_cli
(07:37:39) Make sure path is updated – vim ~/.zshrc => export PATH="$PATH":"$HOME/.pub-cache/bin"
(07:39:32) You might need to reload your paths – source ~/.zshrc
(07:40:05) What is Firebase CLI? – A CLI to help us interact with Firebase right from our terminal
(07:41:06) Install or update Firebase CLI – https://firebase.google.com/docs/cli#install-cli-mac-linux or curl -sL firebase.tools | upgrade=true bash
(07:42:40) Login/Logout – firebase login or firebase logout