自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (8)
  • 收藏
  • 关注

转载 java从小白到架构师大牛必看书籍

一、基础类1、《Thinking in Java》,入门第一位是建立正确的概念。2、《Core Java》,我没系统读过,这本书更贴近实践,更多API的介绍,同样,更新也更频繁。 二、进阶类1、《Effective Java》,在熟悉语法、API之后,你需要知道最佳实践和陷阱,没有比这本更好的。2、《Java Puzzlers》,通过谜题介绍一些你可

2017-01-03 20:00:19 21935 1

原创 客户端开发需要知道的工具

1.项目管理 : 禅道  禅道 :开源项目管理,可以方便项目里不同操作项目.产品经理录制需求,开发可以分解任务,完成任务。 测试可以测试项目,提交bug等。还可以看到项目的进度,燃烧图等。 2.代码版本管理 : git、svn  项目组成员多的话,项目的代码修改频繁,所以要有代码远程版本管理,把代码存放到服务器上,大家同步服务器的代码,修改后在提交,保证代码的唯一性。主流的版本控制

2016-12-09 09:57:58 1818

原创 java 五种创建对象的方法

一: 背景   作为java开发,创建对象是最基本最常用的方法。我整理一下五中常用的创建对象的常用方法,如有不全,欢迎大家补全。  二: 五中常见的创建对象的方法  2.1)使用new关键字  2.2)使用clone方法注意使用这个方法的话要给实体类加上Cloneable接口 2.3)使用序列化和反序列化 注意使用这个方法的话要给实体类加上Serializable接

2016-11-29 09:41:07 646

原创 windows系统使用NDK编译jni工程

一:需求说明:NKD7以上的版本支持编译so动态库了。例如我们用ndk编译ndk下的示例工程hello-jni。a)Ndk的目录 D:\soft\code\NDK_10\android-ndk-r10db)hello-jni的目录  D:\soft\code\NDK_10\android-ndk-r10d\samples\hello-jni   注意:Ndk的目录根据自己的

2016-11-03 15:01:01 816

原创 Linux里vi介绍

一: VI介绍1.1  简单介绍Vi是linux系统里的文本编译器。Vi主要有两种状态,命令模式和编辑模式。   命令模式:通过vi命令打开文件后默认就会命令模式。改米模式下可以控制光标的移动,替换字符串等。   编辑模式:针对文件的增删改查的操作。   末行模式:执行待定命令。例如保存,退出。 当前是那种模式,看下vi编辑器界面下方有没有insert,有就是编辑模式,

2016-10-18 21:12:52 1861

转载 Android系统回收Activity的优先级

下面是进程的重要程度,按从高到低排序,当系统需要回收资源的时候,排在下面的优先被杀掉。 1.前台进程    a.该进程有用户正在交互的activity,即调用过onResume()的Activity    b.该进程有绑定到正在交互的Activity的service。(service可以绑定到activity,待研究,可能类似于google play服务的支付界面)    c.

2016-10-10 14:33:13 1641

转载 设计模式详细介绍及代码举例

一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两

2016-10-08 22:12:29 1568

转载 UML里九中图形及举例

UML里九中图形及举例一、UML中包括九种图1)用例图(Use CaseDiagram)         它是UML中最简单也是最复杂的一种图。说它简单是因为它采用了面向对象的思想,又是基于用户视角的,绘制非常容易,简单的图形表示让人一看就懂。说它复杂是因为用例图往往不容易控制,要么过于复杂,要么过于简单。          用例图表示了角色和用例以及它们之间的关系。 2)类图

2016-10-08 21:04:22 714 1

转载 UML常见类关系

一:七种关系的介绍继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性; 实现指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关系;在Java中此类关系

2016-10-08 20:35:19 410

原创 java 集合框架简介

java的集合框架包括存放对象的Collection及存放键值对的Map两大模块,下面就一一介绍下java集合的整齐框架。     一:List集合分支       1.1 Collection分支的分支图:            1.2  上图主要类或者几口的介绍a) Iterable:  主要提供一个返回一个Iterator对象方法b)Collection: 集合的

2016-10-06 16:00:23 572

原创 面向对象设计原则

一:面向对象设计的目标      软件是一项复杂多变的工程,需求可能会变、试用场景会变,如何设计出一个好的框架是非常重要和必要的。通常试用可扩展性、灵活性、可插入性等三个维度评估设计的好坏。   a)可扩展性:新的功能模块很容易插入到系统中,而较小的改变或者影响旧系统。   b)灵活性:可以运行代码平稳修改,而不涉及到其它模块。   c)可插入性:很容易将一个类或者模块抽离出去,同

