拆分词条 android
成都创新互联服务项目包括调兵山网站建设、调兵山网站制作、调兵山网页制作以及调兵山网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,调兵山网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到调兵山省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
;ct=17pn=0tn=ikaslistrn=10lm=0fr=search求助编辑百科名片
AndroidAndroid是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用安卓(非官方)或安致(官方)。Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。Android的主要竞争对手是苹果公司的iOS以及RIM的Blackberry OS。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2011年11月数据,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为58%。
中文名: 安卓、安致
外文名: Android
开发商: Google/开放手持设备联盟
发行商: Google
发行时间: 2008年9月23日
编程语言: C/C++(底层) Java等(应用层)
源码模式: 混合(自由免费,开放源码)
包类型: APK
支持平台: ARM、MIPS、x86
内核类: 整块性核心(Linux)
目录
名称来源
内置服务
开放手持设备联盟
版本记录命名规则
发行版本
发展历史
系统架构应用程序(部分)
中介软件
硬件抽像层
内核
安全权限机制
名称来源
内置服务
开放手持设备联盟
版本记录 命名规则
发行版本
发展历史
系统架构 应用程序(部分)
中介软件
硬件抽像层
内核
安全权限机制
展开 编辑本段名称来源
Android一词最早出现于法国作家利尔亚当(Auguste Villiers de l'Isle-Adam)在1886年发表的科幻小说《未来夏娃》(L'ève future)中。他将外表像人的机器起名为Android。
编辑本段内置服务
谷歌移动服务(英文:Google Mobile Service)是谷歌的一项服务,该服务简称“GMS”,指在让用户利用移动电话或其他移动设备使用谷歌搜索、谷歌地图、Gmail、YouTube、Android Market等谷歌服务产品。 谷歌将谷歌移动服务(GMS)内嵌到Android手机系统中,并且对android手机生产商给予不同程度的授权。 GMS是Android操作系统的灵魂,大部分用户使用Android手机,其实就是为了使用谷歌服务。
编辑本段开放手持设备联盟
开放手持设备联盟(Open Handset Alliance)是美国Google公司于2007年11月5日宣布组建的一个全球性的联盟组织。这一联盟将支持Google发布的手机操作系统或者应用软件,共同开发Android系统的开放源代码。开放手持设备联盟包括手机制造商、手机芯片厂商和移动运营商。
编辑本段版本记录
命名规则
Android 用甜点作为它们系统版本的代号的命名方法开始于 Andoird 1.5 发布的时候。作为每个版本代表的甜点的尺寸越变越大,然后按照26个字母数序:纸杯蛋糕,甜甜圈,松饼,冻酸奶,姜饼,蜂巢,冰激凌三明治
发行版本
版本 备注
Android1.1 2008 年9月发布的Android第一版
Android 1.5
Cupcake
(纸杯蛋糕) 2009年4月30日,官方1.5版本(Cupcake 纸杯蛋糕)的Android发布。主要的更新如下:
1、拍摄/播放影片,并支持上传到Youtube
2、支持立体声蓝牙耳机,同时改善自动配对性能
3、最新的采用WebKit技术的浏览器,支持复制/贴上和页面中搜索
4、GPS性能大大提高
5、提供屏幕虚拟键盘
6、主屏幕增加音乐播放器和相框widgets
7、应用程序自动随着手机旋转
8、短信、Gmail、日暦,浏览器的用户接口大幅改进,如Gmail可以批量删除邮件
9、相机启动速度加快,拍摄图片可以直接上传到Picasa
10、来电照片显示
Android 1.6
Donut
(甜甜圈) 2009年9月15日,1.6(Donut 甜甜圈)版本软件开发工具包发布。主要的更新如下:
1、重新设计的Android Market手势
2、支持支持CDMA网络
3、文字转语音系统(Text-to-Speech)
4、快速搜索框
5、全新的拍照接口
6、查看应用程序耗电
7、支持虚拟私人网络(VPN)
8、支持更多的屏幕分辨率。
9、支持OpenCore2媒体引擎
10、新增面向视觉或听觉困难人群的易用性插件
Android2.0/2.0.1/2.1
Eclair
(松饼) 2009年10月26日,2.0(Eclair 松饼)版本软件开发工具包发布。主要的更新如下:
1、优化硬件速度
2、"Car Home"程序
3、支持更多的屏幕分辨率
4、改良的用户界面
5、新的浏览器的用户接口和支持HTML5
6、新的联系人名单
7、更好的白色/黑色背景比率
8、改进Google Maps3.1.2
9、支持Microsoft Exchange
10、支持内置相机闪光灯
11、支持数码变焦
12、改进的虚拟键盘
13、支持蓝牙2.1
14、支持动态桌面的设计
Android 2.2/2.2.1
Froyo
(冻酸奶) 2010年5月20日,2.2(Froyo 冻酸奶)版本软件开发工具包发布。主要的更新如下:
1、整体性能大幅度的提升
2、3G网络共享功能。
3、Flash的支持。
4、App2sd功能。
5、全新的软件商店。
6、更多的Web应用API接口的开发。
Android 2.3
Gingerbread
(姜饼) 2010年12月7日,2.3(Gingerbread 姜饼)版本软件开发工具包发布。主要的更新如下:
1、增加了新的垃圾回收和优化处理事件
2、原生代码可直接存取输入和感应器事件、EGL/OpenGL ES、OpenSL ES。
3、新的管理窗口和生命周期的框架。
4、支持VP8和WebM视频格式,提供AAC和AMR宽频编码,提供了新的音频效果器
5、支持前置摄像头、SIP/VOIP和NFC(近场通讯)
6、简化界面、速度提升:
7、更快更直观的文字输入:
8、一键文字选择和复制/粘帖:
9、改进的电源管理系统:
10、新的应用管理方式:
Android 3.0
Honeycomb
(蜂巢) 2011年2月2日, 3.0(Honeycomb 蜂巢)版本主要更新如下:
·优化针对平板
·全新设计的UI增强网页浏览功能
·n-app purchases功能
Android 3.1
Honeycomb
(蜂巢) 2011年5月11日在Google I/O开发者大会宣布发布,版本主要更新如下:
Honeycomb蜂巢(改进3.0BUG)
经过优化的Gmail电子邮箱;
全面支持GoogleMaps
将Android手机系统跟平板系统再次合并从而方便开发者。
任务管理器可滚动,支持USB 输入设备(键盘、鼠标等)。
支持 Google TV.可以支持XBOX 360无线手柄
widget支持的变化,能更加容易的定制屏幕widget插件。
Android 3.2
Honeycomb
(蜂巢) 2011年7月13日发布,版本更新如下:
支持7英寸设备
引入了应用显示缩放功能
Android 4.0
Ice Cream Sandwich
(冰激凌三明治) 2011年10月19日 在香港发布,
4.0(Ice Cream Sandwich 冰激凌三明治)版本主要更新如下:
1、全新的ui
2、全新的Chrome Lite浏览器,有离线阅读,16标签页,隐身浏览模式等。
3、截图功能
4、更强大的图片编辑功能
5、自带照片应用堪比Instagram,可以加滤镜、加相框,进行360度全景拍摄,照片还能根据地点来排序
6、Gmail加入手势、离线搜索功能,UI更强大。
7、新功能People:以联系人照片为核心,界面偏重滑动而非点击,集成了Twitter、Linkedin、Google+等通讯工具。有望支持用户自定义添加第三方服务。
8、新增流量管理工具,可具体查看每个应用产生的流量。
9、正在运行的程序可以像电脑一样的互相切换
10、人脸识别功能
11、系统优化、速度更快
12、支持虚拟按键,手机可以不再拥有任何按键
13、更直观的程序文件夹:
14、平板电脑和智能手机通用
15、支持更大的分辨率
16、专为双核处理器编写的优化驱动
17、全新的18、增强的复制粘贴功能
19、语音功能
20、全新通知栏:
21、更加丰富的数据传输功能
22、更多的感应器支持
23、语音识别的键盘:
24、全新的3D驱动, 游戏支持能力提升
25、全新的谷歌电子市场
26、增强的桌面插件自定义
Android N.n
Jelly Bean
“果冻豆” 继“冰激凌三明治”之后的下一版Android系统。
编辑本段发展历史
2005年事件 Google收购了成立仅22个月的高科技企业Android。 2007年事件 11月5日,Google公司正式向外界展示Android操作系统。 11月5日,Google与34家手机制造商、软件开发商、电信运营商和芯片制造商共同创建开放手持设备联盟。 2008年事件 5月28日,Patrick Brady于Google I/O大会上提出Android HAL架构图。 8月18日,Android获得美国联邦通信委员会的批准。 9月22日,谷歌正式对外发布第一款Android手机——HTC G1。 9月23日,谷歌发布Android1.0。 9月24日,全球业界都表示不看好Android操作系统,并且声称最多1年,Android就会被Google关闭。 2009年事件 4月30日,Android1.5正式发布。 5月10日,HTC G1和HTC G2市场大卖,成为仅次于iPhone的热门机型。 9月25日,Android1.6正式发布。 9月29日,HTC Hero G3广受欢迎,成为全球最受欢迎的机型。 10月28日,Android 2.0 智能手机操作系统正式发布。 11月10日,由于Android的火热,Android平台出现第一个恶意间谍软件:Mobile Spy,该程序会自动记录用户所输入的任何信息并发送到黑客的邮箱中,还可以视频录下用户的所有操作过程。 2010年事件 1月7日,Google发布了旗下第一款自主品牌手机:Nexus one(HTC G5)。 1月,谷歌与Linux基金会就谷歌修改了Linux内核而产生了矛盾。 2月3日,Linux内核开发者Greg Kroah-Hartman将Android的驱动程序从Linux内核“状态树”上除去,从此,Android与Linux开发分道扬镳。 5月19日,Google正式对外发布Android2.2智能操作系统。 5月20日,Google对外正式展示了搭载Android系统的智能电视-Google TV,该电视为全球首台智能电视。 7月1日,Google宣布正式与雅虎、亚马逊合作,并且在Android上推出多项Kindle服务和雅虎服务。 7月9日,美国NDP集团调查显示,Android系统已占据了美国手机市场28%的份额,全球17%的市场份额。 8月12日,Android平台出现第一个木马病毒:Trojan-SMS.AndroidOS.FakePlayer.a,该木马病毒会伪装成应用程序,当用户不小心安装之后,它便会疯狂地发送短信,使用户的手机开通高额的收费服务。 9月,Android应用数量超过9万个。 9月21日,Google对外公布数据,每日销售的Android设备的新用户数达到20万。 10月26日,Google宣布Android达到第一个里程碑:电子市场上的Android应用数量达到10万个。 12月7日,Google正式发布Android2.3操作系统。 2011年事件 1月,Android应用数量超过20万。 1月,Google对外公布数据,每日Android设备的新用户数达到30万。 2月2日,Android3.0正式发布。 6月,Android在日本的智能手机操作系统市场占有率达到57%。 7月,Android在欧洲的智能手机操作系统市场占有率达到了22.3% 7月,Google对外公布数据,Android每天的新用户达到55万,Android设备用户总数达1.35亿。 8月,谷歌收购摩托罗拉移动。 8月2日,Android手机已占据全球智能机市场48%的份额,并在亚太地区市场占据统治地位,终结了Symbian(塞班系统)的霸主地位,跃居全球第一。 8月,Android在韩国的智能手机操作系统市场占有率达到了95%。 8月,Android系统在35个国家市场占有率第一,平均市场占有率达到48%。 8月,Android系统成为亚太地区第一大系统,市场占有率为亚太地区第一大。 9月,数据显示,Android应用数目已经达到48万。 9月,Android在美国的智能手机操作系统市场占有率达到43%。 10月19日,谷歌正式发布Android 4.0操作系统。 11月15日,Android在中国大陆的智能手机操作系统市场占有率达到了58%。 11月18日,美国NPD数据显示,Android和iOS平台上的游戏占有率都首度超过任天堂的DS掌机和索尼的PSP掌机,手机游戏玩家也超过了掌机玩家,游戏开发商更倾向于向Android和iOS手机上开发游戏。 11月18日,谷歌报告显示,通过谷歌服务器激活的Android设备用户总数已经超过2亿,每天通过谷歌服务器激活的新用户数超过55万,而这仅仅是通过谷歌服务器激活的用户设备数。
编辑本段系统架构
Android是以Linux为核心的手机操作平台,作为一款开放式操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开发式操作系统。 在Android中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过NDK使用C/C++作为编程语言来开发应用程序,也可使用SL4A来使用其他各种脚本语言进行编程(如:python、lua、tcl、php等等),还有其他诸如:Qt(qt for android)、Mono(mono for android)等一些著名编程框架也开始支持Android编程,甚至通过MonoDroid,开发者还可以使用C#作为编程语言来开发应用程序。另外,谷歌还在2009年特别发布了针对初学者的Android Simple语言,该语言类似Basic语言。而在网页编程语言方面,JavaScript,ajax,HTML5,jquery、sencha、dojo、mobl、PhoneGap等等都已经支持Android开发。 而在Android系统底层方面,Android使用C/C++作为开发语言。
应用程序(部分)
Java开发方面 Android支持使用Java作为编程语言来开发应用程序,而Android的Java开发方面从接口到功能,都有层出不穷的变化。考虑到Java虚拟机的效率和资源占用,谷歌重新设计了Android的Java,以便能提高效率和减少资源占用,因而与J2ME等不同。 Android结构
其中Activity等同于J2ME的MIDlet,一个 Activity 类(Class)负责创建视窗(Windows),一个活动中的Activity就是在 foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(Stopped),甚至被系统清除(Kill)。 View等同于J2ME的Displayable,程序人员可以通过 View 类与“XML layout”档将UI放置在视窗上,Android 1.5的版本可以利用 View 打造出所谓的 Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的Android Hero手机即含有大量的widget。至于ViewGroup 是各种layout 的基础抽象类(abstract class),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity 中,要通过findViewById()来从XML 中取得View,Android的View类的显示很大程度上是从XML中读取的。View 与事件(event)息息相关,两者之间通过Listener 结合在一起,每一个View都可以注册一个event listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于J2ME的BitMap。 C/C++开发方面 早期的Android开发只支持Java作为编程语言开发应用程序,因而使得其他语言开发者只能望而却步。2010年4月,谷歌正式对开发者发布了Android NDK,NDK允许开发者使用C/C++作为编程语言来为Android开发应用程序,初版的NDK使得开发者看到了C/C++在Android开发中的希望。 但是,当前版本的NDK在功能上还有很多局限性:NDK并没有提供对应用程序生命周期的维护;NDK也不提供对Android系统中大量系统事件的支持;对于作为应用程序交互接口的UI API,当前版本的NDK中也没有提供。但是相对于初版的NDK,现在的NDK已经进行了许多重大的功能改进。 由此可见,NDK仍然需要完善和发展,相信未来随着NDK的发展,NDK可以做得更多更好。
中介软件
操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和虚拟机(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple Safari 浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自制的Bionic Libc。 Android采用OpenCORE作为基础多媒体框架。OpenCORE可分7大块:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。 Android 使用skia 为核心图形引擎,搭配OpenGL/ES。skia与Linux Cairo功能相当,但相较于Linux Cairo, skia 功能还只是雏形的。2005年Skia公司被Google收购,2007年初,Skia GL源码被公开,目前Skia 也是Google Chrome 的图形引擎。 Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。用户可通过ContentResolver类(Column)取得共用数据库。 Android的中间层多以Java 实现,并且采用特殊的Dalvik 虚拟机(Dalvik Virtual Machine)。Dalvik虚拟机是一种“暂存器型态”(Register Based)的Java虚拟机,变量皆存放于暂存器中,虚拟机的指令相对减少。 Dalvik虚拟机可以有多个实例(instance), 每个Android应用程序都用一个自属的Dalvik虚拟机来运行,让系统在运行程序时可达到优化。Dalvik 虚拟机并非运行Java字节码(Bytecode),而是运行一种称为.dex格式的文件。
硬件抽像层
Android 的 HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。 HAL stub 是一种代理人(proxy)的概念,stub 是以 *.so 档的形式存在。Stub 向 HAL“提供”操作函数(operations),并由 Android runtime 向 HAL 取得 stub 的 operations,再 callback 这些操作函数。HAL 里包含了许多的 stub(代理人)。Runtime 只要说明“类型”,即 module ID,就可以取得操作函数。
内核
Android 是运行于 Linux kernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等。Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 userspace,使得Linux driver 与 Linux kernel彻底分开。bionic/libc/kernel/ 并非标准的kernel header files。Android 的 kernel header 是利用工具由 Linux kernel header 所产生的,这样做是为了保留常数、数据结构与宏。 目前Android 的 Linux kernel控制包括安全(Security),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),驱动程序模型(Driver Model)等。下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。
安全权限机制
Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。 系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问。 Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作。这其中包括读写用户隐私数据(联系人或电子邮件),读写其他应用文件,访问网络或阻止设备待机等。 安装应用时,在检查程序签名提及的权限,且经过用户确认后,软件包安装器会给予应用权限。从用户角度看,一款Android应用通常会要求如下的权限: 拨打电话、发送短信或彩信、修改/删除SD卡上的内容、读取联系人信息、读取日程信息,写入日程数据、读取电话状态或识别码、精确的(基于GPS)地理位置、模糊的(基于网络获取)地理位置、创建蓝牙连接、对互联网的完全访问、查看网络状态,查看WiFi状态、避免手机待机、修改系统全局设置、读取同步设定、开机自启动、重启其他应用、终止运行中的应用、设定偏好应用、震动控制、拍摄图片等。 一款应用应该根据自身提供的功能,要求合理的权限。用户也可以分析一款应用所需权限,从而简单判定这款应用是否安全。如一款应用是不带广告的单机版,也没有任何附加内容需要下载,那么它要求访问网络的权限就比较可疑。
智能手机操作系统
IOS ▪ Android ▪ Symbian ▪ Windows Mobile ▪ Windows Phone 7
开放分类:
操作系统,google,智能手机,平板电脑,android
“android”在英汉词典中的解释(来源:百度词典):
android
KK: []
DJ: []
a.
1. 有人类特征的
2. (指骨盘)角形窄口的
3. 阳性的,男性的,雄性的
n.
1. (科幻小说中的)机器人
1、打开百度地图。
2、输入需要的地图的地理位置,如北站。
3、将需要地图的地点放大到浏览器可以完全浏览的状态
4、点击右下角的全景,显示出蓝色的路径,非常关键的步骤。
5、再次调整所需地点的地图大学,可以在浏览器可以完全显示的状态。
6、这时候,不要截图,而选择浏览器-文件-保存为图片,打开保存的图片,所有的文字和标签都不见了!
很多购物网站现在都支持360实物全景图像,可以360度任意选择查看样品,这样
对购买者来说是一个很好的消费体验,网上有很多这样的插件都是基于JQuery实现的
有收费的也有免费的,其实很好用的一个叫3deye.js的插件。该插件支持桌面与移动终
端iOS与Android,
所以先说一下它的360度全景图的原理
1. 首先需要对实物拍照,间隔是每张照片旋转15度,所以需要23张照片。
2. 照片准备好了以后,尽量选择JPG格式,裁剪到适当大小。
3. JAVASCRIPT中预加载所有照片,可以配合进度条显示加载精度
4. 创建/获取Canvas对象,加上鼠标监听事件,当鼠标左右移动时候,适度的绘制不
同帧。大致的原理就是这样,简单吧!
实现代码:
!DOCTYPE html
html
head
meta charset=utf-8"
titleFull 360 degree View/title
script
去掉百度地图上左下角的百度logo和那小段文字的具体操作步骤如下:
1、第一步需要打开百度地图app,按步骤进入下一步。如下图所示。
2、第二步则需要输入需寻找的地理位置,例如北站,如下图所示,然后按步骤进入下一步。
3、第三步是将我们要找的位置放大,直到地图上所有的街道信息全部显示出来为止。如下图所示,然后按步骤进入下一步。
4、然后,鼠标点击地图的右下角位置的全景图,使得可以显示出蓝色的路径,如下图所示,然后继续进入下一步。
5、接下来,需要将寻找到的位置的地图进行调整,使得该地图可以完整地显示出来。如下图所示,然后继续进入下一步。
6、最后,需要保存网页,当再次打开保存的图片时,就可以看到左下角的文字没有了,如下图所示。
web前端分为网页设计师、网页美工、web前端开发工程师
首先网页设计师是对网页的架构、色彩以及网站的整体页面代码负责
网页美工只针对UI这块儿的东西,比如网站是否做的漂亮
web前端开发工程师是负责交互设计的,需要和程序猿进行交互设计的配合。
web前端需要掌握的有脚本技术javascript DIV+CSS现下最流行的页面搭建技术,ajax和jquery以及简单的后端程序等。 后端的话可供开发的语言有 asp、php、jsp、.NET 这些后端开发语言的话搭建环境都不一样,具体如果自己想学的话看是想从事前端部分还是后端程序部分。后端开发如果有一定的条件的话可以转为软件开发。不过要有一定的语言基础,类似java语言。C#等。关键是看自己的兴趣爱好。。
这个到后期不会区分这么细,做前端到后期也会懂一些后端的技术,反之,后端也是。
在实际的开发过程中,当前这样定位前端、后端开发人员。
1)前端开发人员:精通JS,能熟练应用JQuery,懂CSS,能熟练运用这些知识,进行交互效果的开发。
2)后端开发人员:会写Java代码,会写SQL语句,能做简单的数据库设计,会Spring和iBatis,懂一些设计模式等。
现在来看,对前后端的要求还是蛮低的,尤其是后端,新员工经过培训之后都是可以参与到后端开发的,没有太高的技术门槛,唯一需要做的就是先变成熟练工种,这个阶段没有涉及到设计模式、架构、效率等一些列问题。
还是先google一下,看看网上对Web前端开发、Web后端开发分别是什么?
Web前端: 顾名思义是来做Web的前端的。这里所说的前端泛指Web前端,也就是在Web应用中用户可以看得见碰得着的东西。包括Web页面的结构、Web的外观视觉表现以及Web层面的交互实现。
Web后端:后端更多的是与数据库进行交互以处理相应的业务逻辑。需要考虑的是如何实现功能、数据的存取、平台的稳定性与性能等。
再来看看大公司对前后端人员招聘的要求,通过这个角度看看前端、后端的技术要求:
Web前端:
1)精通HTML,能够书写语义合理,结构清晰,易维护的HTML结构。
2)精通CSS,能够还原视觉设计,并兼容业界承认的主流浏览器。
3)熟悉JavaScript,了解ECMAScript基础内容,掌握1~2种js框架,如JQuery
4)对常见的浏览器兼容问题有清晰的理解,并有可靠的解决方案。
5)对性能有一定的要求,了解yahoo的性能优化建议,并可以在项目中有效实施。
6)......
Web后端:
1)精通jsp,servlet,java bean,JMS,EJB,Jdbc,Flex开发,或者对相关的工具、类库以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,对Web开发的模式有较深的理解
2)练使用oracle、sqlserver、mysql等常用的数据库系统,对数据库有较强的设计能力
3)熟悉maven项目配置管理工具,熟悉tomcat、jboss等应用服务器,同时对在高并发处理情况下的负载调优有相关经验者优先考虑
4)精通面向对象分析和设计技术,包括设计模式、UML建模等
5)熟悉网络编程,具有设计和开发对外API接口经验和能力,同时具备跨平台的API规范设计以及API高效调用设计能力
6)......
从几个公司的招聘要求可以看到,做Web开发,对前端和后端的要求是各自所不同的。而目前的实际情况,也和这个差不多,但是,自己无论在知识的掌握程度上,还是知识掌握的宽度上,都是不够的。
首先,自己在前端缺乏积累,没有沉淀,专业的前端技术的积累是从去年才开始的,同时,在前端也缺乏支撑与高手,所以,走起来比较困难。同时,前端人员培养的较少,一个原因是对前端了解太少,另外一个原因就是对前端与后端的工作比例估计不足。所幸,在这一年也在前端有了很快的进步,培养了几个优秀的开发人员,有意识的解决了前端的用户体验,这都是可喜的。今年,需要更进一步,专业化。
其次,在后端发展的不够宽,后端的知识体系已经比较完善,但是,很多应用点都没有涉及到。同时,对现有技术框架的理解都不够深入,太浮躁。目前的设计团队在解决互联网高并发、大数据量的存取上经验与能力都还不足,需要正视这些问题。后端技术的发展需要更加的精进,以解决实际存在的问题为主。
最后,在前端、后端都缺乏熟练工,这会影响到开发的速度,同时,也不利于后期技术的研究。
使用该全景图插件时要引入three.min.js和photo-sphere-viewer.min.js文件。
script src="js/three.min.js"/script
script src="js/photo-sphere-viewer.min.js"/script
可以创建一个空的div来放置全景图,通过CSS来设置它的尺寸。
div id="container"/div
要初始化该全景图插件,可以创建一个新的PhotoSphereViewer对象,然后在这个对象中插入一个参数对象,有两个参数是必须设置的:
var PSV = new PhotoSphereViewer({
// Path to the panorama
panorama: '1.jpg',
// Container
container: div
});
下面是该全景图插件的所有可用配置参数:
panorama:必填参数,全景图的路径。
container:必填参数,放置全景图的div元素。
autoload:可选,默认值为true,true为自动调用全景图,false为在后面加载全景图(通过.load()方法)。
usexmpdata:可选,默认值为true,如果Photo Sphere Viewer必须读入XMP数据则为true。
default_position:可选,默认值为{},定义默认的位置,及用户看见的第一个点,例如:{long: Math.PI, lat: Math.PI/2}。
min_fov:可选,默认值为30,观察的最小区域,单位degrees,在1-179之间。
max_fov:可选,默认值为90,观察的最大区域,单位degrees,在1-179之间。
allow_user_interactions:可选,默认值为true,设置为false则禁止用户和全景图交互(导航条不可用)。
tilt_up_max:可选,默认值为Math.PI/2,向上倾斜的最大角度,单位radians。
tilt_down_max:可选,默认值为Math.PI/2,向下倾斜的最大角度,单位radians。
zoom_level:可选,默认值为0,默认的缩放级别,值在0-100之间。
long_offset:可选,默认值为PI/360,mouse/touch移动时每像素经过的经度值。
lat_offset:可选,默认值为PI/180,mouse/touch移动时每像素经过的纬度值。
time_anim:可选,默认值为2000,全景图在time_anim毫秒后会自动进行动画。(设置为false禁用它)
theta_offset:过时的选项,可选,默认值为1440,自动动画时水平方向的速度。
anim_speed:可选,默认值为2rpm,动画的速度,每秒/分钟多少radians/degrees/revolutions。
navbar:可选值,默认为false。显示导航条。
navbar_style:可选值,默认为{}。导航条的自定义样式。下面是可用的样式列表:
backgroundColor:导航条的背景颜色,默认值为rgba(61, 61, 61, 0.5)。
buttonsColor:按钮的前景颜色,默认值为transparent。
activeButtonsBackgroundColor:按钮激活状态的背景颜色,默认值为rgba(255, 255, 255, 0.1)。
buttonsHeight:按钮的高度,单位像素,默认值为20。
autorotateThickness:autorotate图标的厚度,单位像素,默认值为1。
zoomRangeWidth:缩放的范围,单位显示,默认值50。
zoomRangeThickness:缩放的范围的厚度,单位像素,默认值1。
zoomRangeDisk:缩放范围的圆盘直径,单位像素,默认值为7。
fullscreenRatio:全屏图标的比例,默认值为3/4。
fullscreenThickness:全屏图标的厚度,单位像素,默认值为2。
loading_msg:可选,默认值为Loading…,图片加载时的提示文字。
loading_img:可选,默认值为null,在加载时显示的图片的路径。
size:可选,默认值null,全景图容器的最终尺寸。例如:{width: 500, height: 300}。
onready:可选值,默认值为null。当全景图准备就绪并且第一张图片显示时的回调函数。
!doctype html
html
head
meta charset="UTF-8"
meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"
meta name="viewport" content="width=device-width, initial-scale=1.0"
title基于Three.js的360X180度全景图预览插件/title
link rel="stylesheet" type="text/css" href="css/normalize.css" /
link rel="stylesheet" type="text/css" href="css/default.css"
link rel="stylesheet" href="css/example1.css" /
script src="js/three.min.js"/script
script src="js/photo-sphere-viewer.min.js"/script
script src="js/example1.js"/script
!--[if IE]
script src=""/script
![endif]--
/head
body
div
header
h1基于Three.js的360X180度全景图预览插件 spanA JavaScript library to display Photo Sphere panoramas/span/h1
div
a class="htmleaf-icon icon-htmleaf-home-outline" href="" title="jQuery之家" target="_blank"span jQuery之家/span/a
a class="htmleaf-icon icon-htmleaf-arrow-forward-outline" href="" title="返回下载页" target="_blank"span 返回下载页/span/a
/div
/header
div id="content"
p下面的例子可以让你调用预定义的全景图来测试这个全景图插件。点击下面的按钮来查看效果。/p
pTo see this panorama, just hit the link below: currently, the codediv/code has a height of 0 pixel but Photo Sphere Viewer will increase it to 500 pixels./p
div id="container"/div
p style="text-align: center;"
a href="#" id="go"调用预定义的全景图/a
/p
pNote that the panorama is here given as a relative path, but you can give to Photo Sphere Viewer an absolute one or an URL pointing to another website if this website allows CORS./p
p通过下面的按钮你可以上传自己电脑上的全景图来查看效果。代码使用FileReader API,非常简单,可以查看codeexample1.js/code文件。 /p
div id="your-pano"/div
form method="get" action="example1.html"
p style="text-align: center;"
input type="file" name="pano" id="pano" /
/p
/form
/div
/div
/body
/html