大家在工作中基本上都有使用到数据库框架

关系型:ORMLite,GreenDao

对象型:DB4O,Perst

这些数据库用起来都非常的简单,对于我们Android上来说这些数据库足够我们使用了,但是大家是否知道如果要自己来写,你能写的出来么?平时我们只是需要配置一下就搞定了,原理是否真的清楚?对于初学者来说,知道这些框架怎么用就好,但是对于中级开发者或者高级开发者,知道如何用是远远不够的,作为team核心人员的你们必须对你们用的东西了如指掌,不然出了bug就非常的麻烦了。

看懂别人的代码是基本,看完了模仿着写一个是中级,自己按照需求来写一个框架就是高级开发者必备的技能了。

大家不要迷信技术,也不要相信一个框架能帮你解决所有变态的需求,与其在github上下一堆不能符合你需求的代码,不如自己来写,对吧?我见好多人下了别人的代码不满足他的需求就吐槽别人写的怎么怎么不好。程序员何苦为难程序员,分享出来已经很不错了,你还说别人写的怎么怎么不好。不然放下那段源码,你来!

这期课程讲自己写个数据库框架,大家自己来体会下框架是如何搭建出来的,我们应该怎么来分析,哪些地方需要注意的,哪些地方可以提高性能的,只有你自己置身于这个环境,你才能体会到架构的乐趣。逻辑思维是如何培养出来的?如何去改别人的框架?当你能力上来了,还怕这些做不到么。

在学这期课程之前,请大家先想想,如果你要来写个数据库框架,你会怎么来写?

考虑数据结构对不对?表关联关系都有吧?对象的序列化(插表)与反序列化(读表)得有吧?DAO层要不要有?

本期课程不是为了叫大家写好数据库框架然后用自己的,而是引导大家来思考如何写框架。就像上期的HTTP框架,只是为了透过架构的方式来提高大家的能力,知其然知其所以然。这样你才能在往后的工作中如鱼得水。

大家要深知授人以鱼不如授人以渔的道理,别张开闭口就来要源码,都教你怎么来写了,你还需要代码,就是彻彻底底的拿来主义,注定当一辈子码农。

数据库框架 传送门:http://www.stay4it.com/course/5

第1节反射与注解

第2节如何建表  通过反射和注解来建表

第3节如何将entity插入到数据库中  利用反射与注解将entity插入到db

第4节查数据库并自动生成对象  利用反射和注解将数据库中查出来的数据转成我们需要的对象

第5节序列化,一对一,一对多 Serializable TONE TMANY

第6节完整的增删改查以及关联关系实现

HTTP框架 传送门:http://www.stay4it.com/course/4

第1章:HTTP框架介绍

第2章:基础框架搭建

第1节 HTTPClient

第2节 动态处理服务器数据

第3节 基本框架搭建并测试

第3章:框架扩展

第1节 反序列化json数据成指定对象

第2节 支持下载进度更新

第3节 随时取消Request请求

第4节 预处理返回的对象(数据库操作或filter操作)