2016-10-06 11:04:20 368

原创 StringBuild及StringBuffer

1.介绍   1.1 String是一个固定的字符对象一旦初始化完就不可改变。而StringBuild和StringBuffer是java里处理可变的字符串。StringBuild不是现场安全的,StringBuffer是现场安全的。  1.2 主要方法,主要有四类,尾部追加append(),插入insert(),删除delete0及分割字串substring()等、1.3实现原理

2016-10-04 15:30:15 629

原创 String介绍

String字符串1.介绍  1.1String就是一个字符串序列的对象,它是一个final类,没有子类。底层采用char[]数组来存储内容。使用count表示长度。它是一个固定的对象值,一旦初始化后,大小和长度就不能改变了。  1.2主要方法有一下几种类型:构造方法、比较方法、获取对应位置上的值、追加内容的方法、拆分方法、替换方法、替换方法  a)构造方法a1) 空字符串

2016-10-03 19:39:04 859

原创 java位元算

1.位介绍       1.1)位运算优势:      程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。所以运行效率更高更快。        1.2)常见的位运算运算符号含义                   运行原理&按位与两个与位数

2016-10-03 14:01:04 618

原创 View.MeasureSpec

一:MeasureSpec介绍       MeasureSpec 是Android对外提供的获取控件测绘的工具类,它用于View的,onMeasure()测绘的时候,它对外提供三个主要方法:         //获取控件的模式        int getMode(int measureSpec) ;       //获取控件的大小        int getSize(in

2016-09-20 15:46:19 310

转载 Android进程保活方法

Android进程保活招式大全目前市面上的应用,貌似除了微信和手Q都会比较担心被用户或者系统(厂商)杀死问题。本文对 Android进程拉活进行一个总结。Android 进程拉活包括两个层面:A.提供进程优先级,降低进程被杀死的概率B.在进程被杀死后,进行拉活本文下面就从这两个方面做一下总结。1. 进程的优先级Android系统将尽量长时间地保持应用进程,但

2016-09-16 14:56:33 689

转载 Android的性能实践

Android最佳性能实践(一)——合理管理内存有不少朋友都问过我,怎样才能写出高性能的应用程序,如何避免程序出现OOM,或者当程序内存占用过高的时候该怎么样去排查。确实,一个优秀的应用程序,不仅仅要功能完成得好,性能问题也应该处理得恰到好处。为此,我也是阅读了不少Android官方给出的高性能编程建议,那么从本篇文章开始,我就准备开始写一个全新系列的博文,来把这些建议进行整理和分析,帮助大家

2016-09-16 09:03:28 440

转载 Android常用的开源框架

Android开源框架库分类,挑选出最常用,最实用的开源项目,本篇主要介绍的是优秀开源框架库和项目,UI个性化控件会独立介绍。UI个性化控件IndexDependency InjectionsAndroidAnnotationsButter KnifeDaggerNetworkingAndroid Lite HttpAsynchronous Http C

2016-09-16 08:44:16 662

转载 Android 开发中的日常积累

Android 开发中的日常积累HTTP2.0测试是否支持http2.0,需翻墙httpvshttpschrome 插件HTTP/2 and SPDY indicatorHTTP/2 资料汇总HTTP 2.0的那些事http2-spec从启用 HTTP/2 导致网站无法访问说起Android 性能优化Android性能优化视频,文档以及工具胡凯-性能优化Andr

2016-09-16 08:38:58 2367

转载 大众点评支付渠道网关系统的实践之路

业务的快速增长,要求系统在快速迭代的同时,保持很好的扩展性和可用性。其中,交易系统除了满足上述要求之外,还必须保持数据的强一致性。对系统开发人员而言,这既是机遇,也是挑战。本文主要梳理大众点评支付渠道网关系统在面对这些成长烦恼时的演进之路,以及过程中的一些思考和实践。在整个系统的演进过程中,核心思路是:大系统做小,做简单(具体描述可参考《高可用性系统在大众点评的实践与经验》)。在渠道网关系

2016-09-16 08:32:24 519

转载 Java 8系列之重新认识HashMap

摘要HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。简介Java为数据结构中的映射定义了一个接口j

2016-09-16 08:27:50 353

转载 消息队列设计精要

消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发的Notify、MetaQ、RocketMQ等。本文不会一一介绍这些消息队列的所有特性,而是探讨一下自主开发设计一个消息队列时,你

2016-09-16 08:24:54 377

转载 手机淘宝Android客户端架构

