移动开发技术培训_第1页
移动开发技术培训_第2页
移动开发技术培训_第3页
移动开发技术培训_第4页
移动开发技术培训_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

20七月2026移动开发技术培训第一部分移动开发平台介绍第二部分开发模式的区别及适用场景目录第三部分移动开发技术介绍第四部分移动应用架构及过程第五部分推荐工具及组件一、移动应用平台发展历程移动应用平台定义是一个平台,旨在为移动应用服务。平台给移动应用提供两个层面的服务,一是应用开发方面,为开发人员提供开发语言、开发框架、开发工具、开发规范和最佳实践。二是应用管理层面,管理应用的打包、上传、发布、推广和分配。

依赖平台提供的服务,移动应用可以更有效的利用终端资源,能够加快从策划到应用上线的进度,能够有效提升应用的质量。操作系统SDK开发工具部署工具设计工具应用生态圈iosandroid一、移动开发平台介绍智能终端发展对应智能终端的发展历程,平台开发技术也经理如下几个时期:非智能机时期,私有SDK时期,WAP时期硬件层面:功能机,黑色屏,灰屏,短信,GSM通话,单片机为主的CPU软件层面:WAP、WML。WAP是协议,WML是标记语言OS:私有OS或者很简陋的OS,并没有统一的OS开发语言:C/C++开发情况:无SDK或者私有SDK,用于公司合作性质的SDK,没有独立的移动开发者或者公司智能机时期,开放SDK时期,WAP2.0时期硬件层面:智能机,彩屏,GPRS/X-CDMA,MP3,MP4,ARM的CPU,MTK的CPU开始进入并占主导软件层面:Symbian的SDK,J2ME,WAP2.0进入主流OS:出现Symbian这样的合作OS或者基于Linux的一些OS开发语言:C/C++,Java开发情况:SDK标准更加的开放。SYMBIAN开发成为主流一、移动开发平台介绍移动应用平台发展手机OS时期,更加强大的SDK,HTML(5)取代WML成为移动Web网页技术的主流技术硬件层面:OS手机,高分屏,3G+4GLTE,多核CPU+大功率显卡,大容易SD卡进入主流。触摸屏,视频,照相,语音,动力仪,GPS成为标配软件层面:WAP网站慢慢消失,HTML5取代WML成为移动网页开发的主流技术

