Slide 1

Slide 1 text

Native vs Cross-platform in Mobile application development 🚀 GDG on Campus UTH Hoàng Nguyễn - Technical Lead @ Nimble

Slide 2

Slide 2 text

GDG on Campus UTH “How do you decide between native and cross-platform development?” 🤔

Slide 3

Slide 3 text

What is native mobile app development? What is cross-platform app development? Comparison between approaches Emerging Trends Real-world examples Agenda

Slide 4

Slide 4 text

Different approaches to mobile app development GDG on Campus UTH

Slide 5

Slide 5 text

Separate native apps for each operating system Progressive web apps (PWAs) Cross-platform apps Hybrid apps Main ways to create an application for both Android and iOS

Slide 6

Slide 6 text

Separate native apps for each operating system GDG on Campus UTH

Slide 7

Slide 7 text

Android - Developed by Google - Programming language: Kotlin or Java - IDE: Android Studio

Slide 8

Slide 8 text

iOS - Developed by Apple - Programming language: Swift or Objective-C - IDE: XCode

Slide 9

Slide 9 text

Cross-platform apps GDG on Campus UTH

Slide 10

Slide 10 text

React Native - Developed by Facebook - Programming language: JavaScript/ReactJS - IDE: Visual Studio Code Flutter - Developed by Google - Programming language: Dart - IDE: Android Studio/Visual Studio Code

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

Emerging Trends GDG on Campus UTH

Slide 14

Slide 14 text

React Native - Developed by Facebook - Programming language: JavaScript/ReactJS - IDE: Visual Studio Code Flutter - Developed by Google - Programming language: Dart - IDE: Android Studio/Visual Studio Code KMP - Developed by Jetbrains - Programming language: Kotlin - IDE: Android Studio + XCode

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

Native

Slide 17

Slide 17 text

Cross-platform (KMP)

Slide 18

Slide 18 text

KMP Libraries by Year https://www.jetbrains.com/kotlin-multiplatform/

Slide 19

Slide 19 text

Real-world examples GDG on Campus UTH

Slide 20

Slide 20 text

Showcase React Native

Slide 21

Slide 21 text

Showcase Flutter

Slide 22

Slide 22 text

Showcase KMP

Slide 23

Slide 23 text

Consider between native and cross-platform app development GDG on Campus UTH

Slide 24

Slide 24 text

( 1 ) 6 key aspects to consider The type and purpose of your future app ( 2 ) Team's experience in programming languages and tools ( 3 ) Long-term viability

Slide 25

Slide 25 text

( 4 ) 6 key aspects to consider Development cost and your budget ( 5 ) Adoption in the industry ( 6 ) Visibility and learning resources

Slide 26

Slide 26 text

Native - High performance - Intuitive user experience - Access to the full feature set of a particular device - High cost - Big development team - More errors in code - Risks of having different logic on Android and iOS apps

Slide 27

Slide 27 text

Cross-platform - Shareable code - Faster development - Cost-effectiveness - New work opportunities - Flexible code sharing - Performance issues - Difficult to access native features of mobile devices - Limited UI consistency - Challenging hiring process

Slide 28

Slide 28 text

Performance-critical applications Deep integration with device hardware Platform-specific features are vital for long-term When to Choose Native

Slide 29

Slide 29 text

Budget and time constraints Apps targeting multiple platforms quickly Proof of concept or MVPs When to Choose Cross-Platform

Slide 30

Slide 30 text

GDG on Campus UTH “How do you decide between native and cross-platform development?” 🤔

Slide 31

Slide 31 text

No one-size-fits-all solution Factors to decision-making based on project requirements Conclusion

Slide 32

Slide 32 text

Q&A 󰚒󰢦 GDG on Campus UTH

Slide 33

Slide 33 text

Thank you 👋 󰳕 hoangnl.dev 🚀 GDG on Campus UTH