手机淘宝Android客户端有几百人开发,十几个团队。如果整个Android客户端是一个工程,那十几个团队每个人上午上班第一件事情估计就是合代码,运气不好,一天都在合代码,而且只要有一个人提交的代码编译不过,所有人都会被堵塞在那里,所以单个工程是不可能的事情。    只要是包含了很多业务的客户端,都会面临这个问题,各个业务代码量越来越多,新需求又源源不断的来,业务团队之间要是有直接依赖,那

2016-09-16 08:14:47 4201

转载 美团Android DEX自动拆包及动态加载简介

美团Android DEX自动拆包及动态加载简介概述作为一个android开发者,在开发应用时,随着业务规模发展到一定程度,不断地加入新功能、添加新的类库,代码在急剧的膨胀,相应的apk包的大小也急剧增加, 那么终有一天,你会不幸遇到这个错误:生成的apk在android 2.3或之前的机器上无法安装,提示INSTALL_FAILED_DEXOPT方法数量过

2016-09-16 08:13:23 358

原创 Java多线程交替执行任务

一:问题描述         生活中很多事情都是有顺序的交互进行着,比如100个人去做地铁,安检的只负责安;只有安检通过了,才能排队刷卡进站;进站了,在对应线路站下排队才能进站。这就是一个典型的多任务有顺序的进行。对于每一个人来说都有顺序要经过这几步。        我们可以通过程序简单的抽象成,使用三个线程,每个线程分别只打印A、B、C. 依次打印出十组ABC.二:实现思路:

2016-09-13 14:22:14 3680

转载 阿里无线技术架构演进

阿里无线技术架构演进手机淘宝作为阿里集团移动端的“航空母舰”,近两年发展非常迅猛,用户量增长接近10倍。在2015双十一这天,我们的无线端成交占比高达68% 。在高峰期,更有超过4500万人同时在线,每秒14万笔下单;今天我们拥有超过3亿的月活跃用户,是全球最大的消费类移动APP。而这些,都对我们的系统能力提出巨大挑战。下面给大家分享一个典型用户在手淘的一天。移动架构的反思

2016-09-13 11:45:31 1541

转载 Android官方MVP架构示例项目解析

前段时间Google在Github推出了一个项目,专门展示Android引用各种各样的MVP架构,算是官方教程了。趁着还新鲜,让我们来抛砖引玉一探究竟,看看在Google眼里什么样算是好的MVP架构。App架构在Android开发者中一直是讨论比较多的一个话题,目前讨论较多的有MVP、MVVM、Clean这三种。google官方对于架构的态度一直是非常开放的,让开发者自主选择组织和架构app的

2016-09-13 11:05:55 322

转载 携程App网络服务通道治理和性能优化

App网络服务的高可靠和低延迟对于无线业务稳定发展至关重要,过去两年来我们一直在持续优化App网络服务的性能,到今年Q2结束时基本完成了App网络服务通道治理和性能优化的阶段性目标,特此撰文总结其中的经验教训,为以后的工作打下基础。携程App无线网络服务架构2014年携程为无线服务开发了MobileGateway,有两种类型:TCP Gateway和HTTP Gateway

2016-09-12 21:28:48 1696

原创 线程使用举例

一:创建线程     使用两种不同的方法创建线程,每个线程打印从0到4的日志信息。为了更好的看到打印信息的顺序,在每个打印里会休眠不同的时间。    1.1 PrintThread 继承于Thread类实现打印线程      public class PrintThread extends Thread{@Overridepublic void run() {for (

2016-09-12 15:13:04 635

转载 Java线程的几种状态

1.       程序通过Thread t = new Thread(),调用t.start()启动一个线程,使该线程进入可运行(Runnable)的状态。2.       由JVM的决定去调度(Scheduler) 在可运行状态(Runnable)下的线程,使该线程处于运行 (Running) 状态,由于JVM的调度会出现不可控性,即不是优先级高的先被调用,可能先调用,也可能后调用的的情况。

2016-09-12 13:47:00 3097

原创 android View介绍

1.     View的介绍Android里View就是一个矩形窗体的抽象, ViewGruop就是view容器抽象。简单看下view坐标表示说明: a)   view获取自身坐标:getLeft(),getTop(),getRight(),getBottom()获取到的值都是相对父容器的坐标。b)   view获取宽高getHeight(),getWidth()2

2016-09-08 16:55:13 269

原创 final关键字解析

1.      修饰变量final修饰的变量称为常量。常量只能初始化一次,不能修改。主要用于定义常量。例如类里边声明一些类不同的类状态。注意:a)      空缺的final变量指的是声明了final变量但是没有初始化过b)      空缺的fianl变量只能初始化一次,最好在构造函数里初始化。2.      修饰方法final修饰的方法称为常量方法,常量方法不能被继承和重