OS:Android,iOS成为主流,同时还有FireOS,Ubuntu进入开发语言:C/C++,Java,object-c,swift,javascript,etc.开发情况:SDK标准分成两大主要阵营ios与android,web手机开始初具规模。一、移动开发平台介绍移动应用平台发展IOSIOS:即iPhoneOS,苹果公司开发的移动操作系统,于2007年公布,最初的设计是作为iPhone的操作系统,由于它的成功,后续也应用在iPod、iPad、AppleTV等产品之上。IOS与MacOSX一样同属于类Unix的商业OS。2007.62007.102008.32010.22010.620112012.620132014-2016Iphoneos1首发SDK首发测试开发报首发系统重构,ipad搭载os改名IOSApp突破50万Ios6,200项功能Ios7,扁平化设计Ios8、9发展历程概述一、移动开发平台介绍IOSiOS的系统架构分为四个层次:核心操作系统层(CoreOSlayer)、核心服务层(CoreServiceslayer)、媒体层(Medialayer)和可触摸层(CocoaTouchlayer)。CoreOS是位于iOS系统架构最下面的一层是核心操作系统层,它包括内存管理、文件系统、电源管理以及一些其他的操作系统任务。它可以直接和硬件设备进行交互。CoreServices是核心服务层,可以通过它来访问iOS的一些服务。Media是媒体层,通过它我们可以在应用程序中使用各种媒体文件,进行音频与视频的录制,图形的绘制,以及制作基础的动画效果。CocoaTouch是可触摸层,这一层为我们的应用程序开发提供了各种有用的框架,并且大部分与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作。一、移动开发平台介绍IOS基于SDK能够开发运行在ipone、ipad、iwatch等设备上的应用。开发工具xcode:App集成开发工具,性能稳定、功能强大。提供了代码编辑器、编译器、构建器等工具。开发语言object-c、swift:object-c是面向对象的c语言,swift是苹果公司出的现代编程语言,几乎集成了现代流行开发语言(java、go、javascript等)的优点,与oc相比开发速度和体验更好。设计工具Storyboard:xcode中集成了UI设计提供具,开发人员可以通过拖拽组件面板来构建应用,同时可以管理UI界面之间的传递关系。一、移动开发平台介绍IOSApp的发布:发布应用的应用商店并管理版本。打包上传:提供了App打包上传工具,根据开发者证书的不同提供了不同的打包方式。证书管理:分为开发者证书和发布证书两种,开发者证书用于App过程中进行实机测试,发布证书用于把App发布到AppStore中。App管理:应用发布后就可在AppStore中进行出售,平台自动统计下载情况,并进行收入分配,应用更新需要重新发布。一、移动开发平台介绍AndroidAndroid:2005年Google收购并注资Android,与84家同盟共同研发优化,随后以Apache许可授权开放了其源码,2008年10月发布第一款智能机,11年市场份额全球第一。Android是一种基于Linux的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。概述发展历程2003年10月,AndyRubin等人创建Android公司,并组建Android团队。2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成。Google以Apache免费开源许可证的授权方式,发布了Android的源代码。2008年9月,谷歌正式发布了Android1.0系统。2012年1月6日,谷歌AndroidMarket已有10万开发者推出超过40万活跃的应用。2013年11月1日,Android4.4正式发布。2014年10月15日,Android5.0正式发布.一、移动开发平台介绍AndroidAndroid的系统架构和其操作系统一样,采用了分层的架构,从架构图看,Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。系统架构一、移动开发平台介绍Android应用程序:Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。应用程序框架:开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块。系统运行库:每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制。Linux内核:Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。一、移动开发平台介绍Android利用AndroidStudio开发App:Google提供了集成化开发工具androidstudio,该工具集代码编写、智能提示、可视化设计、一站式构建为一体,为开发人员提供良好开发体验。App能够安装绝大多数手机中:当前android系统的预装量已经是世界第一,得到了绝大多数手机厂商的支持,这意味着开发的App可以运行在上亿台的移动终端中。App可以兼容之前的android版本:androidsdk有向前兼容的特点,新的版本会持续兼容早期的版本,开发人员只需开发最新的版本(不使用新版本的api),就基本可以在早期的系统中运行。App可以发布在第三方应用市场中:android拥有众多的第三方应用市场,比如应用宝、91助手、百度手机助手等等,应用发布在这些平台中。一、移动开发平台介绍第二部分开发模式的区别及适用场景第二部分移动开发平台介绍目录第三部分移动开发技术介绍第四部分移动应用架构及过程第五部分推荐工具及组件二、开发模式区别及适用场景开发模式当前主流的开发平台有ios、android、html5和windowsphone,开发模式有原生开发、html5开发和混合开发三种:原生开发:原生应用程序是某一个移动平台(比如iOS或安卓)所特有的,使用相应平台支持的开发工具和语言(比如iOS平台支持Xcode和Objective-C,安卓平台支持Eclipse和Java)。原生应用程序看起来(外观)和运行起来(性能)是最佳的。html5:HTML5应用程序使用标准的Web技术,通常是HTML5、JavaScript和CSS。这种只编写一次、可到处运行的移动开发方法构建的跨平台移动应用程序可以在多个设备上运行。混合:混合应用程序让开发人员可以把HTML5应用程序嵌入到一个细薄的原生容器里面,集原生应用程序和HTML5应用程序的优点(及缺点)于一体。从兼容性和跨平台两个纬度进行技术优劣比较。二、开发模式区别及适用场景开发模式二、开发模式区别及适用场景开发模式原生应用程序提供了最佳易用性、最佳特性以及最佳总体移动体验,以下这些是只能通过原生应用程序才能实现的功能:多点触控:双击、缩放及其他组合的用户界面(UI)手势。快速图形API:原生平台为你提供了显示最快速的图形。如果你显示只有寥寥几个元素的静态屏幕,这个功能可能不太重要,但如果你使用大量数据,需要快速刷新,这项功能却很重要。流畅动画:与快速图形API有关的是实现流畅动画的功能。这在动画、高度交互的报表或者转换照片和声音的计算密集型算法中显得尤为重要。内置部件:摄像头、地址簿、地理位置及设备的其他原生功能可以无缝地整合到移动应用程序中。另一个重要的内置部件是加密的存储装置,这方面稍后会有详细介绍。原生平台是人们耳熟能详的平台,所以如果你在这个熟悉的平台上添加人们期望的所有原生功能,也就拥有了一款使用起来完全更容易的应用程序。二、开发模式区别及适用场景开发模式HTML5移动应用程序大致上来说就是个网页或一系列网页,旨在可以在尺寸极小的屏幕上打开。因此,HTML5应用程序与设备无关,可以用任何一种现代的移动浏览器来打开。重大局限性在于离线存储和安全,对企业移动应用程序来说更是如此。虽然你可以通过将文件缓存在设备上,貌似实现离线功能,但这根本不是一种很好的解决办法。HTML5已全然成为一种非常流行的构建移动应用程序的方式。现在市面上有多种UI框架,可以解决开发人员都不想再次面对的一些最复杂的问题。iScroll在模拟快速滚动方面做得非常出色。JQueryMobile和SenchaTouch提供了优雅精致的移动组件。二、开发模式区别及适用场景开发模式混合开发集原生和HTML5两者的优点(及缺点),有两种部署方式:本地:你可以将HTML和JavaScript代码包装成移动应用程序二进制代码,采用类似原生应用程序结构的方式。在这种场景下,你使用RESTAPI,在设备和云端之间来回。服务器:另外,你可以从服务器来部署标准的Web应用程序(可采用可选的缓存机制,以提高性能),只要将容器用作UIWebview上面那层细薄的外壳。开发平台原生开发html5混合开发优势性能高、体验好扩展性好、定制灵活平台厂商主力推荐,互联网App首选开源组件丰富,可选择性广开源组件较多微信平台力推跨平台维护简单,只需更新服务器相对原生来说技术较为简单兼具原生和html5的优点劣势不能跨平台,每个平台单独开发技术含量较高,开发周期较长需要进行单独维护、版本升级难性能较差开源组件整合困难有手机浏览器适配的问题把原生和html5本身劣势最小化二、开发模式区别及适用场景开发模式二、开发模式区别及适用场景跨平台开发移动应用的跨平台开发有以下四个流派:Web流:也被称为Hybrid技术,它基于Web相关技术来实现界面及功能。代码转换流:将某个语言转成Objective-C、Java或C#,然后使用不同平台下的官方工具来开发。编译流:将某个语言编译为二进制文件,生成动态库或打包成apk/ipa/xap文件虚拟机流:通过将某个语言的虚拟机移植到不同平台上来运行。二、开发模式区别及适用场景跨平台开发-Web流Web流是大家都比较了解的了,比如著名的

