دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Alessandro Biessek
سری:
ISBN (شابک) : 9781788996082
ناشر: Packt
سال نشر: 2020
تعداد صفحات: 498
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 23 مگابایت
در صورت تبدیل فایل کتاب Flutter for Beginners به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب فلاتر برای مبتدیان نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Google Flutter یک پلت فرم انقلابی تلفن همراه است که نوشتن برنامه های بومی ایمن و با کارایی بالا را برای iOS و Android آسان تر می کند. این کتاب با ملزومات برنامه نویسی دارت شروع می شود و سپس به یادگیری عناصر اصلی یک برنامه موبایل می پردازد تا برنامه های شما را کاربردی و فریبنده کند.
Google Flutter is a revolutionary mobile platform that makes it easier to write secure and high-performance native apps for iOS and Android. This book will start with the essentials of Dart programming and then go into learning the core elements of a mobile app to make your apps functional and enticing.
Cover Title Page Copyright and Credits Dedication About Packt Contributors Table of Contents Preface Section 1: Introduction to Dart Chapter 1: An Introduction to Dart Getting started with Dart The evolution of Dart How Dart works Dart VM and JavaScript compilation Hands-on Dart DartPad Dart development tools Hello world Understanding why Flutter uses Dart Adding productivity Compiling Flutter apps and hot reload Easy learning Maturity Introducing the structure of the Dart language Dart operators Arithmetic operators Increment and decrement operators Equality and relational operators Type checking and casting Logical operators Bits manipulation Null-safe and null-aware operators Dart types and variables final and const Built-in types Numbers BigInt Booleans Collections Strings String interpolation Literals Type inference – bringing dynamism to the show Control flows and looping Functions Function parameters Data structures, collections, and generics Generics When and why to use generics Generics and Dart literals Introduction to OOP in Dart Dart OOP features Objects and classes Encapsulation Inheritance and composition Abstraction Polymorphism Summary Further reading Chapter 2: Intermediate Dart Programming Dart classes and constructors The enum type The cascade notation Constructors Named constructors Factory constructors Field accessors – getters and setters Static fields and methods Class inheritance The toString() method Interfaces, abstract classes, and mixins Abstract classes Interfaces Mixins – adding behavior to a class Callable classes, top-level functions, and variables Callable classes Top-level functions and variables Understanding Dart libraries and packages Importing and using a library Importing show and hide Importing prefixes to libraries Importing path variants Creating Dart libraries Library member privacy The library definition A single-file library Splitting libraries into multiple files A multiple-file library – the export statement Dart packages Application packages versus library packages Package structures Stagehand – the Dart project generator The pubspec file Package dependencies – pub Specifying dependencies The version constraint The source constraint Introducing async programming with Futures and Isolates Dart Futures Dart Isolates Introducing unit testing with Dart The Dart test package Writing unit tests Summary Chapter 3: An Introduction to Flutter Comparisons with other mobile app development frameworks The problems Flutter wants to solve Differences between existing frameworks High performance Full control of the UI Dart Being backed by Google Fuchsia OS and Flutter Open source framework Developer resources and tooling Flutter compilation (Dart) Development compilation Release compilation Supported platforms Flutter rendering Web-based technologies Framework and OEM widgets Flutter – rendering by itself Widgets introduction Composability Immutability Everything is a widget The widget tree Hello Flutter pubspec file Running the generated project lib/main.dart file Flutter run Summary Section 2: The Flutter User Interface - Everything is a Widget Chapter 4: Widgets: Building Layouts in Flutter Stateful versus stateless widgets Stateless widgets Stateful widgets Stateful and stateless widgets in code Stateless widget in code Stateful widgets in code Inherited widgets Widget key property Built-in widgets Basic widgets The Text widget The Image widget Material Design and iOS Cupertino widgets Buttons Scaffold Dialogs Text fields Selection widgets Date and time pickers Other components Understanding built-in layout widgets Containers Styling and positioning Other widgets (gestures, animations, and transformations) Creating a UI with widgets (favor manager app) The app screens The app code Favors app home screen The layout code The request favor screen The layout code Creating custom widgets Summary Chapter 5: Handling User Input and Gestures Handling user gestures Pointers Gestures Tap Double tap Press and hold Drag, pan, and scale Horizontal drag Vertical drag Pan Scale Gestures in material widgets Input widgets FormField and TextField Using a controller Accessing FormField state Form Accessing Form state Using a key Using InheritedWidget Validating Input (Forms) Validating user input Custom input and FormField Creating custom inputs Custom input widget example Creating an Input widget Turn the widget into a FormField widget Putting it all together Favors screen Tap gestures on the favor tab Tap gestures on FavorCards Making FavorsPage a StatefulWidget Refuse action handling Do action handling Tap on Request a favor button The Requesting a favor screen The close button The SAVE button Validating input using the Form widget Summary Chapter 6: Theming and Styling Theme widgets Theme widget ThemeData Brightness Theming in practice Platform class Material Design MaterialApp widget Scaffold widget Custom theme iOS Cupertino CupertinoApp Cupertino in practice Using custom fonts Importing fonts to the Flutter project Overriding the default font in the app Dynamic styling with MediaQuery and LayoutBuilder LayoutBuilder MediaQuery MediaQuery example Additional responsive classes Summary Chapter 7: Routing: Navigating between Screens Understanding the Navigator widget Navigator Overlay Navigation stack/history Route RouteSettings MaterialPageRoute and CupertinoPageRoute Putting it all together The WidgetsApp way Named routes Moving to named routes Arguments Retrieving results from Route Screen transitions PageRouteBuilder Custom transitions in practice Hero animations The Hero widget Implementing Hero transitions Summary Section 3: Developing Fully Featured Apps Chapter 8: Firebase Plugins Firebase overview Setting up Firebase Connecting the Flutter app to Firebase Configuring an Android app Configuring iOS app FlutterFire Adding the FlutterFire dependency to the Flutter project Firebase authentication Enabling Authentication services in Firebase Authentication screen Logging in with Firebase Sending verification code Verifying the SMS code Updating the profile and login status NoSQL database with Cloud Firestore Enabling Cloud Firestore on Firebase Cloud Firestore and Flutter Loading favors from Firestore Updating favors on Firebase Saving a favor on Firebase Cloud Storage with Firebase Storage Introduction to Firebase Storage Adding Flutter Storage dependencies Uploading files to Firebase Ads with Firebase AdMob AdMob account Creating an AdMob account AdMob in Flutter Side note on Android Side note on iOS Showing ads in Flutter ML with Firebase ML Kit Adding ML Kit to Flutter Using the label detector in Flutter Summary Chapter 9: Developing Your Own Flutter Plugin Creating a package/plugin project Flutter packages versus Dart packages Starting a Dart package project Starting a Flutter plugin package A plugin project structure MethodChannel Implementing the Android plugin Implementing the iOS plugin The Dart API An example of plugin package Using the plugin Adding documentation to the package Documentation files Library documentation Generating documentation Publishing a package Plugin project development recommendations Summary Chapter 10: Accessing Device Features from the Flutter App Launching a URL from the app Displaying a link The flutter_linkify plugin Launching a URL The url_launcher plugin Managing app permissions Managing permissions on Flutter Using the permission_handler plugin Importing a contact from the phone Importing a contact with contact_picker Contact permission with permission_handler Contact permission on Android Contact permission on iOS Checking and requesting permission in Flutter (permission_handler) Integrating the phone's camera Taking pictures with image_picker Camera permission with permission_handler Camera permission on Android Camera permission on iOS Requesting camera permission in Flutter (permission_handler) Summary Chapter 11: Platform Views and Map Integration Displaying a map Platform views Enabling platform views on iOS Creating a platform view widget Creating an Android view Creating an iOS view Usage of a platform view widget Getting started with the google_maps_flutter plugin Displaying a map with the google_maps_flutter plugin Enabling the Maps API on Google Cloud Console Google Maps API integration on Android Google Maps API integration on iOS Displaying a map on Flutter Adding markers to the map The Marker class Adding markers in the GoogleMap widget Adding map interactions Adding markers dynamically GoogleMapController Getting GoogleMapController Animating a map camera to a location Using the Google Places API Enabling the Google Places API Getting started with the google_maps_webservice plugin Getting a place address using the google_maps_webservice plugin Summary Section 4: Advanced Flutter - Resources to Complex Apps Chapter 12: Testing, Debugging, and Deployment Flutter testing – unit and widget testing Widget tests The flutter_test package The testWidgets function Widget test example Debugging Flutter apps Observatory Additional debugging features DevTools Profiling Flutter apps The Observatory profiler Profile mode Performance overlay Inspecting the Flutter widget tree Widget inspector The Flutter inspector in DevTools Preparing apps for deployment Release mode Releasing apps for Android AndroidManifest and build.gradle AndroidManifest – permissions AndroidManifest – meta tags AndroidManifest – application name and icon build.gradle – application ID and versions build.gradle – signing the app Releasing apps for iOS App Store Connect Xcode Xcode – application details and Bundle ID Xcode – AdMob Xcode – signing the app Summary Chapter 13: Improving User Experience Accessibility in Flutter and adding translations to apps Flutter's support for accessibility Flutter internationalization The intl package The intl_translation package The flutter_localizations package Adding localizations to a Flutter app Dependencies The AppLocalization class Generating .arb files with intl_translation Using translated resources Communication between native and Flutter with platform channels Platform channel Message codecs Creating background processes The Flutter compute() function SendPort and ReceivePort IsolateNameServer A compute() example Full background process Init the calculation The background isolate Adding Android-specific code to run Dart code in the background The HandsOnBackgroundProcessPlugin class The BackgroundProcessService class The PluginRegistrantCallback property Adding iOS-specific code to run Dart code in the background The SwiftHandsOnBackgroundProcessPlugin class Summary Chapter 14: Widget Graphic Manipulations Transforming widgets with the Transform class The Transform widget Understanding the Matrix4 class Exploring the types of transformations Rotate transformation Scale transformation Translate transformation Composed transformations Applying transformations to your widgets Rotating widgets Scaling widgets Translating widgets Applying multiple transformations Using custom painters and canvas The Canvas class Canvas transformations Canvas ClipRect Methods The Paint object The CustomPaint widget CustomPaint construction details The CustomPainter object The paint method The shouldRepaint method A practical example Defining a widget Defining CustomPainter Overriding the shouldRepaint method Overriding the paint method The radial chart variant Defining a widget Defining CustomPainter Summary Chapter 15: Animations Introducing Animations The Animationclass AnimationController TickerProvider and Ticker CurvedAnimation Tween Using animations Rotate animation Scale animation Translate animation Multiple transformations and custom Tween Custom Tween Using AnimatedBuilder The AnimatedBuilder class Revisiting our animation Using AnimatedWidget The AnimatedWidget class Rewriting the animation with AnimatedWidget Summary Other Books You May Enjoy Index