2016-09-08 15:15:05 344

原创 static介绍

1.      修饰字段stati修饰的变量称为静态变量。该变量相当于全局变量,系统内的各个类都可以访问该变量。静态变量的内存只分配一次,就是当JVM把类被加载到内存的时候,系统在静态区为它分配内存空间。简单的讲就是静态变量相当于只有一份,其它对象公用这一份数据。 注意:a)      静态变量可以直接通过类访问,不用创建对象。b)      静态变量只在初始化的时候执行一次。

2016-09-08 14:23:46 592

原创 OkHttp

一: 介绍       Android网络请求框架较多,原生的有HttpClient、HttpUrlConnection;第三方的有okhttp、Volley等。原生的请求较为原始,使用起来比较繁琐。第三方的okhttp是著名公司Square的开源框架,使用方便,有详细的介绍文档。详细信息可以参考square官网http://square.github.io/okhttp/。二:注意事项

2016-09-08 10:34:28 558

转载 ShareSDK第三方账号授权

申请开放平台账号和App key1. 到对应的开放平台上注册账号QQ: open.qq.comWeibo: open.weibo.com2. 注册好账号后选择添加移动应用,填好信息,提交审核,审核通过后会获得App key和密钥。注:Android签名,下载签名工具 app_signatures.apk(如下图),安装到手机上,输入包名,即可生成Android签名,每个

2016-09-05 10:13:02 1485

原创 字母条

一:代码链接二:需求描述  看很多应用里都有字母条的效果,例如在联系人里就有字母条,方便用户快通过名字的首字母快速定位想找的联系人。 实现要求就是在手机里完整显A~Z的字母,当用户点击特定字母的时候,给出回调,同时把选中的字母颜色置红。三:实现思路1. 想要画出完整的字母,需要继承view,重写ondraw方法. canvas.drawText(String text , fl

2016-09-01 13:51:30 465

原创 bus应用的实现

一:源码工程   二:需求  实现公交app查看站点的效果,车过了的站点是蓝色的,车到的当前站点是红色,车未到的站点是灰色的。有一个按钮,点击可以模拟站点的刷新。             三:思路         1. 可以加载多个站点,并且超过一屏幕可以滑动,得集成横向滑动组件HorizontalScrollView,命名TitleBusBarScoller,它里边有个当前站

2016-09-01 11:44:04 1099

原创 引导页[文字动态出来]

一:效果及介绍                                        1.每个引导页里有一张背景图片,有个文字序列,并且文字是逐行显示出来的.  2. 底部的指示器是可以动态变化的,根据图片的多少决定总数,选中那个就会变亮。          3.适配器可以自动滑动。     二:实现思路   a)实现引导页,肯定要使用v4包里的ViewPager组

2016-09-01 10:46:05 1345

原创 Android JNI实现计算器demo

          通过JNI实现四则运算详细步骤1.创建android工程MathJni 2.声明jni类型的java类MathUtilpackage com.mathjni;/** *@authorluyg *@desc实现四则运算的JNI方法 */publicclassMath

2015-10-26 19:39:04 927

原创 sql查询语句

一: 完整的sql查询语句      select 查询列      form 表名      where 条件      group by 分组条件      limit 限制数据行数      desc/asc ;二: 查询的类型    2.1)单表查询          select * from tablename ;   2.2) 聚合函数查询:

2015-10-26 19:36:45 335

LetterList.rar

手机里完整显A~Z的字母,当用户点击特定字母的时候,给出回调,同时把选中的字母颜色置红。

2016-09-01

BusScoll.rar

实现公交站app的demo,所有站点都可以看到,超过一页的可以滑动。清晰的区分出来车到那一站

2016-09-01

Android引导页

主要实现了Android里的引导页,方便动态的新增页数和删除页面,把指示器和背景图片分开。每页里文字可以动态显示。

2016-09-01

23中设计模式讲解与实现

用详细的讲解阐述23中不同的设计模式,并用c++代码实现。

2010-12-23

Linux培训ppt

系统的讲解了Linux的知识点,由易到难,让你逐步学会Linux。

2010-12-23

Linux常用命令讲解

主要讲解了Linux里边的常用命令及具体的用法。

2010-12-23

Linux下的式编程

主要讲解了如何在Linux系统下进行的编程。

2010-12-23

Linux下的嵌入式编程

主要讲解了如何在Linux系统下进行的嵌入式编程。

2010-12-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除