标题整的太大了,所以为了不让各位看官们失望,请不要抱着太大的期望来看待本文。从2011年12月开始进行移动网站的开发,经历了一年多的跌打滚爬,虽没有金刚钻,但也有点小九九。本人参照了Maximiliano Firtman的《Programming the Mobile Web》一书,其中稍微加上了点个人的一些看法,但是我不会明确告诉你们哪些是大师的,哪些是我这个鸟人的,我要沾光沾到底,好了,不扯淡了,开始吧~

中国互联网正在向移动端快速地发展,艾瑞咨询集团预测到2015年中国网民将达到7.3亿,其中7.1亿的用户都是移动互联网用户,加上HTML5、CSS3的兴起,移动网站将会大放光彩。所谓移动网站,其实他还是一个网站,只是和普通的PC网站比起来有一些不同之处而已:

1、导航:

构建移动网站的时候必须要为用户提供导航菜单中的内容项,参考M大师的说法,对于导航需要遵循一些建议:

  • 定义一些合适的用例,比如说搜索产品、查看产品信息、寻找附近卖家、点击拨打电话等。
  • 按照用户的使用频率,对定义好的用例进行排序之后提供给用户使用,但是切记一定要根据统计数据和大胆的猜测,即使调整用例的顺序。
  • 移动网站不比PC网站,一个用例可以点击个十次八次的,在移动网站上,尽量确保一个用例不让用户三次以上。
  • 切记在你的移动网站上提供一个PC网站的链接。
  • 因为移动设备的特殊性,要尽量减少用户输入的表单页面。
  • 移动网站不比Native应用,不需要那些启动界面、欢迎页面、新手指导之类的东东。

2、环境上下文:

移动网站的用户不像PC网站的用户可以坐在椅子上随意的浏览和操作,我们在做移动网站的时候很有必要思考用户可能使用的环境上下文,这将对你的移动网站的导航、用例设计以及可用性的需求提供很多帮助性的信息:

  • 准确定位移动网站的用户群体。
  • 告诉用户一个拿出设备访问你的移动网站的理由。
  • 你的移动网站能给用户提供什么有价值的东东。
  • 从移动的特性问问自己,你的移动网站能给用户提供什么帮助,像阿里巴巴的移动网站可以帮助卖家做生意,帮助买家查找自己的目标产品。。。
  • 根据不完全统计,用户使用手机的环境90%-日常休闲、85%-上厕所、69%-睡觉前、48%-公共交通中、40%-排队中。所以一定要考虑用户会在什么场景下访问你的移动网站。

3、渐进增强(Progressive Enhancement):

渐进增强是应用于网络设计中的一个简单又强大的技术,它定义了兼容性层次的概念。通俗点讲,就是从简单到复杂,逐步增强。如果你的移动网站一开始就是按照代表“高帅富”的iPhone标准开发的,那么请问你能保证你的网站能在“屌丝”的低端机上顺利访问吗?

其实,渐进增强有这么几个核心的原则:

  • 网站的基本内容是所有浏览器上都可以看得到。
  • 网站的基本功能在所有浏览器上都可以玩得转。
  • 解析标记语言包括了所有的内容。
  • 增强的网页布局通过外链的CSS样式。
  • 通过外链的JavaScript提供非侵入式的行为。
  • 尊重终端用户的浏览偏好。

接下来需要做的就是在以上几个原则的基础上逐步增强网站的交互、视觉、功能的增强。

4、多版本的实现手段:

多版本的实现其实就是创建N个不同的版本,来根据不同的设备类型来决定用户访问的应该是哪个版本。但是其实实际我们开发中,只提供两个版本:①适应低重端设备的版本,我们称之为标准版;②适应高端设备和智能手机的版本,我们称之为触屏版(有的网站称之为3G版之类的)。当然也有一些网站提供了一个中间版本。

*对于触屏版,现在时下流行一个叫响应式网页设计的说法,即一个网页多处运行,这里对响应式网页设计不做介绍,后续我会发文对这个进行详细的介绍。

下面将集合我这一年的开发经历,来说说移动网站设计的一些点,上面参照了M大师的书,所以写的还算整齐,但是下面可能就会比较零乱了,多担待~

