From interactive advertising to iOS development

Source: Internet
Author: User

Cover Image Crafted by Wang Qi @ DamnDigital

The mobile Internet is truly changing the lives of every one of us. So how can we adapt to the trend and make it easier for us to adapt to the new era?

First, you should become a mobile Internet app leader: Having a mobile device and becoming a heavy user. You need to know more about this new media than your customers or target audiences. You must learn to observe and analyze the essence behind these mobile device product designs, including but not limited:

Usage habits of handheld devices;

Influence of screen size limit on design;

Multi-touch operations;

Single-window applications and multi-task design methods.

In addition, there are some special hardware modules such as GPS Positioning and gyroscope.

Then you should take a look at Apple's Human-Computer Interaction Design Guide to learn the details of the ideas behind some of the design suggestions. This ensures that you will not go too far when thinking about ideas.

At this moment, you must have a good idea or a reliable Brief ). Now is the time for us to make full use of our creativity and design talents.

The popular "pull-down refresh" operation is not written in the design guide at the beginning, but a brilliant idea created by creators like ours. This is definitely the best example of intuitive design that can be developed by heavy users. The tilting pages of the instaper client and the Clear and Kneading operations that were very popular some time ago also represent the top level of interactive design. Although there are not many professional uidesign companies in this field, there are also various Internet enterprises in the UED regular army. But on the question of how to design a mobile app with love or model, our designers in this line are not willing to show weakness.

Let's take a look at the innovative folding menu in the private photo sharing app Path 2.0. It attracted a lot of attention. Let's look back at it to compare the various dynamic menus that have been implemented by the flash client N years ago. Isn't the effect even eclipsed. Users have seen the product of standard interfaces for several years on iOS apps, which inevitably leads to aesthetic fatigue. Now we are entering the era of focusing on user experience. The experience accumulated by interaction practitioners in visual performance and interactive effects is a major advantage. Compared with those in other industries, we are more likely to create amazing works.

However, we would like to remind you that this advantage is sometimes a constraint. Visual effects are a double-edged sword. We cannot simply put the experience we have previously designed for the Internet on a mobile platform. I have seen the incorrect practices of putting what users really need behind the process to demonstrate some interesting animated effects. Mobile devices are also subject to screen and power restrictions. In specific design, we should put these small highlights where they are really needed, and put the design that can improve user experience first.

After talking about the design level, let's talk about the technical level.

Most front-end technicians engaged in interactive advertising come from the HTML or Flash field. When Facing the transformation of the mobile age, the most practical problem is that it is difficult to choose from: start learning native development technology Objective-C for iOS and Java for Android) and continue the current knowledge system. There is no standard answer to this question, but it needs to be analyzed in combination with your own career positioning.

We are now facing a fragmented platform. The old days when Flash technology was used to cover most of the front-end needs will never go. The most promising star Of Tomorrow HTML5 is currently restricted by the popularity and performance of browsers, and is not enough to support the previously achieved height in Flash technology. The use of native languages for customized development for different platforms results in exponentially increasing costs and cycles. In this game of achieving goals and controlling costs, Agency can only be weighed based on various internal and external factors. A larger project can continue to lay the entire platform, while a smaller budget can only discard one.

Here I will share my experiences. When I first developed a mobile app last year, I first chose the JavaScript + PhoneGap technical solution.

In order to simulate the native UI, a lot of frameworks are compared in online search:

Zepto. js,

JQMobile,

Sencha Touch.

Finally, Sencha Touch was selected, and the application was made within one week. However, during the development process, I gradually felt awkward to use JavaScript for rigorous object-oriented development. Don't get me wrong. I just started programming by learning the scripting language, and I only liked this language. I think that only the Write Less like jQuery and Do More ideas can play the essence of the flexible and lightweight scripting language, and use scripts to develop object-oriented software for the conventional UI, it is better to directly use the native object-oriented method. In addition to the hard-to-solve Mobile Safari memory restrictions, I decided to switch to Objective-C development. But it must be said that it is also very good to master a JavaScript mobile development framework, at least to quickly verify the idea of the product.

Another example is shared with me. He used AIR to develop an application for watching American dramas. First, try to use the Mobile component that comes with Flex to avoid unexpected lag. Therefore, we can only use the AsWing-based method because of the lack of basic component support. It is said that he has tried his best to optimize the performance, but still cannot fully achieve the efficiency of native components, especially when scrolling tables. This shows that language migration does not cost much, but there are still a lot of pitfalls for developers to fill out in specific operations when using the AIR technology for mobile development. Not to mention the inconvenience of debugging on a real machine each time. Although we already have Starling-based UI controls GPU acceleration and more convenient USB debugging, I think Adobe's work on mobile platforms is still slow.

Next, let's talk about native iOS development.

A lot of people are scared by Objective-C's weird syntax. In my personal experience, the most direct way to eliminate this fear is to find a piece of code and repeat it in Xcode. Through the code auxiliary function of Xcode, you can understand the structure of Objective-C statements. When you see the vivid matching prompts of Xcode, you will understand what I mean ).

Once you get familiar with the weird square brackets syntax, the rest will be solved. Objective-C 2.0 and later introduce the dot syntax for Attribute access, which also reduces the difference in writing with other languages. For this reason, some old Objective-C programmers also protest. In fact, most people will recognize the elegant design of this language after learning Objective-C.

After getting started with the basic language, we can try some small examples on the Cocoa Touch framework. One of the most popular online tutorials is the Stanford Open Course on iPhone development. Currently, the latest version is 2011 corresponding to iOS5. The old teacher taught me a lot and spoke well. If you are new to iOS development, you are advised to directly learn iOS5 and later versions. Some new advanced language features will make your development transformation more difficult. Do not read the tutorials of the old version to avoid confusion in the phase before the concept is formed. After the next stage, we will inevitably deal with relatively obscure knowledge points such as the memory reference counting mechanism, however, the knowledge you have learned before can at least support you to write a good application.

After that, I will take a look at my personal experience. The best materials for my development career are Apple's official documents. The basic view and controller Development Guide and event processing mechanism should be read several times. For example, if I focus more on the rendering and Animation technologies of the presentation layer, I need to refer to the Quartz 2D and Core Animation guides. For other different frameworks, you only need to know the purpose of the framework. The specific knowledge should be gradually learned in the project practice. It takes at least one to two years for all customs clearance. If you are interested in the game, you must learn the Cocos2D framework. It is said that it is close to Flash.

With the further development of technical research, we will encounter more challenges. The choice of native language development means competition with programmers transformed from many traditional programming fields, and the advanced development of native languages has to come into contact with more and more underlying technologies. But in turn, if there are no challenges, it's boring, isn't it.

The above points are purely personal, and I hope to help you. If you have any problems, please leave a message to correct them.

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.