当前位置:网站首页>Talk about the cross end technical scheme
Talk about the cross end technical scheme
2022-07-29 00:56:00 【EDDYANNNNG】
write once, run everywhere
Android Application and adoption Java or Kotlin To write ,iOS Application and adoption Objective-C or Swift To write ,Web End use HTML /CSS/JavaScript To write . When it is necessary to develop applications that support multiple terminals , Each end needs independent research and development 、 test , Until it's online .
In order to solve the problem of multi terminal independent development , Cross end technology is favored .
There are too many scenes that the front-end needs to deal with at present ,android、ios、pc、 Intelligent Watch 、 vehicle 、 Smart TV, etc , When some scenes are very similar , We hope to achieve the best results with the least development cost , Instead of requiring a separate set of manpower for maintenance at each end .
So today, when a hundred flowers bloom in cross end solutions , For example, now the most well-known react native、flutter、electron、weex、 Small program etc. , Do they have anything in common , And whether we can find the essence , That's what this article wants to talk about today .
One 、 Mainstream cross end implementation scheme
With Web On the basis of H5 Hybrid programme
Actually , The browser is a cross end implementation scheme , Because you just need to enter the URL , You can open your web page on any browser . that , If we embed the browser app in , Then hide the address bar and other contents , Is it possible to embed our web pages into native app 了 . And this embedded app Browser , We call it webview , So as long as one end supports webview , Then it can use this scheme to cross the end .
At the same time, it is also a scheme with the lowest development cost , Because this is actually writing the front-end interface , It's not much different from ordinary web pages we develop .
Frame layer + Native rendering programme
The typical representative is react-native, Its development language is chosen js, The syntax and react Exactly the same , In fact, it can also be said that it is react, This is our framework layer . And different from the general react application , It needs native capabilities to render , Components will eventually be rendered as native components , This can bring users a better experience .
Frame layer + Self rendering engine programme
The difference between this scheme and the above is , It does not directly borrow native capabilities to render components , Instead, it takes advantage of the lower level rendering ability , Render the components by yourself . Obviously, the link in this way will be shorter than that in the above scheme , Then the performance will be better , At the same time, it will be more reliable than the previous scheme in ensuring the consistency of multi terminal rendering . A typical example of such a framework is flutter .
Applet cross end programme
as everyone knows , In recent years, one thing has become very popular : Applet , Now many large factories have begun to enter the small program , But now applet technology is no longer BAT Exclusive , The solution of applet container technology has already been launched in the market , When the applet container is integrated SDK after , Whether it's iPhone, Android, Flutter,React Native, The computer 、 TV 、 On board or Internet of things devices , Can make different applications or terminal devices have the ability to run small programs quickly , And the same applet scenario can be distributed to different terminals to run , There is no need to write different codes for different terminals , This kind of applet container technology can be used for reference FinClip .

Two 、 What are the common cross end scenarios
Span PC End . For example, across Windows Linux Macos Span many Native platform : For example, across Android and iOS Cross launch APP: With super APP More and more , Many businesses need to be in multiple APP Launch the same business scenario . Span Web、 Applet 、QuickApp etc. : In fact, it was similar to cross APP, However, the app itself is a closed ecosystem controlled by various companies , Therefore, there is a demand for development to adapt to a variety of closed ecology at one time .
3、 ... and 、 Cross end technical scheme selection
Cross end technology solution , The concern is nothing more than the following 4 In terms of : R & D Efficiency 、 dynamic 、 Multi terminal consistency 、 Performance experience .
R & D Efficiency : Maximize code reuse , Reduce the adaptation workload of multi terminal differences , Reduce development costs , Even after the business goes online , It can also be maintained at a low cost , Accelerate the iteration of new functions , This is a continuous efficiency gain .
Dynamic : It can realize rapid business iteration , This is not just the demand of cross platform technology , It's also Native The necessary killer mace of Technology , This is also an important assessment point for evaluating cross end technology .
Multi terminal consistency : Good products are at many ends UI In design , Often the overall style is unified , Therefore, after the business parties adopt the original and develop independently , It will take a lot of extra time to modify UI To ensure multi terminal consistency ; so , Each end realizes the development mode independently , The resulting efficiency lag , Not just Android and iOS The amount of work to develop one code each , And double ended UI The consistency of alignment work .
Performance experience : Usually , The cross end technology solution has the above multiple advantages , But in terms of performance, it is worse than native fluency . Sacrifice some experience for efficiency , This is also reasonable , Just imagine , Cross platform technology solutions have both this 4 spot , Then I'm afraid native technology has withdrawn from the stage of history , It has long been the world of cross platform technology , Therefore, the performance of each cross platform technology has become a core indicator .
Four 、 ending
For the business technology team , The essence of cross terminal is to improve efficiency . On the one hand, it is necessary to put forward new plans for new changes , What's more important is how to make this kind of improvement really lasting , Let's not jump from one new solution to another .
Cross end demands and corresponding solutions will still be in frequent changes , There won't be a solution to all the cross end problems . And the relatively unchanged part is worth our investment for the sake of long-term stability .
边栏推荐
- Surfacecontrol and surfaceflinger communication
- Android必备的面试技能(含面试题和学习资料)
- Error reporting: Rong Lianyun sends SMS verification code message 500
- 🧐 table1 | 一秒搞定你的三线表
- [develop low code platform] low code rendering
- Introduction of shortest path tree (SPT) and matlab code
- Cloud function realizes website automatic check-in configuration details [web function /nodejs/cookie]
- 直流无刷电机控制器(换电机霍尔收费多少)
- The method of tracking the real-time market of London Silver
- B站“崩溃”始末 2021.07.13 我们是这样崩的(转载)
猜你喜欢

【无标题】

Shell编程规范与变量

Summary of preprocessing methods for time series data

zabbix部署及监控

DRF -- authentication, authority, frequency source code analysis, global exception handling, automatic generation of interface documents, RBAC introduction

B- 树 ~

Outlier detection and Gan network (1)

关于ThreadPool的一些注意事项

Longest ascending subsequence

【Web开发】Flask框架基础知识
随机推荐
Implement Lmax disruptor queue from scratch (VI) analysis of the principle of disruptor solving pseudo sharing and consumers' elegant stopping
What are the methods to track the real-time market of London Silver?
mysql时间按小时格式化_mysql时间格式化,按时间段查询的MySQL语句[通俗易懂]
散列表 ~
【愚公系列】2022年07月 Go教学课程 020-Go容器之数组
芯驰科技发布G9系列最新旗舰产品,配备6个1.8Ghz主频的A55核心
多线程顺序运行的几种方法,面试可以随便问
Several methods of multi-threaded sequential operation can be asked casually in the interview
Xinchi technology released the latest flagship product of G9 series, equipped with six A55 cores with 1.8GHz dominant frequency
Cloud function realizes website automatic check-in configuration details [web function /nodejs/cookie]
SDRAM控制器设计(数字控制器的两种设计方法)
requestVideoFrameCallback() 简单实例
Minimum dominating set (MDS) and its matlab code
Jupyter notebook中5个有趣的魔法命令
Outlier detection and open set identification (1)
andriod6.0低功耗模式(关闭wifi、蓝牙、gps、屏幕亮度等)
execute immediate 简单示例合集(DML)
15. Model evaluation and selection
将行内元素转换为块元素的方法
zabbix部署及监控