PhoneGap/Cordova,它将原生的接口封装后暴露给JavaScript,可以运行在系统自带的WebView中,也可以自己内嵌一个

Chrome内核

。性能方面有以下的问题:早期浏览器实现比较差,没有进行优化CSS过于复杂,计算起来更耗时DOM提供的接口太有限,使得难以进行优化为了解决上述问题独辟蹊径的框架:ReactCanvas:抛弃html、css,直接用Canvas作画。HTML-GL:在WebGL上绘制界面。除了性能问题,Web流更严重的问题是功能缺失。比如iOS8就新增4000+API,而Web标准需要漫长的编写和评审过程,增加4000API对于Cordova这样的框架绝对是任重而道远的任务,所以为了更好地使用系统新功能,写Native代码是必须的。二、开发模式区别及适用场景跨平台开发-代码转换流写Native代码是必须的,但不同平台下的官方语言不一样,这会导致同样的逻辑要写两次以上,于是就有人想到了通过代码转换的方式来减少工作量,比如将Java转成Objective-C。将Java转成Objective-C:j2objc

能将Java代码转成Objective-C,据说Google内部就是使用它来降低跨平台开发成本的,比如GoogleInbox项目就号称通过它共用了70%的代码,效果很显著。将Objective-C转成Java:MyAppConverter,这个工具更有野心,它还打算将UI部分也包含进来,从它已转换的列表中可以看到还有UIKit、CoreGraphics等组件。将Java转成C#:Sharpen、JUniversal可以将Java转成C#。XMLVM:它首先将字节码转成一种基于XML的中间格式,然后再通过XSL来生成不同语言,目前支持生成C、Objective-C、JavaScript、C#、Python和Java。二、开发模式区别及适用场景跨平台开发-编译流将某个语言编译为普通平台下的二进制文件。C++类:目前Android、iOS和WindowsPhone都提供了C++开发的支持,目前有三种做法:只用C++实现非界面部分,这是官方比较推崇的方案,目前有很多应用是这么做的,比如

