【移动互联网技术简述】- swust移动互联网实践课观后总结

移动互联网技术简述

Android:
简介:
安卓是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。

获取最新资讯:
Android developer 官网

安卓开发的优势:
1.开放的源码
2.众多开发者及强大的社区
3.不断增长的市场(目前android已经占据了80%以上的移动端市场)
4.国际化的app集成
5.低廉的开发成本
6.更高的成功效率
7.丰富的开发环境

开发语言:
1.Java语言:使用非常多,大部分计算机专业都要学习该编程语言,随着互联网的兴起,java已经越来越受欢迎
2.Kotlin语言:在2019年,谷歌宣布Kotlin成为android开发的首选语言。该语言适用领域为:移动端跨平台、服务端、原生、web开发、数据科学、安卓等。
Kotlin官网:https://kotlinlang.org/
Kotlin中文网:https://kotlinlang.org/

Kotlin的优势:
简洁、安全(例如避免了空指针异常)、工具友好(Eclipse、Android Studio)

Android四大组件:
Activity(最常用的一个,最简单的界面都需要它)、Service(主要用于进行后台操作)、BroadCast Recevicer、Content provider。

Android视图控件架构:
在这里插入图片描述
1.一个完整的界面基本上是按照这样的布局结构来进行扩展的。
2.在 Android 所有的控件和 Layout 都有着一个父类 View 。Anroid 通过继承的方式,对父类控件进行继承,由此来在父类基础上创造新的控件。

学习源码:
阅读源码是一种很好的学习方式,源码都是由谷歌的大佬们写的,我们可以学习和借鉴他们的写法。比如看一下Button的实现类,会有很大的收获。

安卓的四层架构:
Linux内核层、系统运行库层、API框架层、系统应用层
在这里插入图片描述
安卓为什么要为每个运行程序开虚拟机:
android是基于Linux的,封装了JVM和ADT。android应用经过编译内后生成.apk文件编译后生成.dex文件。为了让.dex文件能顺利在Linux上顺利运行,Android开发了ADT虚拟机。

Dalvik:
Dalvik是Google公司自己设计用于Android平台的虚拟机。Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。它可以支持已转换为 .dex(即Dalvik Executable)格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。Dalvik 经过优化,允许在有限的内存中同时运行多个虚拟机的实例,并且[1]每一个Dalvik 应用作为一个独立的Linux 进程执行。独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭。很长时间以来,Dalvik虚拟机一直被用户指责为拖慢安卓系统运行速度不如IOS的根源。

ART:
ART模式英文全称为:Android runtime,谷歌Android 4.4系统新增的一种应用运行模式,与传统的Dalvik模式不同,ART模式可以实现更为流畅的安卓系统体验,对于大家来说,只要明白ART模式可让系统体验更加流畅,不过只有在安卓4.4以上系统中采用此功能。

二者的区别:
ART处理应用程序执行的方式完全不同于Dalvik,Dalvik是依靠一个Just-In-Time (JIT)编译器去解释字节码。开发者编译后的应用代码需要通过一个解释器在用户的设备上运行,这一机制并不高效,但让应用能更容易在不同硬件和架构上运 行。ART则完全改变了这套做法,在应用安装时就预编译字节码到机器语言,这一机制叫Ahead-Of-Time (AOT)编译。在移除解释代码这一过程后,应用程序执行将更有效率,启动更快。

ios:
简介:
IOS是由苹果公司开发的移动操作系统 [1] 。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad上。iOS与苹果的macOS操作系统一样,属于类Unix的商业操作系统。原本这个系统名为iPhone OS,因为iPad,iPhone,iPod touch都使用iPhone OS,所以2010年WWDC大会上宣布改名为iOS(iOS为美国Cisco公司网络设备操作系统注册商标,苹果改名已获得Cisco公司授权)。

ios系统优势:软件与硬件整合度高,界面美观、易操作,安全性强,应用数量多、品质高

ios应用开发语言:
1Object-C,iOS开发的标准语言是objective-c。是c的一种超集, 它是对c的扩展,支持面向对象编程。像后来的一些高级语言java,c#等都借鉴了该语言的面向对象特性。 当然在iOS开发过程中,也支持c/c++语言与原生的objective-c混编。
2.Swift,苹果于2014年WWDC苹果开发者大会发布的新开发语言,可与Objective-C共同运行于macOS和iOS平台,用于搭建基于苹果平台的应用程序。
Swift是一款易学易用的编程语言,而且它还是第一套具有与脚本语言同样的表现力和趣味性的系统编程语言。Swift的设计以安全为出发点,以避免各种常见的编程错误类别。2015年12月4日,苹果公司宣布其Swift编程语言开放源代码。长600多页的The Swift Programming Language可以在线免费下载。

