Nova PhoneGap Framework诞生于2012年11月,从第一个版本的发布到现在,这个框架经历了多个项目的考验。一直以来我们也持续更新这个框架,使其不断完善。到现在,这个框架已比较稳定了,对于中小型项目可以直接拿来用,对于大型项目,也只需稍加改造就能够完美支持。

目前该框架实现的核心功能如下:

  1. 帮你合理的组织文件结构;
  2. 页面跳转、传值以及事件,如load, navigate, away等;
  3. 合理绑定设备事件,使用起来更容易;
  4. 本地数据库(SQLite)访问;
  5. 滚动条。
  6. 其他插件,如mock, log,carousel,busy indicator

总而言之, Nova PhoneGap Framework能让你的代码可读性更高,同时降低了对程序员能力的要求,即使是初级程序员也能够快速上手,高质量完成开发。

在接下来的内容中,我将详细介绍如何在Nova PhoneGap Framework框架下开发PhoneGap应用。 但是本文并非这个框架的API参考文档,如果你需要详尽的文档,那么你可以去阅读源代码,因为我们还没有提供详尽的文档。

源码下载:http://cordova.codeplex.com/SourceControl/latest#demos/AnnualTargets/www/

本系列文章的内容稍微有点多,请看目录。

第一章 前言

第二章 理解index.html

  • 2.1 引用所有的CSS
  • 2.2 引用所有的Javascript
  • 2.3 初始化本地数据库
  • 2.4 设置应用程序的UI壳

第三章 页面

  • 3.1 页面跳转
  • 3.2 页面传值
  • 3.3 页面事件
    •   3.3.1 onLoaded事件
    •   3.3.2 onNavigatingAway事件

第四章 本地数据库

  • 4.1 nova.data.DbContext
  • 4.2 nova.data.Repository
  • 4.3 nova.data.Entity
  • 4.4 nova.data.Queryable
  • 4.5 常用例子4.6 已知问题
    •   4.5.1 定义数据库
    •   4.5.2 定义实体类
    •   4.5.3 查询
    •   4.5.4 插入
    •   4.5.5 更新
    •   4.5.6 删除

第五章 文件结构

  • 5.1 分层
  • 5.2 文件合并

第六章 使用Mock

第七章 设备事件处理

  • 7.1 Android回退键
  • 7.2 横竖屏切换事件

第八章 滚动条

  • 8.1 概述
  • 8.2 已知问题

第九章 控件

  • 9.1 nova.widgets.busy
  • 9.2 nova.widgets.Toast
  • 9.3 nova.widgets. actionSheet
  • 9.4 nova.widgets.Carousel
  • 9.5 nova.widgets.Logger

第十章 开发环境

  • 10.1 Visual Studio + ReSharper
  • 10.2 Chrome
  • 10.3 grunt
  • 10.4 build.phonegap.com

总结

  • 参考资料