针对移动设备的特性,移动网站设计应该是按照竖直排列的方式创建页面的区域模块,一般来讲,一个页面应该包括以下几个区域模块:

  • Header
  • 主导航栏
  • 内容模块
  • 二级导航栏
  • Footer

千万不要把移动网站理解成PC网站在移动设备上的一个简化版,相反移动网站的要求有时候却比PC网站还要高,他要求我们设计者能够理解用户的环境上下文,按照用户的习惯准确定位用户需求,提供精准的服务和内容,以及快速的访问接口。

给出一些总结的想法:

  • 避免页面中出现水平滚动的交互模式:移动网站页面设计以竖直排列为主要模式,水平滚动在技术实现上有难度,而且与用户惯性操作不符合。
  • 如果存在PC网站,要尽量保持一些视觉上一致的风格,比如整体网站的背景色,提示ICON图标等。
  • 减少文本字数,非资讯阅读类的模块,要尽量减少文本字数,用户并不是每一个人都是老学究,对满屏满屏的文字有兴趣。
  • 每一个页面都要使用清晰的字体,以320px宽度的屏幕为例,主要字体不要小于14px字体,辅助字体不要小于12px的字体。
  • 使用背景颜色来区分不同的内容区域模块。
  • 每一个页面上的链接数目尽量不要超过10个,当然首页除外。
  • 主导航栏的快捷链接数目尽量保持在3-4个,不要太多,如果导航快捷数目太多的时候,可以采用隐藏的方式实现,比如一个按钮,点击之后展开所有导航快捷链接,或者直接跳转到一个新的页面,布置所有的导航快捷链接。
  • 对标准版的网页,每一行的文本链接数目不要超过1个。
  • 对于按钮、输入框等需要用户进行点击的元素,尽可能扩大可点击区域,因为有些的手指比较粗大哦,呵呵~已320px宽度的屏幕为例,可点击区域最小不能小于40px*40px。同时给可点击元素之间设置一个合理的间距,不能小于20px。
  • 在页面Header和Footer上提供一个返回主页的按钮,在大内容的页面底部也需要提供一个返回顶部的按钮或者链接元素。
  • 记录用户的操作历史和习惯,便于预测用户的操作,比如用户的搜索关键词等。
  • 大段文本的时候如果不考虑多页面显示的话,可以优先显示文本的前几行,然后提供一个链接元素,点击后逐步展开其他的文本内容。
  • 尽可能减少用户输入信息,当使用输入域时,尽量保证一个输入项占用一行,下方用小号文字提供一些提示性信息。
  • 使用分页加载模式来取代PC网站的点击翻页操作,这个可以考虑使用“更多...”按钮或点击区域元素,也可以时髦一点,拖动底部自动加载,初始显示和每次分页加载的时候,建议每次加载10条数据。不要太多,也不能太少。
  • 对用户经常使用的输入框最好提供一个可清除输入内容的点击元素,比如搜索框。
  • 如果你的网站必须使用选项卡进行导航的时候,建议把你的导航选项卡固定在屏幕的底部,而不要放在顶部,因为用户浏览操作时,屏幕底部更接近手指。
  • 尽量使用列表元素,不要使用表格元素。
  • 一行只有一个文本链接时,记住把可点击区域设置为整行可点击,这样方便用户使用。
  • 为智能手机提供高质量的色彩图片,为iphone提供视网膜图片,这部分优化,我会在后续响应式设计中再说。
  • 从网站性能考虑,尽量减少请求次数,页面内部需要加载数据的时候,尽可能使用异步请求,而不用全页面的刷新方式。
  • 当列表中每一个项目都有图片的时候,初始只显示屏幕可见区域中的图片,其他图片请使用延迟加载的方式,我们戏称为“懒加载”。

当然,一个移动网站的架构和设计远不止上面所说的这些,从交互优化、视觉优化、SEO优化。。。等多个方面都有很多的工作要做,借用一句诗来结束本文“路漫漫其修远兮,吾将上下而求索”。

转载于:https://www.cnblogs.com/iamjiuye/archive/2013/04/27/3048212.html