Mailbox

MicrosoftOffice。使用2D图形库来自己绘制界面。使用OpenGL来绘制界面,常见于游戏中。Xamarin:可以使用C#来开发Android及iOS应用。在iOS下是以AOT的方式编译为二进制文件的,在Android是内嵌了Mono虚拟机

来实现的,因此需要装一个17M的运行环境。RoboVM:可以将Java字节码编译为可在iOS下运行的机器码。Swift-Apportable/Silver:使用Swift/Objective-C来编译生成跨平台的SO文件,提供给Android调用。二、开发模式区别及适用场景跨平台开发-虚拟机流通过虚拟机来支持跨平台运行,比如JavaScript和Lua都是天生的内嵌语言,所以在这个流派中很多方案都使用了这两个语言。虚拟机流会遇到两个问题:一个是性能损耗,另一个是虚拟机本身也会占不小的体积。Hyperloop:将JavaScript

编译为原生代码,这样的好处是调用原生API会比较方便,至今仍然是试验阶段。NativeScript:用工具来自动生成wrapperAPI,和系统API保持一致。从底层实现上看,NativeScript在Android下内嵌了V8,而在iOS下内嵌了自己编译的JavaScriptCore。ReactNative:实现思路是在不同平台下使用平台自带的UI组件(类似

SWT)。ReactNative主要是借鉴了CSS中的Flexbox写法,还有navigator、XMLHttpRequest等几个简单的API,和html5不是一回事。它目前已经有组件仓库了,而且在github上都有500多个组件,其中有sqlite、Camera等原生组件。二、开发模式区别及适用场景跨平台开发-虚拟机流Weex:Weex能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS、安卓、YunOS及Web等多端部署。对于移动开发者来说,Weex主要解决了频繁发版和多端研发两大痛点,同时解决了前端语言性能差和显示效果受限的问题。开发者只需要在自己的APP中嵌入Weex的SDK,就可以通过撰写HTML/CSS/JavaScript来开发Native级别的Weex界面。Weex界面的生成码其实就是一段很小的JS,可以像发布网页一样轻松部署在服务端,然后在APP中请求执行。第三部分移动开发技术介绍第一部分移动开发平台介绍目录第二部分开发模式的区别及适用场景第四部分移动应用架构及过程第五部分推荐工具及组件移动应用平台的发展经过了三个阶段:功能机、智能机和手机OS。相应的移动开发技术也呈现出三个阶段的区别。三、移动开发技术介绍发展历程WapwmlSymbianC++j2meIosAndroidHtml5Css3reactWAP(无线通讯协议)是在数字移动电话、互联网或其他个人数字助理机(PDA)、计算机应用乃至未来的信息家电之间进行通讯的全球性开放标准。这一标准的诞生是WAP论坛成员努力的结果,WAP论坛是在1997年6月,由诺基亚、爱立信、摩托罗拉和无线星球(UnwiredPlanet)共同组成的。WAP能够运行于各种无线网络之上,如GSM、GPRS、CDMA等。WML是无线注标语言(WirelessMarkuplanguage)的英文缩写。支持WAP技术的手机能浏览由WML描述的Internet内容。WML是以XML(标准通用标记语言的子集)为基础的标记语言,用在规范窄频设备,如手机、呼叫器等如何显示内容和使用者接口的语言。因为窄频使得WML受到部分限制,如较小型的显示器、有限的使用者输入设备、窄频网络联机、有限的内存和资源等开发技术介绍wap三、移动开发技术介绍采用客户机/服务器模式,在移动终端中嵌入一个与PC机上运行的浏览器(比如IE,NETSCAPE)类似的微型浏览器,更多的事务和智能化处理交给WAP网关。Proxy的功能:1、实现WAP协议栈和Internet协议栈的转换2、编解码器(ContentEncodersandDencoders)3、高速缓存代理等

