- 博客(19)
- 资源 (2)
- 收藏
- 关注
原创 让洪水猛兽变成温顺小羊——浅谈Android线程池机制
写作原因:Java或者Android开发者都知道,Java/Android中对于并发的控制是一个难点。如果控制不好线程问题,程序的稳定性难以得到保障。下面博主分享一下Android中线程池机制的基本内容。定义这是Wikipedia对线程池的定义,看看即可:在计算机编程中,线程池包含一定数量的线程,这些线程用于并发地处理任务。通常情况下;反之,线程的数量根据可用的计算资源进行调整从而达到合理地并行处理
2016-09-05 19:51:05
541
原创 计算机网络入门概念理解
下面我来讲解一些关于网络的基础知识,这些知识有利于帮助我们今后学习TCP/IP协议相关知识打好基础。诞生背景首先从网络的诞生背景讲起。一开始计算机的运作是独立存在的(独立模式),每个计算机有各自的业务,用户需要在不同的计算机上执行特定的业务逻辑。用户采用卡带的方式将程序和数据输入计算机让计算机进行运算。之后出现了分时系统,分时系统具有“多终端,一主机 ”的特点,由于分时系统CPU时间片轮转的特性让用
2016-09-05 19:50:26
668
原创 小话java多线程机制
写作原因:对于并发编程一块,是编程中的一道坎,对于它的理解有一定难度。所以本文作者只能略作皮毛分享,对于深层学习仍在途中。希望读者能够多多交流线程初识先了解一下线程、进程、并发、并行的概念。进程顾名思义,就是进行中的程序,线程是进程中可以独立并发执行的基本单元。进程中包括内存和线程两块,内存是存储资源,线程是进程内部各个功能的分载体,进程内所有线程都享有进程的共享内存,此外线程有各自的独立工作内存。
2016-07-25 20:17:16
435
原创 Android IPC机制(三)——利用AIDL实现跨进程通信
**写作原因:跨进程通信的实现和理解是Android进阶中重要的一环。下面博主分享IPC一些相关知识、操作及自己在学习IPC过程中的一些理解。这一章是对AIDL的基本使用的介绍,由于博主也是AIDL初学者,所以一些地方阐述可能不准确,如有发现希望指正。关于使用Messenger通信参阅:Android IPC机制(二)——利用Messenger实现跨进程通信 **https://developer
2016-07-22 11:34:28
571
原创 Android自定义View系列(二)——打造一个仿2K游戏摇杆
写作原因:Android进阶过程中有一个绕不开的话题——自定义View。这一块是安卓程序员更好地实现功能自主化必须迈出的一步。下面这个系列博主将通过实现几个例子来认识安卓自定义View的方法。从自定义View到自定义ViewGroup,View事件处理再到View深入分析(这一章如果水平未到位可能今后再补充),其中会涉及一些小的知识,包括Canvas的使用、动画等等。这是本系列的第二章,博主将通过定
2016-07-22 00:22:35
3521
3
原创 Android自定义View系列(一)——打造一个爱心进度条
写作原因:Android进阶过程中有一个绕不开的话题——自定义View。这一块是安卓程序员更好地实现功能自主化必须迈出的一步。下面这个系列博主将通过实现几个例子来认识安卓自定义View的方法。从自定义View到自定义ViewGroup,View事件处理再到View深入分析(这一章如果水平未到位可能今后再补充),其中会涉及一些小的知识,包括Canvas的使用、动画等等。系列第一篇文章通过绘制一个心形进
2016-07-22 00:22:14
1635
原创 Android IPC机制(二)——利用Messenger实现跨进程通信
写作原因:跨进程通信的实现和理解是Android进阶中重要的一环。下面博主分享IPC一些相关知识、操作及自己在学习IPC过程中的一些理解。这一章使用Messenger实现跨进程通信,其中bindService基础部分参见Android IPC机制(一)——绑定Service实现本地通信。跨进程简介在介绍使用Messenger跨进程通信之前先要了解以下问题:为什么需要跨进程通信?只有有了需求才有学习的
2016-07-14 14:38:12
2215
原创 Android IPC机制(一)——绑定Service实现本地通信
**写作原因:跨进程通信的实现和理解是Android进阶中重要的一环。下面博主分享IPC一些相关知识、操作及自己在学习IPC过程中的一些理解。 这一章是为下面的Messenger和AIDL的使用做准备,主要讲解Android Service的绑定和Activity与本地Service之间通信相关知识。**简介我们都知道启动Service有两种方式:startService()和bindServic
2016-07-14 14:37:42
2002
原创 Square全家桶正传——Retrofit使用及配合RxJava实现最大效率开发
写作原因:Retrofit被许多安卓程序员称为当下最优秀的网络请求框架,是Square重要的成员之一。相比传统的网络请求框架,Retrofit更加优秀。所以学习使用Retrofit有重要的意义。此外结合上RxJava使用可以使请求代码逻辑更加清晰。下面一起走进Retrofit的世界。http://square.github.io/retrofit/https://github.com/square/
2016-06-21 23:37:18
618
原创 为AS化化妆——AS主题下载网站及样式基本配置
写作原因:作为一名安卓程序员,毫无疑问每天接触最多的就是AS了(Eclipse现在应该没人用了吧……如果用Eclipse的建议换AS了)。Android程序员与AS相处的时间甚至超过了与女票相处的时间(身为单身猿的博主默默流下了一行眼泪)。那么装扮一下每天一起开心一起流泪,与我们肝胆相照的AS是很有必要的。不说了,好心酸……下面推荐一下今天的两大主角吧。字体推荐来源:http://www.zhihu
2016-06-18 23:08:59
2991
原创 动手撸一个金馆长表情库——爬虫及异步请求
前言:对于一些社交达人,微信或者QQ斗图几乎家常便饭。然而许多人手机里却只有那么几个表情,这样怎么在表情大战中取胜呢?不过不要忘了,我们是程序猿,没有弹药库自己造呗!于是就有了这篇文章。项目github地址:https://github.com/VinceBarry/BiaoQingLib功能展示先看看最终效果(重点在功能,界面我就不作美化了,有兴趣的自己做一些美化)这个app一共包含700+张金馆
2016-06-16 17:31:18
1053
原创 利用Android回调机制对Dialog进行简单封装
写作原因:Android回调机制是Android开发者绕不开的一个点,对于它的掌握学习十分重要。本文由于作者水平有限可能存在纰漏,对于回调机制的学习掌握仍在途中,以后会推出更多的相关文章。简介接口回调是Android中一种常用的机制,如Button点击事件就是接口回调的具体实现。Fragment与Activity之间的通信机制也是基于接口回调实现,感兴趣的可以阅读博主上篇关于Fragment通信的文
2016-06-16 17:30:31
1058
原创 Square全家桶正传——偷懒神器ButterKnife及其附属插件的使用
写作原因:程序员喜欢偷懒,对于安卓程序员来说,把时间花在不用动脑筋的findViewById()上简直让人难以忍受。此外大量的点击监听事件的分散化使得代码可读性下降。于是,基于注解的ButterKnife应运而生。参考链接:ButterKnife官网:http://jakewharton.github.io/butterknife/ButterKnife GitHub地址:https://githu
2016-06-16 17:29:32
729
原创 Square全家桶前传——RxJava函数式编程入门(一)
前言:作为Android开发者,构建项目应该更多地把精力放在业务逻辑上,于是一个完整的框架显得十分有价值。而且在搭建框架的过程中可以对软件开发有更深入的理解。于是博主打算开始构建一个完整的属于自己的框架,Square全家桶便是搭建框架的第一选择。接下来我将学习Square的几大著名的框架:RxJava(响应式编程),ButterKnife(依赖注入),Retrofit,Okhttp(网络请求),Pi
2016-06-16 17:28:12
2264
转载 深入理解Java
下面是我学习java和Android的过程中收集的一些好文章(每日两更):1.深入理解java接口和抽象类,点击打开链接:(对于java抽象类和接口区别不清晰的可以看看,文章先说明了接口和抽象类的定义与使用,然后从语法层面,设计层面对两者的差别进行了比较);
2016-04-11 16:58:35
454
原创 查找与排序之冒泡排序篇(C语言实现)
上节学习了二分法查找,然而二分法查找却基于排序的前提下产生,于是学习排序算法十分必要。事实上,排序算法是算法中基础的一项,下面从冒泡排序开始学习。关于冒泡排序的实现原理不多加阐述,其实现基于相邻两数交换沉底的方法,具体自行查询百度。冒泡排序动画展示(引用至student.zjzk.cn):冒泡排序动画展示下面实现冒泡排序:#include #include #include in
2016-03-22 21:17:05
925
翻译 Android Material Design 官网翻译学习笔记(开篇)
Material Design官方学习地址:http://developer.android.com/training/material/index.html原文:Material design is a comprehensive guide for visual, motion, and interaction design across platforms and devices.
2016-03-22 14:27:11
1252
原创 查找与排序之二分法查找篇(C语言实现)
相比线性查找,二分法查找则显得十分高效,其查找次数与总元素数量存在对数关系,即只要较少的查找次数就可以完成快速地搜索。下面实现二分法查找:原理:在进行二分法查找前需要先对数据进行排序(具体排序实现详见下一篇文章),定义left(数据集的开头),right(数据集结尾)两个变量,然后在这组数据中找到mid=(left+right)/2,然后将待查找元素与mid所指元素进行比较,如果相等将索引返回
2016-03-21 20:59:04
50673
原创 排序与查找之线性查找篇(C语言实现)
线性查找是从某个类型的列表的表头开始依次比较目标元素与每一个值,直至找到该目标元素。其结果只有两个:要么找到目标(返回索引),要么到达列表尾并得出改组中不存在该目标的结论,下面开始实现。#include int search(int aim,int a[],int size);//声明方法int main(){//测试search int a[]={1,5,3,7,6,9,10}; pr
2016-03-21 19:59:26
1838
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人