My journey into Mobile Development.
Tags: mobile, hng, reactnative
Published: 2024-07-04 15:43:44

Starting mobile development seems too surreal because I’ve always admired learning how to create amazing applications that can be downloaded into our phones, but on the other hand, it seemed quite difficult in some corner of my mind and I couldn’t do it at all. Joining tech itself was surreal as ever since I was curious; that’s why I started learning web development anyway. The first app I ever built was a calculator. I remember saying “wow! this works…see? Just click it and you will get the result.” So happy and showing my siblings and friends. As my career moved forward in web development, I felt like starting something new so why not? Mobile Development since I already had some you experience using React.js.

With that, began my journey in React Native and no regrets about it yet. In anticipation of this thrilling trip through HNG Internship for me shall come one day; let me give some insights about commonly used terms in the industry interchangeably applied though. Before that, let me introduce to you why I decided to start HNG in the first place.
 
**Why HNG Internship**

Being an aspiring mobile passionate developer, I am excited to be a part of the HNG Internship. The reason this particular program appeals to me is because of its comprehensive curriculum and hands-on approaches to learning, which would help lay a solid base in mobile development. The HNG Internship makes available the perfect platform that is needed in gaining practical experience and networking with peers in the industry. You can learn more details about this wonderful program from their official website and explore opportunities for hiring some talented developers.

**Comparing Mobile Development Platforms**

**1.Native Development
iOS (Swift/Objective-C):**

Pros:

- Performance: Native apps are written in a platform-specific language and hence are optimized a lot to provide a smoother user experience.

- Access to Device Features: Access to all the features of iOS devices.

- Consistent UI: Uses Apple's Human Interface Guidelines for a consistent and intuitive user interface.

Cons:

- Cost and Time: Separate development for iOS and Android.

- Learning Curve: Swift and Objective-C have a steeper learning curve when compared to some other languages.

**2. Android (Java/Kotlin):**

Pros:

- Flexibility: It has an extended number of options concerning customization and system integration.

- Large Community: Many developers are working over it with loads of resources and libraries.

- High Performance: Very high performance since it allows native compilation.

Cons:

- Fragmentation: Development is tough due to many different types of devices and versions of OSes.

- It requires development and testing time, with large resources.

**3. React Native (Cross-Platform Development):**

Pros:

- Code Reusability: This means the same code works for both iOS and Android. 
Large Community: The Community is large, and there are a lot of plugins and Libraries at disposal. 

- Live Reloading: It allows the developer to instantly view the change. 

Cons: 

- Performance: It's not as fast as native applications particularly where heavy tasks are concerned. 

- Native Modules: It requires sometimes to write custom Native modules.

**4. Flutter:**

Pros: 

- Single Codebase: A single codebase for iOS and Android. 

- Performance: It provides near-native performance because Dart compiles endenga.

- Rich UI: It has an exhaustive set of widgets with a rich set of pre-designed UI components.

Cons:

- Large Size: App size may be larger compared to native apps.

- Learning Curve: Since many developers are not much familiar with Dart, it is a bit difficult to learn.

**Conclusion**

A good development platform and architectural pattern are important for the success of any mobile application. Since each of them has strengths and trade-offs, the choice would be majorly based on the needs of a project. I look forward with this journey at HNG Internship to immersively go through these technologies, make good mentorship, and contribute to some really innovative projects.

If you are interested in joining or discussing the HNG Internship should check out their [official website] (https://hng.tech/internship). They also have an option for premium where you get exclusive informations about the program, job opportunities, CV Reviews, Certificate after the internship and many more.To get the full details check [here](https://hng.tech/premium)

Thanks for joining me on this little walkthrough, and I look forward to sharing other insights and experiences while learning the ropes in this exciting field.