开发技术介绍wap三、移动开发技术介绍无线标记语言是一种标记语言,与HTML(标准通用标记语言下的一个应用)类似。它基于可扩展标记语言(标准通用标记语言下的一个子集)。WML是专门为手持式移动通信终端(手机)设计的,HTML是为个人计算机(电脑)设计的。与HTML编写的内容相比,WML消耗的内存和CPU时间更少,因此,WML更适合移动电话等手持移动设备。WML从HTML继承而来,但在语法上它较HTML更严格。用WML编写的页面称为DECK。DECK是由一套CARD构造的。WML的语法跟XML一样,WML是XML的子集。WML支持的元素有:Deck/Card元素;文本元素;文本格式化标签;锚元素;图像元素;事件元素;任务元素;输入元素;变量元素等元素。

开发技术介绍wml三、移动开发技术介绍简单例子:<?xmlversion="1.0"?><!DOCTYPEwmlPUBLIC"-//WAPFORUM//DTDWML1.1//EN""http://www.wappu.cn/DTD/wml_1.1.xml"><wml><cardid="HELLO"title="HELLO">Helloworld!</card></wml>显示结果如下:HELLOHelloWorld!

开发技术介绍wml三、移动开发技术介绍开发技术介绍j2meJ2ME是SUN公司针对嵌入式、消费类电子产品推出的开发平台,与J2SE和J2EE共同组成Java技术的三个重要的分支。J2ME实际上是一系列规范的集合,由JCP组织制定相关的Java

Specification

Request(JSR)并发布,各个厂商会按照规范在自己的产品上进行实现,但是必须要通过TCK测试,这样确保兼容性。J2ME(Java2平台微型版)就是Java程序在这些连接设备上的执行平台和开发环境,其基本思想和J2SE类似,就是在各种设备上安装适合它的Java虚拟机,应用程序则在虚拟机之上运行。

三、移动开发技术介绍开发技术介绍j2meJ2ME中有两个最主要的配置,分别是Connected

Limited

Devices

Configuration(CLDC)和Connected

Devices

