How iOS developers learn Android

Source: Internet
Author: User

"Toward the dark side !"

Recently I attended a Big Nerd Ranch Android training camp in Banning Mills, which caused a mistake on Twitter, because I have been regarded as a brainless fan of Objective C and Cocoa, in fact, I am a teacher at the Big Nerd Ranch iOS training camp.

 

The exposure of my participation in the Android training camp left several fans behind me. This is the beginning of my entire decline in popularity story.

On Facebook...

Almost a year ago, I taught iOS training camp courses at the Facebook headquarters in Menlo Park. After class, I met Eduardo, a friend of mine who worked at Palo Alto, he is also an iOS developer, but recently he started to do some "Bad Things". He has been engaged in Android development most of the time. He attended the Google I/O conference that week and I had to endure several hours of training on Google's cool technology. Although a little annoying, it will not shake my belief, especially those who are "loyal" like me.

We often have dinner at a steak house at the door of Apple's Cupertino headquarters. To put it worse, he had a bad habit every time he entered the restaurant where all Apple employees were working ...... That's right, Google glasses! I often wonder if the security guard will kick us out.

Mr. Anderson, do you think this pair of glasses is inappropriate?

Sweet potato mixture

Face the reality: Bring Google glasses to make you look like a silly Cross... It's also a nerd-type silly cross. After several days of resistance, I finally had a compromise and wanted to give it a try. Of course, I am not really so interested ).

I quickly put it on after I saw the apple guard in the surrounding area... The decline in popularity cannot be achieved.

This is definitely just a prototype. Although it is a prototype, it is the only real device I have ever seen in the past few years. Honestly, you can't really look silly with it. This kind of original nerd may be irresistible to some comrades, and it looks like the following.

The idea of developing applications for Google glasses on my way home suddenly broke into my mind. In fact, I tried the first generation of Nexus a few years ago. To be honest, this phone is not really prepared for me. There is a gap between its screen and the plastic below, every time I call it, my hair will be dropped. A phone call that turns me bald is not worth wasting my time, but this pair of glasses...

Back to Banning Mills

Today, my calendar is always full, making it almost impossible for me to stop and learn new things with weeks of events. No matter how hard you work, you are distracted.) It will always come to you secretly.

In Banning Mills, Mountain Lion, a Mountain Lion, is under attack on an unprotected Android robot...

After reading my crazy schedule, Dr Hillegass gave his prescription for a week of Full-dip Android training in the countryside of Georgia.

Although I have to study for 10 to 12 hours every day, this training camp feels like a short trip: No one interrupts, no phone calls, no emails. At the Big Nerd ranch training camp, you can focus on one thing only: Learn something "Nerd.

I estimated that the week I spent in Banning Mills with my Android classmates and our mentor Kristin Marsicano saved at least three weeks of self-study. The most important thing is that I have a chance to get a breath from a tight schedule, which is worth it.

Android in iOS developers' eyes

I was surprised by the process of learning Android, because I always thought that all environments would be very similar. After all, iOS and Android systems are both based on Unix, and both development languages are based on C. Unfortunately, this is not the case.

Android has a special and interesting feature, which is different from other operating systems I have seen before. In iOS, there are almost all other operating systems. Applications are the most basic interaction units in the system. But not on Android. Its basic interaction unit is Activity, which is similar to the concept of UIViewController in iOS.

The activities in different applications can communicate with each other and thus become different portals for your applications. So when you want to complete a task, such as adding a Photo to an email, you may use several Activity email activities and Photo activities of other applications ). A well-designed Android Application can be well integrated into the OS and become a loosely coupled Activity. Is it great?

However, compared with the communication between UIViewController in iOS, the communication between activities is much more complex. Communication Behavior is encapsulated in a class called intent. This communication mechanism reminds me of the fact that when Windows ruled the earth, it was similar to accessing distributed objects using CORBA.

Activities, Fragments, and Activity are similar. The way they are organized on the screen is very different from that in iOS. For a newbie, you will find that there is nothing similar to UINavgationControler, the entire system is already a stack structure of the Activity.

Come to learn about Android, cool. Here are cookies!
Android Studio, Big Nerd Ranch books and cookies.

However, the most surprising thing is that the Android syntax is much wordy than the iOS syntax. Especially when an iOS developer tells you that this is a very embarrassing thing, you 'd better take it seriously! The most important reason is that the Android SDK does not abstract some behaviors. For example, when you create a UIViewController in iOS, you do not need to specify the xib file name for it, unless you are doing something weird. Otherwise, UIViewController will search for the xib file with the same name as itself. In Android, you only need to manually specify each layout file, once and again.

From this you can see that you can bring the things you learned on one platform to another. IOS developers can also gain some benefits from the layout skills of Android to make up for the lack of AutoLayout in Cocoa.

As an iOS developer, what I miss most is an endless language. Sorry, I can't help it.) blocks and Core Data.

Both

The process of learning Android has made me a better iOS developer and gave me the opportunity to examine mobile development from a new perspective. Understanding the technologies of the two platforms makes me a better mobile developer.

No way back: I am a certified Android developer.

If you are an amateur developer, you can choose to ignore one of the platforms, but as a professional developer, it is important for you to master the technologies of both platforms in your career and the company's business perspective, whether or not you prefer either of them.

Therefore, if you are an iOS developer, you can continue to turn on Android jokes, but you should still learn about it. If you are an Android developer, join us to experience another world: we promise not to laugh at your exaggerated "phone board. I promise.

You know why the market share of Android tablets is not heavy. They should be regarded as mobile phones !...

Http://blog.jobbole.com/68744/.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.