"Other are copied" mobile development as well as future?

Copyright: Please go to the public micro-channel number frontline technology developers, authorized! https://blog.csdn.net/DevolperFront/article/details/90679622

Food goods as a senior Android developers. Starting from the second half of 2017, I heard various statements, such as "Android development cool", "no way out of the mobile terminal developed quickly switch", "to be replaced by XXX" and so on, fully reflects our anxiety of mind .

End mobile development really cool yet? Fans often have private letter to me, chatting about this topic in the group, and today I decided to write some of his views, for your reference.

Status of mobile terminal development

What is the status of the mobile terminal development? We can look for clues from write their own code. Android-for example, many large companies end mobile developers to write code for most is this:

LinearLayout layout = new LinearLayout;

layout.addView(xxxx);

...
or maybe something like this:

public class XXXView extends RelativeLayout {

public XXXView(Context context) {

this(context, null);

}

public XXXView(Context context,

@Nullable AttributeSet attrs) {

this(context, attrs, 0);

}

public XXXView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {

super(context, attrs, defStyleAttr);

initView;

}

private void initView {

LayoutInflater.from(getContext).inflate(R.layout.xxxlayout, this, true);

...

}

public void setData(XXX xxx) {

...

}

Or it is against the xml tags make all kinds of Sao operations --UI development.

Yes, and now mobile terminal technology stack has become increasingly sophisticated, it is business, even the big company's engineers also made presentation logic in the UI. Big companies is relatively complete back-end management and control of most of the business logic, the client to do is get to the back-end data, then show it by setText (xxx), and then be judged by a Boolean value returned interface View to show or hide.

I have heard many people say, working for several years to enhance the feel nothing, every day the code in the heap, just to find fresh graduates can replace themselves every minute, so it is anxiety. For those people who work a few years, as far as possible in order not to be replaced prematurely, to be eliminated, we need to choose an area of potential promising to dig deep.
01300001299976130958118825726.jpg

Future development of the mobile end where?

Dynamic

Before talking dynamic, let's talk about the plug-ins of Android.

Two years ago, the plug of the fire up. Why the fire? Because hair can be achieved without dynamic on-line version of the same time demand for Android applications, and hot fixes bug may also occur dynamically repair line. But the plug of the existence of what the biggest problem is it? compatibility. Android models too many and too complex, plug-in framework will inevitably involve hook system API, compatibility problems arise, developers will see strange errors reported up but do nothing.

With the Android version of the iterative update, the plug of the road became not good to go, Android P gives developers a signal: do not just hook the system API, Google began to shut reorganized. Plug of the road destined not to go all the way, so developers have a different approach.

The beginning is to continue with the development of hybrid H5 way, such as veteran Hybrid frame Cordova, but the performance is unsatisfactory. This time Facebook has developed a framework for cross-age: React-Native. It provides a new way of thinking: js be resolved by jscore, using the View native rendering, the ability to provide bridge mechanism native calls.

React-Native is the first true high-performance dynamic framework, it appears to limit Web front-end clients and quickly become blurred. Followed by major companies of self-development frameworks, such as Alibaba Weex beauty regiment Reviewed Picasso framework. React-Native only provides dual-side support for Android and iOS, Weex extends the idea of ​​providing support for the Web side, one React syntactic sugar, it is a syntactic sugar Vue. Picasso is not the same, Picasso is pure TS, DSL syntax tree, the wording is too simple, and is prepared to provide support for small programs end on the basis of three-terminal.

2018 GMTC Congress, Flutter released the first preview version, Alibaba team has been busy busy fish used in fish APP Flutter technology. Flutter began developing four years ago, the first beta version until last year only. APP written by Dart, and then compiled into machine code run on Android and iOS, did the native cross-platform, Hot Reload, performance is very good, customization is also very strong, even the packaging system layer Dart code to change. It provides Web, iOS, Android, React-Native developers to learn Flutter entry document, but also one of the few last more fire hot mobile terminal. It is different from the idea React-Native, is a new way of thinking, now I optimistic about Flutter.

Dynamic mode Alipay is different from all of the above, it is based entirely on their own H5 container Hybrid development, but good because the kernel is also self-development (UC kernel), so the performance in all aspects than native WebView, Alipay a lot of page are based on H5 vessel development, including Alipay small program, it would be a dynamic way of it, but the R & D costs are too high: from research WebView kernel.

For now, the dynamic of the Troika has taken shape:

React-Native headed jscore (v8) bridge dynamic communication scheme;

Since research core WebView, H5 container scheme;

Flutter (I think Flutter force for being the location of the third carriages).

Dynamic changes the way mobile development, blurring the boundaries Web front-end and the client, so that more and more people know what a "great front-end." If you have experienced developers in-depth research in this direction, within five years, it should not be eliminated (laughs).

Mobile end machine learning

There is no doubt that mobile end machine learning from the end of 2017 began to fire up, TensorFlow also launched a mobile-side framework, many applications are beginning to deploy machine learning models in the mobile terminal, such as camera type applications (FaceU), electric business class applications (the only product), etc., including offline machine learning.

If you dig deep in that direction, I think it will not be eliminated within a decade. Of course, the difficulty is not small.

AR & VR

Grab a red envelope from the AR Alipay, QQ the AR play other games are played by more and more people experience, AR into the spotlight. For advertisers play for drainage, AR undoubtedly bring huge benefits.

Prior to public comment the line "Family Wonderful Day" on the parent-child, is based on the bulk of the first father son of AR games are played. So the development of AR engine of mobile developers naturally became the meat and potatoes, the main areas of current AR applications or advertising cash, but many companies also find a number of scenes landing AR, such as selling furniture of the electricity supplier company allows users to AR technology before purchasing will be able to see the kind in the end you can not put it down in their own homes, which can greatly enhance the user's buying experience.

If research OpenGL, computer graphics, mobile developers can develop towards the direction of AR engine development, very promising.

VR empathy.

Mobile end audio and video

This field is the hottest product worthy of vibrato, and even I brush every day vibrato. In addition to vibrato, as well as the major video applications, developers need to sound professional development in the field of video, image processing, filters, cropping and so on Sao operations are required professional audio and video development knowledge to do it, research OpenGL, computer graphics mobile developers in this area also has a great advantage.

As far as I know, this talent now still a huge shortfall, major companies desperate, if you have experience in this area and are willing to dig deep classmates, major companies is a natural meat and potatoes friends.

Mobile terminal block chain

Block chain, in 2018 no one of the hottest technology.

Talking to all bits from all talking credits block chain, block chains can be seen that more and more people have been known techniques. Numerous block chain companies are springing up like smoke, even large companies have begun to set foot'll be tempted to block chain field. For the mobile side, the block chain is still the most widely used digital wallet. But the future of the mobile end block chain there will be more ground applications such as Status. Block chain fire, mobile side block chain application has not started the fire last year, but not far away.

If you have moved to block the development of students interested in the direction of the chain, we can begin to study up. If you want to learn a contract to develop intelligent students, I recommend a very good website: Cryptozombies, is definitely the entry solidity contract to develop smart boutique.

Currently the mobile side block chain talent not many major companies did not move in, but two or three years, it will be broke out, landing is still in the exploratory stage scene, also gave interested in block chain technology mobile development of students learning time. Change the world of technology to find out?

Mobile base frame

UI future will probably be taken over by dynamic technology, but the basic framework is not moving. Whenever you want to develop an APP, network requests, log processing, database processing, caching, Push and other frameworks are essential, not this part of the UI and relations, but also the lifeblood of APP.

APP exist as long as the basic framework there. Some students might say, and I wrote out a network request, that's right with okhttp every minute, which is okhttp has helped us do a lot of things. What is the framework? Sentence summary, my understanding is:

A technology that allows developers the ability to write greatly different functions, similar performance code library.

Do not know if you can understand this argument, I give an example: If you use HttpUrlConnection to write network request, may differ developers the ability to write code that is not the same, request the network performance and effectiveness are not the same. But if you use okhttp library, just look at okhttp documents, novice and old hand-written code is estimated that almost out of the performance and the effect is similar, this is the largest contribution made by the framework.

On the basis of these frameworks, P5 possible to write code and P6, P7 is not much difference. However, these frameworks always been developed, open source framework often can not meet the needs of business, the need for self-development foundation frame. In particular BAT, TMD six companies, mobile end frame has mostly self-development, more and more companies have begun to self-development, so if you are an experienced developer to move in this direction, before being eliminated in the APP it should never be eliminated. This depth and breadth of knowledge in terms of mobile developers require relatively high precipitation and need to learn.

Android Tools Application

This is more special, and I give an example of such applications: 360 Mobile Assistant. For Android users, memory clean up, clean up the garbage has become a habit, the development of application of this nature is essential, and is the test of the depth of knowledge of Android, you know.

Epilogue

The above seven mobile terminal development direction, I summed up a promising direction has the potential, you can refer students to develop mobile, you can choose a direction to dig deep, I believe there will be harvest.

Anxiety mouth does not make sense, the best way is to action.

Guess you like

Origin blog.csdn.net/DevolperFront/article/details/90679622