Configuration(CDC)。他们是根据设备的硬件性能进行区分的。CLDC主要针对那些资源非常受限的设备比如手机、PDA、双工寻呼机等。而CDC主要面对那些家电产品,比如机顶盒、汽车导航系统等。体系结构的框图:三、移动开发技术介绍主流移动开发技术当前主流的移动开发平台是ios、android和web,对应这三个平台形成了三个技术体系:ios技术体系、android技术体系和Web技术体系。技术体系开发环境开发语言标准规范SDKiosXcodeMacosSvnObejct-cswiftswift开发规范ios人机界面规范iossdkandroidAndroidstudioJavasvnjavaAndroid界面设计规范java开发规范AndroidsdkwebDreamwaverSublimeHtml5Css3javascript开发规范各类开源框架三、移动开发技术介绍主流移动开发技术MacMacmini、Macbook、iMac、黑苹果、OSX虚拟机都行,但真要好好搞iOS开发那就最好不要黑苹果和虚拟机,这样会直接影响你对iOS开发的兴趣。同样,如果你用的是一台MacBook,这样会大大增加你对iOS的开发兴趣(MacBook最好的程序员电脑)。Xcode到苹果开发者中心下载并安装。开发者账号非必须,如果你想将自己的程序跑在iPhone上的话,它就必不可少了。个人开发者账号:应用能够发布到商店,不可以团队开发。公司开发者账号:应用能够发布到商店,可以团队开发。企业开发者账号:应用不能发布到商店,可以在本企业下单独分发。Ios-开发环境三、移动开发技术介绍主流移动开发技术Objective-C是扩充C的面向对象的编程语言,苹果的所有产品都是该语言开发。Objective-C的最初版本并不支持垃圾回收。SwiftSwift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于MacOS和iOS平台,用于搭建基于苹果平台的应用程序。Swift结合了C和Objective-C的优点并且不受C兼容性的限制。Swift采用安全的编程模式并添加了很多新特性,这将使编程更简单,更灵活,也更有趣。Swift是基于成熟而且倍受喜爱得Cocoa和CocoaTouch框架,他的降临将重新定义软件开发。Ios-开发语言三、移动开发技术介绍主流移动开发技术IO9人机设计指南iOS