初探移动网站的架构和设计相关推荐

  1. 如何估算代码量_千万级用户的大型网站,应该如何设计其高并发架构?(彩蛋)...

    目录 (1)单块架构 (2)初步的高可用架构 (3)千万级用户量的压力预估 (4)服务器压力预估 (5)业务垂直拆分 (6)用分布式缓存抗下读请求 (7)基于数据库主从架构做读写分离 (8)总结 本文 ...

  2. 读书笔记 之《软件架构设计: 大型网站技术架构与业务架构融合之道》

    大家好呀,我是小菜~ 帅哥美女,知道你们时间宝贵,那么就由小菜为你读好一本书,读一本好书,取其精华,与你共享~! 本文主要分享 <软件架构设计:大型网站技术架构与业务架构融合之道> 如有需 ...

  3. 说说大型网站可伸缩性架构的设计原理

    可伸缩性架构指的是:不改变网站的软硬件设计,只通过改变部署的服务器数量就可以扩大或缩小网站的服务处理能力. 大型网站中的 "大型",可以表现在以下几个方面: * 用户方面 - 大量 ...

  4. 软件架构设计 大型网站技术架构与业务架构融合之道

    前言 架构是一种综合能力,而不是某一方面的技能.也正因为如此,本书提供的是一个全面的解决方案.方法论.成体系的设计思维.因此,本书将从基础技术谈起,再到高层技术.再到业务.管理,提供一个架构能力的全局 ...

  5. 著名网站系统架构设计

    WikiPedia 技术架构学习分享 YouTube 的架构扩展 Internet Archive 的海量存储浅析 LinkedIn 架构笔记 Tailrank 网站架构 Twitter 的架构扩展: ...

  6. 分布式网站架构和设计

    一.面向服务的架构(SOA service oriented architecture) RPC的全称是Remote Process Call,远程过程调用. 无论是何种类型的数据,都要转换成二进制在 ...

  7. 大型网站技术架构设计

    整体架构演进之路: 单机架构 第一次演进:Tomcat 与数据库分开部署 第二次演进:引入本地缓存和分布式缓存 第三次演进:引入反向代理实现负载均衡 第四次演进:数据库读写分离 第五次演进:数据库按业 ...

  8. Java架构直通车——大型网站的特点与设计宗旨

    文章目录 大型网站的9大特点 小结 总结 大型网站的9大特点 Hello,大家好,本节课我们一起来认知一下大型网站的特点. 说到大型网站,很多人可能都会有一个误区,他们会认为:网站访问量大,那就是一个 ...

  9. 网站制作从原型图架构到设计开发的具体步骤

    一个优秀的经典网站从策划到执行完成不是一件简单的工作,对于很多外行用户来说,把网站建设想象的太过简单.今天我给大家分享一下高端网站制作的流程步骤,以供大家参考. 第一步:明确网站的定位.我们要明确自己 ...

最新文章

  1. JS与JQ的对比与提高
  2. Redis - 事务
  3. 非洲的风能和太阳能真是企业家无与伦比的商机?
  4. c/c++ 字符串分割
  5. linux 命令 抛后台,在后台运行Linux命令的方法
  6. Vue.js 极简小例:表单 (输入框 input、文本域 textarea、单选框 radio、下拉菜单 selected、复选框 checkbox)
  7. 玩数据必备Python库:Numpy使用详解
  8. php与mysql实例教程_mysql实例与连接
  9. LeetCode 103——二叉树的锯齿形层次遍历
  10. 我把朋友圈关掉了235天
  11. 用HFFS实例讲解多频天线设计
  12. 电磁场与电磁波MIT版笔记
  13. 苹果ipadmini1 主板 电路图 超清
  14. 技嘉主板设置服务器启动不了系统,技嘉主板开启ahci模式不认硬盘 - 卡饭网
  15. iGoogle自定义
  16. OPENCV提取图片中的文字
  17. 随机池化(Stochastic Pooling)
  18. 1、计算机图形学——基础变换矩阵
  19. Qt 动态实时显示波形图
  20. 【SSLGZ 1614】医院设置(Dijkstra)

热门文章

  1. Java 第十一届 蓝桥杯 省模拟赛 梅花桩
  2. browserify 使用
  3. 深度学习中的常用的损失函数(PyTorch)
  4. 滨州申请专利需要准备哪些材料?
  5. Eclipse和tomcat 增加内存
  6. 315家电选购指南 网购洗衣机注意这几点
  7. USB系列:列出你的USB设备
  8. [学习笔记] 工行可转债发行公告
  9. TensorflowSimilarity学习笔记12
  10. 一文搞懂CPU如何控制I/O设备