ios系统架构:
iOS系统分为可分为四级结构,由上至下分别为可触摸层(Cocoa Touch Layer)、媒体层(Media Layer)、核心服务层(Core Services Layer)、核心系统层(Core OS Layer),每个层级提供不同的服务。低层级结构提供基础服务如文件系统、内存管理、I/O操作等。高层级结构建立在低层级结构之上提供具体服务如UI控件、文件访问等。
在这里插入图片描述
HTML5:
简介:
HTML5是构建Web内容的一种语言描述方式。HTML5是互联网的下一代标准,是构建以及呈现互联网内容的一种语言方式.被认为是互联网的核心技术之一。HTML产生于1990年,1997年HTML4成为互联网标准,并广泛应用于互联网应用的开发。
HTML5是Web中核心语言HTML的规范,用户使用任何手段进行网页浏览时看到的内容原本都是HTML格式的,在浏览器中通过一些技术处理将其转换成为了可识别的信息。HTML5在从前HTML4.01的基础上进行了一定的改进,虽然技术人员在开发过程中可能不会将这些新技术投入应用,但是对于该种技术的新特性,网站开发技术人员是必须要有所了解的。
HTML5 技术结合了 HTML4.01 的相关标准并革新,符合现代网络发展要求,在 2008 年正式发布。HTML5 由不同的技术构成,其在互联网中得到了非常广泛的应用,提供更多增强网络应用的标准机。与传统的技术相比,HTML5 的语法特征更加明显,并且结合了 SVG 的内容。这些内容在网页中使用可以更加便捷地处理多媒体内容,而且 HTML5中还结合了其他元素,对原有的功能进行调整和修改,进行标准化工作。HTML5 在 2012 年已形成了稳定的版本。

学习网站:
https://www.w3school.com.cn/

优势:
1.网络标准统一、HTML5本身是由W3C推荐出来的
2.多设备、跨平台
3.即时更新
4.提高可用性和改进用户的友好体验
5.增加新的标签
6.可以给站点带来更多的多媒体元素
7.可以很好的替代Flash和Silverlight
8.涉及到网站的抓取和索引的时候,对于搜索引擎很友好
9.被大量应用于移动应用程序和游戏

劣势:
1.安全性:web storage、web socket这样的功能容易被黑客利用,来盗取用户的信息和资料。
2.完善性:许多特性各浏览器的支持程度也不一样
3.性能:某些平台上的引擎问题导致HTML5性能低下
4.兼容性:最大的缺点,IE9以下的浏览器几乎全军覆没

为什么适合移动开发:
1.跨平台兼容性
2.远程动态更新
3.Hybrid’应用流行
4.低成本\维护成本
5.HTML5能力不断提升
6.利用移动设备功能
7.自由灵活编码设计
8.多设备一次性编码

HTML5移动开发的9种框架:
1.jquery mobile框架
2.bootstrap框架
3.ionic框架
4.Mobile Angular UI框架
5.Intel XDK框架
6.Appcelerator Titanium框架
7.Sencha Touch框架
8.Kendo UI框架
9.PhoneGap框架
推荐一篇博客:https://www.jianshu.com/p/ba60911f7a0a

Flutter:
简介:
Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。Flutter 开源、免费,拥有宽松的开源协议,适合商业项目。
Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台 [3] 。
Flutter 可以方便的加入现有的工程中。在全世界,Flutter 正在被越来越多的开发者和组织使用,并且 Flutter是完全免费、开源的。它也是构建未来的 Google Fuchsia 应用的主要方式。
Flutter 组件采用现代响应式框架构建,这是从React中获得的灵感,中心思想是用组件(widget)构建你的UI。 组件描述了在给定其当前配置和状态时他们显示的样子。当组件状态改变,组件会重构它的描述(description),Flutter 会对比之前的描述, 以确定底层渲染树从当前状态转换到下一个状态所需要的最小更改。

优势:
快速开发,富有表现力和灵活的UI,具有原生性能,统一的应用开发体验

Flutter架构:
在这里插入图片描述

开发语言:
Dart是谷歌开发的计算机编程语言,后来被Ecma (ECMA-408)认定为标准 [1] 。它被用于web、服务器、移动应用 [2] 和物联网等领域的开发。它是宽松开源许可证(修改的BSD证书)下的开源软件。
Dart是面向对象的、类定义的、单继承的语言。它的语法类似C语言,可以转译为JavaScript,支持接口(interfaces)、混入(mixins)、抽象类(abstract classes)、具体化泛型(reified generics)、可选类型(optional typing)和sound type system [3] 。

Dart语言的优势:

  1. Dart 非常灵活
  2. Dart 拥抱了开源生态系统
  3. Dart 很容易学习,容易上手

猜你喜欢

转载自blog.csdn.net/tran_sient/article/details/105973564