February 12, 2017

Android简历

1.基本信息

姓名:余天然

手机:13120930660

Email:yutianran@aliyun.com

QQ:630709658

本科/湖北第二师范学院数学系/2010.9-2014.6

工作年限:3年

技术博客:http://yutianran.farbox.com/

GitHub:https://github.com/fishyer

期望职位:Android开发工程师

2.工作经历

(1).上海车城网 ( 2015年9月 ~ 至今 )

1.车城项目

本人职责:负责Android端V1.2之前版本的实现,后续移交给其它同事

项目描述:二手车交易和资讯平台

知识点相关:基......

November 14, 2016

用Java实现二叉树

1.构建二叉树

首先,创建一个节点类

/**

* 节点类

*/

public class TreeNode<T> {

private int index;

private T data;

private TreeNode<T> leftChild;

private TreeNode<T> rightChild;

public TreeNode(int index, T data) {

this.index = in......

November 10, 2016

红包照片效果

本文是慕课网视频Canvas玩儿转红包照片的学习笔记

1.主要思路:

分为两个图层,底层是一个高斯模糊的图片,上图是一个裁剪成圆的清晰图片

高斯模糊是使用CSS3的filter属性实现

逐渐显示清晰图的动画,是用JS的setInterval实现的。

2.Html

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<t......

November 08, 2016

Web学习大纲

Web前端开发.png

November 08, 2016

Java高级大纲

1.高并发架构

高并发架构.png

2.分布式技术

November 08, 2016

Android高级大纲

Android高级大纲

1.Android高级UI开发

Android高级UI开发.png

2.Android性能优化

November 08, 2016

数据结构大纲

November 08, 2016

算法大纲

November 07, 2016

我的知识管理探索

前言

是否,你浏览过无数文章,但是转眼就忘?

是否,你收藏过无数文章,但是很少再看?

是否,你感觉自己很努力学习了,但还是收获甚微?

其实,这几个问题也一直深深地困扰着我,一直渴望着提升,却又摸不到方向,感觉一直在努力,然而貌似并没什么卵用。

直到,我接触到知识管理这个概念,才领悟到:学习是一个系统工程,每一次的阅读、收藏、实践,其实都是这个系统的自我更新。唯有运用工程思维,才能更好的解决这几个问题!

关于知识管理,我视之为我人生中最重要的技能,我将不断探索、不断优化,以成就一个更完善的自己。

下面,我将从一个程序员的视角来讨论知识管理,主要包括以下几个方面:

什么是知识......

November 04, 2016

TextView行数监听器

其实代码很简单,只是一个简单的封装而已,方便自己以后遇到类似的问题可以快速复用。看一个程序员溜不溜,我觉得主要看两点:一是他踩的坑多不多,二是他积累的轮子多不多。以后,我要努力积累更多的小轮子。

1.业务需求:

TextView单行时右对齐,多行左对齐

2.TextView行数监听器

其实就是简单的对addOnPreDrawListener和removeOnPreDrawListener做了一下封装而已

/**

* 监听TextView的行数变化

* ......

November 03, 2016

JavaScript基础大纲

1、DOM基本操作

2、数据类型

3、运算符

4、流程语句

5、变量

November 01, 2016

Python实现简单爬虫

本文是慕课网视频:Python开发简单爬虫的学习笔记

1.爬虫简介:

主要用于收集数据,可以说是数据分析的第一步。

2.爬虫架构

主要有三大模块:URL管理器、网页下载器、网页解析器

October 31, 2016

Python操作MySql数据库

主要实现了一个银行转账的功能,acct1减款100,acct2账户加款100。

1.数据表

2.实现代码

# coding:utf-8

# yutianran 2016/10/31 下午7:46

import sys

import os

import MySQLdb

reload(sys)

sys.setdefaultencoding("......

October 31, 2016

MarkDown语法学习

1.标题

1.1.第一点

2.引用

这是被引用的文字

3.分割线

4.列表

第一步

第二步

第三步

5.代码

private void initData() {

data = new ArrayList<>();

data.add(new QuestionGroup("注册", getContentList(0)));

data.add(new QuestionGroup("账户", getContentList(1)));

data.add(new QuestionGroup("抢......

October 31, 2016

自定义ORM框架

一、ORM简单科普

所谓ORM,即对象-关系映射(Object/Relation Mapping),方便我们以操作对象的方式去操作关系型数据库。

在平时的开发过程中,大家一定会或多或少地接触到SQLite。然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等。

假如我们有这样一个对象需要存在数据库:

@Table

public class Person {

@Column

private int id;

@Check("name!='Fucker'")

@Column

private String name;

......

October 31, 2016

Json转Map

数据源:

{

"多媒体系统": "单碟CD",

"进气形式": "自然吸气"

}

代码:

package com.che.carcheck.ui.test;

import com.alibaba.fastjson.JSON;

import java.util.Map;

import java.util.Set;

/**

* Json转Map

*

* 作者:余天然 on 16/5/12 下午8:27

*/

public class Test_Json {

public static void main(String[] args) {

St......

October 29, 2016

网络状态工具类

“Talk is cheap. Show me the code.”

能用代码解决的事,就不要说废话。

public class NetUtil {

/*获取网络连接状态*/

public static NetState getNetState() {

NetState stateCode = NetState.NET_NO;

ConnectivityManager cm = (ConnectivityManager) BaseApplication.getInstance().getSystemService(Context.CONNEC......

October 29, 2016

Log日志工具类

使用说明

使用超简单:

private void testLog() {

LogUtil.print("");

LogUtil.print("你好");

LogUtil.print("net", "baidu.com");

LogUtil.print(Log.VERBOSE, "你好啊");

LogUtil.print(Log.DEBUG, "你好啊");

LogUtil.print(Log.INFO, "你好啊");

LogUtil.print(Log.WARN, ......

October 29, 2016

OkHttp自定义重试次数

本文主要应用了OkHttp的Interceptor来实现自定义重试次数,不熟悉Interceptor的朋友可以先看我的另外一篇博文:Okhttp基本用法和流程分析

虽然OkHttp自带retryOnConnectionFailure(true)方法可以实现重试,但是不支持自定义重试次数,所以有时并不能满足我们的需求。

1.自定义重试拦截器:

/**

* 重试拦截器

*/

public class RetryIntercepter implements Interceptor {

public int maxRetry;//最大重试次数

private int re......

October 29, 2016

第三方分享工具类

以前都是直接集成的友盟的,但后来觉得友盟的分享,有时候要自定义那个分享弹窗有一点麻烦,所以就放弃了。这里,因为业务需要,我只集成了微信,不过QQ、微博其实也差不多,大家可以自行添加。

分享弹窗

1.自定义分享弹窗

/**

* 分享弹窗

* <p>

* 作者:余天然 on 16/8......