随着智能手持设备的爆发式增长,移动站点以及移动手机App也如火如荼。笔者有幸参加了12月的drupal聚会,分享了一下关于drupal的desktop和mobile站点的架构思路,现在把其中一些内容整理一下,在这里分享给大家。
PS: 跟drupal移动/APP的相关模块,在讲座的ppt里有介绍,请各位同学猛击右侧的讲稿截图,点击下载。
基于Drupal的web和mobile站点并行的架构,主要有以下4种情况:
A). Responsive设计 (响应式设计)
B). 独立主题
C). Drupal的多站点以及domain模块配合使用的多站点结构
D). SAAS (后端数据服务+前端展示)
下面,我分别就每一种架构思路做一个简短的描述。
第一种,响应式设计。
优点:方便、快捷,一套代码走天下。
缺点:响应式设计本身的缺点,复杂站点不实用,开发的难度。
第二种,独立主题。
最简单的就是用mobile_switch检查用户的user-agent,然后切换主题。
这里还有一个小问题,就是如果需要移动端返回数据和前端不一样的时候,还要多写一个menu_callback,比如如果存在一个callback_mobile,就调用callback_mobile,默认就是callback函数。
第三种,多站点结构。
Drupal默认支持多站点,共享某些模块,配合domain模块,可以共享一些node内容,也可以方便实现drupal的桌面版+移动版,不过多站点的开发也需要额外的工作,因此也是需要额外的开发工作。
第三种,SAAS。
Drupal+Services 模块,形成一个数据中心,提供JSON的数据给前端。如果是WEB,WEB+JS。如果是mobile,HTML5+CSS3+JS调用后端数据即可。
优点:分离、容易升级前后端。
找了一张图,比较能说明一下移动和桌面站点的技术架构,供大家参考一下。
这里就列举了一下大概的架构方式,如果有其他更好的方案,欢迎大家补充。
网友评论已有0条评论, 我也要评论