自己动手写Android框架-数据库框架的更多相关文章

  1. 自己动手写Android插件化框架

    自己动手写Android插件化框架 转 http://www.imooc.com/article/details/id/252238   最近在工作中接触到了Android插件内的开发,发现自己这种技 ...

  2. 自己动手写Android插件化框架,让老板对你刮目相看

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由达文西发表于云+社区专栏 最近在工作中接触到了Android插件内的开发,发现自己这种技术还缺乏最基本的了解,以至于在一些基本问题上浪 ...

  3. 玩转Android之数据库框架greenDAO3.0使用指南

    用过ActiveAndroid.玩过ORMLite,穿过千山万水,最终还是发现greenDAO好用,ActiveAndroid我之前有一篇文章介绍过 玩转Android之数据库框架ActiveAndr ...

  4. 自己动手写Android数据库框架

    前言 相信不少开发人员跟我一样,每次都非常烦恼自己写数据库,并且那些数据库语句也经常记不住.当然网上也有非常多非常好的数据库框架,你能够直接拿来用,可是 非常多时候我们的项目.特别是一个小型的Andr ...

  5. 玩转Android之数据库框架ActiveAndroid的使用

    ActiveAndroid是一个开源的数据库框架,使我们在Android中使用数据库变得更为简单,今天我们就来看看这个数据库框架的使用. 1.引入ActiveAndroid 首先创建我们自己的项目,在 ...

  6. PHP学习笔记,自己动手写个MVC的框架

    最新在大家自己的博客的过程中,发现各种开源的博客系统都或多或少的用起来别扭.于是想动手自己写个博客系统.既然写,就想好好写.那就先写个MVC框架.一点一点来.写的过程中有很多想法.还希望大家能够多多指 ...

  7. PHP学习笔记,自己动手写个MVC的框架 -- base所有代码

    <?php /** 名称:基础类 作用:引用参数处理类,加载基础配置, 作者:swordphp@126.com 创建日期:2013-07-31 **/ require_once(ROOT_PAT ...

  8. 自己动手写android图片异步载入库

    尊重他人劳动成果,转载请说明出处:http://blog.csdn.net/bingospunky/article/details/44344085 接触android有半年了.关于图片异步载入.一直 ...

  9. Android 数据库框架OrmLite的使用(一)

    在这里记录下最基本的用法,官网上可了解相关的介绍. 1.下载OrmLite jar 在下载android的:ormlite-android-4.48.jar和ormlite-core-4.48.jar ...

随机推荐

  1. 【MySQL】MySQL存储过程介绍

    目录结构: contents structure [-] 存储过程简介 关于MySQL的存储过程 MySQL存储过程的创建 格式 声明分割符 参数 变量 注释 MySQL存储过程的调用 MySQL存储 ...

  2. Smarty标签 for运算

    $select="SELECT {$col_name} FROM woke_order where deleted=0 ".$where.$orderby ; // 取出数组 $r ...

  3. appium简明教程(11)——使用resource id定位(仅支持安卓4.3以上系统)

    上一节乙醇带大家了解了appium的定位策略.实际上appium的控件定位方式是完全遵守webdriver的mobile扩展协议的. 这一节将分享一下如何使用resource id来定位android ...

  4. 传智播客c/c++公开课学习笔记--邮箱账户的破解与邮箱安全防控

    一.SMTP协议 SMTP(SimpleMail Transfer Protocol)即简单邮件传输协议. SMTP协议属于TCP/IP协议簇,通过SMTP协议所指定的server,就能够把E-mai ...

  5. 去掉WinLicense文件效验的方法

    去掉WinLicense文件效验的方法 --------------Breakpoints-------------- 地址 模块 活动 反汇编 注释------------------------- ...

  6. javaScript的变量

    1.声明 用 var 或 let 声明的未赋初值的变量,值会被设定为undefined(译注:即未定义值,本身也是一个值) 试图访问一个未初始化的变量会导致一个 ReferenceError 异常被抛 ...

  7. User-Agent 信息汇总(拿去就能用)

    # encoding=utf- agents = [ "Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) ...

  8. mysql存储过程批量向表插入数据

    业务需要,往某个表中批量插入数据,使用存储过程插入 首先,要建立一张mysql表,表明为phone_number, 三个字段,id 自增,number 就是要插入的表格,is_used 表示十分已经使 ...

  9. Android开发中Context类的作用以及Context的详细用法

    Android中Context的作用以及Context的详细用法 本文我们一起来探讨一下关于Android中Context的作用以及Context的详细用法,这对我们学习Android的资源访问有很大 ...

  10. jquery判断选择元素是否存在

    有时候我们需要对jquery选择器选中的元素进行判断是否存在,如果存在才进行某些操作,不存在就不进行,那么如何判断元素是否存在,代码如下: //判断是否存在特定ID值的元素 ){ alert(&quo ...