表现了以下三大设计原则:遵从(Deference):UI应该有助于用户更好地理解内容并与之交互,并且不会分散用户对内容本身的注意力。清晰(Clarity):各种尺寸的文字清晰易读;图标应该精确醒目,去除多余的修饰,突出重点,以功能驱动设计。深度(Depth):视觉的层次感和生动的交互动画会赋予UI新的活力,有助于用户更好地理解并让用户在使用过程中感到愉悦。Object-c,swift开发规范编写代码所遵从的规范,增强代码的可读性和效率。Ios-标准规范三、移动开发技术介绍主流移动开发技术IOSSDK包含API函数库、帮助文档、使用手册、辅助工具等资源。主要框架如下:Foundation.frameworkiOS开发的核心库,其中包括:常用数据结构(NSArray/NSDictionary/NSString等)、网络(NSURL../NSHTTP..)、多线程(NSThread/NSNSOperation)等。UIKit.framework库使用"UI"为前缀的类库被包含在这个framework中,这些大部分是系统的UI层面的控件。如UIViewController、UIView、UIButton、UILabel等。使用这些控件才能构建出一个完整的APP。QuartzCore.frameworkiOS的核心动画的API都被包含在这个framework中。Ios-SDK三、移动开发技术介绍主流移动开发技术JavaAndroid的开发语言是java,需要安装j2se的组件到电脑中,并配置环境变量。采用的版本是jdk7.0以上。AndroidstudioAndroidStudio是一个Android开发环境,基于IntelliJIDEA.类似EclipseADT,AndroidStudio提供了集成的Android开发工具用于开发和调试。基于Gradle的构建支持Android专属的重构和快速修复提示工具以捕获性能、可用性、版本兼容性等问题支持ProGuard和应用签名基于模板的向导来生成常用的Android应用设计和组件功能强大的布局编辑器,可以让你拖拉UI控件并进行效果预览android-开发环境三、移动开发技术介绍主流移动开发技术JavaJava语言是一种跨平台、适合于分布式计算的、面向对象的编程语言。Java技术具有简单性、稳健性、平台移植性和安全性,广泛应用于桌上型应用程序、电子设备的嵌入式软件开发、建设大型的分布式企业级应用程序。编程环境JDK(java开发工具包):包括一个完整的JRE工具和调试和监控的java应用程序。编程工具Eclipse:一个开放源代码的、基于Java的可扩展开发平台。NetBeans:开放源码的Java集成开发环境,适用于各种客户机和Web应用。IntelliJIDEA:在代码自动提示、代码分析等方面的具有很好的功能。android-开发语言三、移动开发技术介绍主流移动开发技术android人机设计指南设计原则:直接操作:直接操作的好处是当用户可以直接操作对象时,他们能更好的明白自己操作的结果。动画效果:界面会像真实世界的物体那样予以反映,所以它会增加用户与设备的使用感。看和点击:用户可以很容易的浏览这些选项并进行选择。尽量减少文本输入。用户控制:让用户(而不是程序)来触发和控制动作.要使动作简单直接,使用户可以容易的理解和记住。反馈和交流:在长时操作中,当用户操作时,他们需要及时的反馈和状态报告。整体审美效果:整体美观是指信息被很好的组织,要根据视觉设计原则保持一致。Java开发规范编写代码所遵从的规范,增强代码的可读性和效率。android-标准规范三、移动开发技术介绍主流移动开发技术SDK:(softwaredevelopmentkit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。Android模拟器集成开发环境插件调试监视服务:它集成在Dalvik(Android平台的虚拟机)中,用于管理运行在模拟器或者设备上的进程,并协助进行调试。Android调试桥:它用于向模拟器或手机设备安装应用程序的apk文件和从命令行访问模拟器或手机设备。Android资源打包工具SQLite3数据库跟踪显示工具:生成跟踪日志数据的图形分析视图。DX工具:它将class字节码重写为Android字节码(存储在dex文件中)。Android-sdk三、移动开发技术介绍主流移动开发技术chrome浏览器Chrome浏览器完全支持html5语法,同时配置有移动调试插件,开发人员可以查看、跟踪和调试代码。DreamweaverDreamweaverCS6是世界顶级软件厂商Adobe推出的一套拥有可视化编辑界面,用于制作并编辑网站和移动应用程序的网页设计软件。Dreamweaver支持代码、拆分、设计、实时视图等多种方式来创作、编写和修改网页。JetBrainsWebStormWebStorm是jetbrains公司旗下一款Java开发工具。被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaSIDE”等。与IntelliJIDEA同源,继承了IntelliJIDEA强大的JS部分的功能。web-开发环境三、移动开发技术介绍主流移动开发技术html5HTML5是近十年来Web开发标准最巨大的飞跃。和以前的版本不同,HTML5并非仅仅用来表示Web内容,它的新使命是将Web带入一个成熟的应用平台,在HTML5平台上,视频,音频,图象,动画,以及同电脑的交互都被标准化。web-开发语言三、移动开发技术介绍主流移动开发技术新特性用于绘画的canvas元素用于媒介回放的video和audio元素对本地离线存储的更好的支持新的特殊内容元素,比如article、footer、header、nav、section新的表单控件,比如calendar、date、time、email、url、search浏览器支持最新版本的Safari、Chrome、Firefox以及Opera支持某些HTML5特性。InternetExplorer9将支持某些HTML5特性。web-开发语言三、移动开发技术介绍主流移动开发技术css3CSS就是一种叫做样式表(stylesheet)的技术。也有的人称之为层叠样式表(CascadingStylesheet)。在主页制作时采用CSS技术,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制。CSS3是CSS技术的升级版本,新增了如下的功能模块:盒子模型、列表模块、超链接方式、语言模块、背景和边框、文字特效和多栏布局。JavascriptJavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分。是一种解释性脚本语言(代码不进行预编译)。主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。跨平台特性,在绝大多数浏览器的支持下。web-开发语言三、移动开发技术介绍主流移动开发技术标准规范:采用html5、css3标准规范。缩进与换行:[建议]使用4个空格作为一个缩进层级。模板代码的缩进优先保证

HTML

代码的缩进规则。命名规则:class:必须单词全字母小写,单词间以-分隔,且必须代表相应的模块或部件的内容或功能。id:必须保持在页面中的唯一性,命名应该具有明确的语义。

标签:Html中的标签名必须使用小写字母,标签的闭合要符合html5的规定,标签的使用必须遵循标签的语义。属性:属性必须使用小写字母,其属性值必须用双引号包围。布尔类型的建议不添加属性值。自定义属性建议以

xxx-

为前缀,推荐使用data-。Sdk:当前所有的前端框架都是采用html5、css3和javascript技术来构建的,不同的框架提供的基础功能和接口不尽相同,但都符合标准规范。Web-标准规范-SDK三、移动开发技术介绍第四部分移动应用架构及过程第二部分开发模式的区别及适用场景目录第三部分移动开发技术介绍第一部分移动应用平台介绍第五部分推荐工具及组件项目团队组成四、开发过程及架构移动应用开发需要组建一个项目团队,根据职能不同团队分为产品经理、ui设计师、开发工程师和测试工程师,其中开发工程师又根据开发技术的不同分为html5开发工程师、ios开发工程师、android开发工程师和后端开发工程师。开发过程四、开发过程及架构移动应用开发包括产品策划、ui设计、应用开发、测试和发布等过程,其中应用开发根据平台技术的不同分为ios、android、html5和后端开发四部分,应用开发完成后要进行实体机内测,测试成功再进行小范围的公测,公测结束则发布正式版本。系统架构四、开发过程及架构移动应用的架构要考虑稳定性、扩展性强、易维护、支持高并发等特性。一种通用的架构方式如下:移动终端移动终端移动终端负载均衡应用服务器集群数据库服务器集群jsonjson第五部分推荐工具及组件第二部分开发模式的区别及适用场景目录第三部分移动开发技术介绍第一部分移动应用平台介绍第四部分移动应用架构及过程ios五、推荐工具及组件官方资源:苹果官方提供很多ios开发资料,分为编程指导和用户接口两类:编程指导:

ios五、推荐工具及组件用户接口:

ios五、推荐工具及组件学习网站::开源后独立出来的Swift开源社区。GitHub:apple:苹果在GitHub上的开源项目。NShipster:著名开源作者MattThompson创建的开发技术博客网站。objc.io:关于Objective-C最佳实践和先进技术的期刊。A:质量很高的一个iOS开发教程站。SwiftGG:一个走心的Swift翻译组,由《TheSwiftProgrammingLanguage》中文版翻译团队原班人马组成,翻译的文章来源于国外的优秀Swift网站和博客,且全部获得作者和网站授权。:swift开发最佳入门学习网站。ios五、推荐工具及组件常用组件:网络访问组件:Alamofire是

Swift

语言的HTTP网络开发工具包,实现了基于http协议的数据传输和相应。ios五、推荐工具及组件常用组件:Json转换组件:ObjectMapper是swift编写的框架,用于把json对象转换成Class或者struct。ios五、推荐工具及组件常用组件:图片缓存组件:Kingfisher是swift实现的轻量级的框架,用于从网络上下载和缓存图片。图片缓存分为内存和硬盘两级。ios五、推荐工具及组件常用组件:信息提示组件:MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单、方便,并且可以对显示的内容进行自定义,功能很强大,很多项目中都有使用到。ios五、推荐工具及组件常用组件:画廊组件:SDCycleScrollView是开源的图片轮播组件,AutoscrollBanner.无限循环图片、文字轮播器。ios五、推荐工具及组件常用组件:上拉加载组件:MJRefresh是轻耦合的下拉刷新上拉加载更多组件。android五、推荐工具及组件官方资源:google官方提供很多ios开发资料,包括设计,培训,指南和文档。android五、推荐工具及组件学习网站:CodePath:CodePath是国外一个技术培训机构,主要培训iOS和Android开发。Vogella:Vogella提供的Android开发教程也是可圈可点的,可能知识点覆盖不是特别全,但是单个知识点,Vogella讲解的还是很详细的。Tuts+:Tuts+是一个技术教程,课程和电子书的网站,基本上热门的技术都提供了Lynda:Lynda是一个在线学习网站,该网站提供技术,设计等很多的课程。eoeandroid:最大的Android开发社区。Androidchina:android开发中文网站。android五、推荐工具及组件常用组件:工具栏组件:ActionBarSherlock可以实现在所有的Android版本上实现ActionBar的效果和功能。android五、推荐工具及组件常用组件:图片缓存组件:Android-Universal-Image-Loader,目前使用最广泛的图片

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论