Nova PhoneGap框架 第一章 前言的更多相关文章

  1. Nova PhoneGap框架 第二章 理解index.html

    跟绝大多数PhoneGap程序一样,Index.html是程序的入口.这个页面应该完成应用程序的初始化工作. 首先,让我们来看看这个页面通常都长什么样子: 下面我将一一解释这个页面都做了哪些初始化工作 ...

  2. Nova PhoneGap框架 第九章 控件

    我们的框架中也提供了一些常用的控件,这些控件大多都依赖于我们的框架,也正是在我们的框架下才使得实现这些控件的变得更简单.但是我们的框架是不依赖与这些控件的,如果你用不上这些控件,你完全可以把相关的代码 ...

  3. 《Deep Learning》译文 第一章 前言(中) 神经网络的变迁与称谓的更迭

    转载请注明出处. 第一章 前言(中) 1.1 本书适合哪些人阅读? 能够说本书的受众目标比較广泛,可是本书可能更适合于例如以下的两类人群.一类是学习过与机器学习相关课程的大学生们(本科生或者研究生). ...

  4. Testlink1.9.17使用方法(第一章 前言)

    第一章 前言 QQ交流群:585499566 一.Testlink主要功能: 测试项目管理 测试需求管理 测试用例管理 测试计划的制定 测试用例对测试需求的覆盖管理 测试用例的执行 大量测试数据的度量 ...

  5. Nova PhoneGap框架 总结

    Nova PhoneGap Framework 是完全针对PhoneGap应用程序量身定做的,在这个框架下开发的应用程序很容易实现高质量的代码,很容易让程序拥有很好的性能和用户体验. 在经历了多个项目 ...

  6. Nova PhoneGap框架 第八章 滚动条

    你可能会疑惑为什么滚动条这么常见的功能会在这里单独列出,但如果你有过PhoneGap开发经验的话,你就会发现要在Android 2.3 里面实现滚动条那真不是一件容易的事. 8.1 概述 目前主流的P ...

  7. Nova PhoneGap框架 第四章 本地数据库

    我一直想把EntityFramework(简称EF)的那一套搬过来,应用于HTML5 SQLite. 幸运的是,我几乎做到了,有些功能无法完成的那是因为SQLite本身不支持.至少从现在已经完成的功能 ...

  8. Nova PhoneGap框架 第七章 设备事件处理

    我们的框架包含了几种设备事件的处理,目的是为了让我们的程序员更容易的完成代码.这些事件包括:回退键(Android)和横竖屏切换事件. 7.1 Android回退键 首先来说说回退键的事件处理.当用户 ...

  9. Nova PhoneGap框架 第三章 页面

    页面在项目架构中是一个很重要的概念,它让我们能够将一个功能复杂的项目拆分成一个一个功能比较独立的小区域,这极大的提高了代码的可读性和可维护性. 在我们这个框架中,一个页面由JS和HTML两部分组成,首 ...

随机推荐

  1. java中的锁

    java中有哪些锁 这个问题在我看了一遍<java并发编程>后尽然无法回答,说明自己对于锁的概念了解的不够.于是再次翻看了一下书里的内容,突然有点打开脑门的感觉.看来确实是要学习的最好方式 ...

  2. 高性能IO模型浅析

    高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking  ...

  3. Oracle Database 12c Data Redaction介绍

    什么是Data Redaction Data Redaction是Oracle Database 12c的高级安全选项之中的一个新功能,Oracle中国在介绍这个功能的时候,翻译为“数据编纂”,在EM ...

  4. UWP开发之Mvvmlight实践九:基于MVVM的项目架构分享

    在前几章介绍了不少MVVM以及Mvvmlight实例,那实际企业开发中将以那种架构开发比较好?怎样分层开发才能节省成本? 本文特别分享实际企业项目开发中使用过的项目架构,欢迎参照使用!有不好的地方欢迎 ...

  5. SDWebImage源码解读之SDWebImageCache(上)

    第五篇 前言 本篇主要讲解图片缓存类的知识,虽然只涉及了图片方面的缓存的设计,但思想同样适用于别的方面的设计.在架构上来说,缓存算是存储设计的一部分.我们把各种不同的存储内容按照功能进行切割后,图片缓 ...

  6. PHP获取客户端IP

    /** * 获取客户端IP */ function getClientIp() { $ip = 'unknown'; $unknown = 'unknown'; if (isset($_SERVER[ ...

  7. Java多态性——分派

    一.基本概念 Java是一门面向对象的程序设计语言,因为Java具备面向对象的三个基本特征:封装.继承和多态.这三个特征并不是各自独立的,从一定角度上看,封装和继承几乎都是为多态而准备的.多态性主要体 ...

  8. C# 对象实例化 用json保存 泛型类 可以很方便的保存程序设置

    参考页面: http://www.yuanjiaocheng.net/webapi/test-webapi.html http://www.yuanjiaocheng.net/webapi/web-a ...

  9. java面向对象六原则一法则

    1. 单一职责原则:一类只做它该做的事. 2. 里氏替换原则:子类必须能够替换基类(父类),否则不应当设计为其子类. 3. 依赖倒换原则:设计要依赖于抽象而不是具体化. 4. 接口隔离原则:接口要小而 ...

  10. Java中常用集合操作

    一.Map 名值对存储的. 常用派生类HashMap类 添加: put(key,value)往集合里添加数据 删除: clear()删除所有 remove(key)清除单个,根据k来找 获取: siz ...