- 博客(667)
- 资源 (111)
- 收藏
- 关注
原创 Objective-C基础笔记(3)OC的内存管理
Objective-C的内存基本管理在OC中每个变量都保存着引用计数器,当这个对象的引用计数器为0的时候该对象会被回收。当使用alloc、new或者copy创建一个对象的时候,对象的引用计数器被置为1.给对象发送一条retain消息,可以使引用计数器+1.给对象发送一条release消息,可以使引用计数器-1.当OC被销毁的时候会发送一条dealloc消息(不要直接调用,由系统调用),可以重写de
2014-11-14 00:45:00 2718
转载 程序员技术练级攻略
月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下。于是他给我发来了一些他的心得和经历,我
2014-11-13 14:01:27 2601 2
原创 Objective-C基础笔记(2)@property和@synthesize
先贴出使用@property和@synthesize实现的上一篇中的代码,再解释这两个关键字的用法和含义,代码如下:Person.h文件#import @interface Person : NSObject { int _age; //可以被子类访问 //这里系统会帮我们生成一个默认的 int _no 私有变量(不能被子类访问)}@property int age;
2014-11-12 22:17:49 2460
原创 Objective-C基础笔记(1)基本概念和第一个程序
一、基本概念Objective-C(简称OC)是iOS开发的核心语言,苹果公司在维护,在开发过程中也会配合着使用C语言、C++,OC主要负责UI界面,C语言、C++可用于图形处理。C语言是面向过程的语言,OC是在C语言基础上加上了一层面向对象的语法(将复杂面向对象语法去掉了)。我们可以使用OC开发Mac OS X平台和IOS平台的应用程序。2014年10月编程语言排行榜(http://www.ti
2014-11-12 00:29:54 3641
原创 游戏开发热门技术浅析
最近手游开发很热,今天我们来看看目前比较主流的手机游戏开发技术,以下仅仅是个人了解的皮毛,为想了解和步入游戏行业的朋友做一参考。cocos2d我们先来看一幅图:要看懂这幅图就先要了解一下cocos2d的生命历程,下面我来做一下简要的归纳和介绍吧。2005年,Ricardo和朋友萌生了用Python语言 “一星期编写一个游戏”的想法。在2005~2007年间,他们设计了许多种这样的游戏。值得注意的是
2014-11-11 21:25:08 4654 6
原创 Android实现微信分享及注意事项
一、获取帮助文档并下载相关资料首先打开微信开放平台:https://open.weixin.qq.com/ 如果没有注册,请先注册并上传开发者资料等待审核。资源中心----移动应用开发----分享与收藏功能----Android开发手册开发手册链接地址:https://open.weixin.qq.com/zh_CN/htmledition/res/dev/document/sdk/android
2014-10-26 18:19:39 26848 12
原创 CSDN专家吐槽实录
今天打开CSDN发现界面上的几个图标发生了变化,一个小小的变化,却引起了诸多CSDN专家对CSDN社区未来发展的思考,我特意从群里讲对话黏贴出来,希望各位能给予积极评价和建议。你已经是群成员了,和大家打个招呼吧!阳光小强(739299362) 11:12:53 大家好,这里还深藏着这么一个群11:13:26墨镜猫。加入本群11:13:37风加入本群阳光小强(739299362) 11:13:44
2014-10-23 11:43:41 3420 5
原创 Java中的软(弱)引用
一、Java中的强、软、弱、虚引用在JDK中我们可以看到有一个java.lang.ref的包,这个包中就是Java中实现强、软、弱、虚引用的包,如下:PhantomReference虚引用:如果一个对象持有虚引用,就和没有持有引用一样,在任何时候都可能被垃圾回收器回收。虚引用主要用来跟踪对象被垃圾回收的活动,虚引用还有一个和弱、软引用不同的地方是虚引用必须和引用队列联合使用。当垃圾回收器准备回收一
2014-09-28 22:28:33 2604
原创 国庆节前夕的夜晚
现在已经是秋季,早晚能明显感觉到气候变冷,听说北京的秋天很短,在这样一个宁静的夜晚,坐在电脑前的我,不想去打开游戏或者eclipse,听着外面蟋蟀吱吱的叫声,突然很想点燃一支烟停下来看一下过去的自己。翻开以前写的生活博客,仿佛又看到了自己的学生时代,想到宿舍的室友、同学、老师和原来讨厌现在却感到温馨的校园,想到了过去一年中自己走过的路.......一个神秘而又令人失望的专业 记得从初中开始开始恋
2014-09-27 00:14:58 3470 7
原创 Android多线程研究(9)——读写锁
一、什么是锁在Java的util.concurrent.locks包下有关于锁的接口和类如下:先看一段代码:package com.codeing.snail.test;public class ReadWriteLockTest { public static void main(String[] args) { final Output output = new Output();
2014-09-16 00:05:09 6568 1
原创 Android多线程研究(8)——Java中的原子性理解
一、什么是原子性原子性是世界上最小单位,具有不可分割性。比如a=0;(a非long和double类型)这个操作是不可分割的,那么我们说这个操作是原子操作。再比如:a++;这个操作实际上是a=a+1;是可分割的,所以他不是一个原子操作。二、原子操作的作用非原子操作都会存在线程安全问题,需要我们使用同步技术(sychronized)来让它变成一个原子操作。一个操作是原子操作,那么我们就称它具有原子性。
2014-09-14 23:57:44 5641 5
原创 三种字符串拼接方式比较
在Java中对字符串的操作可以说是最常用的,在对字符串的操作中有三种拼接字符串的方法,下面我们来看看这三种方式有何不同,在什么时候用比较合适。一、从耗时角度看先来看一段代码:package com.codeing.snail.test;public class StringFormat { private static long startPointTime; public static
2014-09-12 23:39:58 9637
原创 Android系统开发(8)——linx进程基本概念
一、proc文件系统传统意义上的文件系统是用于块设备上信息的存储,/proc这个目录是一个虚拟文件系统,它放置的数据都是在内存当中,所以这个目录本身不占用任何硬盘空间。主要包含如下系统信息:内存管理系统进程特征数据文件系统设备驱动程序系统总线电源管理终端系统控制参数用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取p
2014-08-30 10:00:29 4591
原创 Android系统开发(7)——标准I/O与文件锁
一、常用函数fopen:FILE *fopen(const char *filename, const char *mode);fread:size_t fread(void *ptz, size_t size, size_t nitems, FILE *stream);fwrite:size_t fwrite(const void *ptz, size_t size, size_t nitem
2014-08-27 22:39:56 4313
原创 Android系统开发(6)——Linux底层输入输出
一、操作系统的体系结构计算机是由一堆硬件组成的,操作系统是为了有效的控制这些硬件资源的软件。操作系统除了有效地控制这些硬件资源的分配,并提供计算机运行所需要的功能之外,为了提供程序员更容易开发软件的环境,操作系统还提供了一整组系统调用接口。如上图所示,最中间的是硬件,操作系统是由内核和系统调用接口组成,其中内核是直接操作硬件的,内核提供了对这些硬件资源的控制和进程管理,系统调用接口向上提供了统一的
2014-08-24 19:31:07 2521
原创 Android系统开发(5)——Eclipse for C/C++
一、下载JDK官方下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html二、下载eclipse for c/c++官方下载地址:http://www.eclipse.org/downloads/下载后的JDK和Eclipse三、安装JDK1、解压jdk压缩包tar -xvzf
2014-08-24 17:01:19 2983
原创 Android系统开发(4)——Autotools
Autotools工具的构成1、autoscanautoscan是用来扫描源代码目录生成configure.san文件的,configure.san包含了系统配置的基本选项,里面都是一些宏定义,我们需要将它的名字改为configure.in2、aclocalaclocal是一个perl脚本程序。aclocal根据configure.in文件内容自动生成aclocal.m4文件,生成的aclocal
2014-08-24 13:15:51 2382
原创 Android系统开发(3)——Makefile的编写
Makefile是什么?makefile的作用:1、工程文件组织,编译成复杂的程序2、安装及卸载我们的程序Makefile使用示例在/home/username/makefile目录下有如下三个文件:main.c#include #include int main(int argc, char *argv[]){ int x, y; sscanf(argv[1
2014-08-24 11:46:55 2641
原创 Android系统开发(2)——GDB调试工具
调试的过程我们在eclipse中来看一下一般调试的过程:1、debug模式编译2、打上断点3、运行调试4、单步调试step into:跳到函数体内部step over:不跳到函数体内step return:运行完当前函数5、继续运行continue6、打印和监控值GDB调试先写一段C++的代码,代码内容如下:使用debug模式编译:进入Debug调试模式:1、打断点,打断点的方式如下(GDB中的命
2014-08-21 23:28:16 2692
原创 Android系统开发(1)——GCC编译器的编译和安装过程
GCC编译器介绍GCC编译器(GNG C Compiler)是GNU项目中符合ANSI C标准的编译系统,能够编译C C++ Object C等语言编写的程序,同时GCC也是一个交叉编译器,特别使用于不同平台的嵌入式开发。GNU:GNU是“GNU is Not Unix"的递归缩写,1984年,史托曼开始GNU项目,这个项目的目的是创建一个自由,开放的Unix操作系统(Free UNIX),刚
2014-08-21 01:06:53 9424 5
原创 一段代码的疑问(1)——unsigned与signed
现象:先来看一段代码:这段代码的输出结果是:-844294967264分析:xiaoqiang@dev:~/cpp$ g++ -g c212.cc -o tempxiaoqiang@dev:~/cpp$ lsc143.cc c144.cc c212.cc temp可以看到多出一个temp文件xiaoqiang@dev:~/cpp$ gdb tempGNU gdb (Ubuntu/Lin
2014-08-14 13:05:39 4162 4
原创 Android自定义组件系列【11】——实现3D立体旋转效果
今天在网上看到一篇文章写关于Android实现3D旋转(http://www.ibm.com/developerworks/cn/opensource/os-cn-android-anmt2/index.html?ca=drs-),出于好奇就写了一个,运行效果如下:下面我们就开始一步步完成这个效果吧。实现水平滑动package com.example.rotation3dview;import
2014-08-07 18:17:46 10033 3
原创 Ubuntu下成功安装QQ2013
阳光小强最近用Win8系统感觉特别不爽,中午果断换了一个win7系统,又想着能不能搞个双系统(最近在看一些linux东西),于是就开始整起来。结果并不好,linux虽然整好了,但是硬盘全部格式化了,当时的心情是即喜又悲啊!倒腾了半天linux感觉蛮不错的,比较遗憾的是没有QQ,于是就就有了Ubuntu下的Linux安装。下面直接进入正题:腾讯官方提供的Linux版本QQ:地址:http://im.
2014-08-03 01:27:17 3304 4
原创 是男人就下100层【第五层】——2048游戏从源码到发布市场
上一篇《是男人就下100层【第五层】——换肤版2048游戏》中阳光小强对2048游戏用自己的方式进行了实现,并分享了核心源码,这一篇阳光小强打算将该项目的所有源代码公开并结合这个实例在这篇文章中介绍一下如何添加广告和实现分享功能。最终运行效果如下(更多运行效果请看《是男人就下100层【第五层】——换肤版2048游戏》):一、如何实现换肤换肤的思路其实很简单,在ActionBar中添加菜单,当用户选
2014-07-30 00:07:24 9798 34
原创 是男人就下100层【第五层】——换肤版2048游戏
在“阳光小强”的实战系列博文《是男人就下100层》的上一层我们一起从零开始完成了我们自己的贪吃蛇游戏——CrazySnake,可能很多朋友还不过瘾,那么我们今天就来玩一玩最近一直比较火的2048游戏,让大家再过一把瘾。由于“阳光小强”目前并没有从事Android的游戏开发工作,所以这些游戏的实现并不需要很专业的游戏开发知识,如果你有Android的基础就可以一起来参与进来共同完成这个游戏。有些朋友可能就会说“这些小游戏,会不会有点简单,整天搞这些对自己没有帮助“,有这种理解的无非两种人,一种是真真经验丰富的
2014-07-17 00:23:45 12547 41
原创 是男人就下100层【第四层】——Crazy贪吃蛇(3)
上一篇《 是男人就下100层【第四层】——Crazy贪吃蛇(2)》实现了贪吃蛇绕着屏幕四周移动,这一篇我们来完成贪吃蛇的所有功能。一、随机产生苹果 private void addAppleBox(){ int randomX = random.nextInt(xMaxBoxCount); int randomY = random.nextInt(yMaxBoxCo
2014-07-13 18:49:09 4365 2
原创 是男人就下100层【第四层】——Crazy贪吃蛇(2)
在上一篇《是男人就下100层【第四层】——Crazy贪吃蛇(1)》中我们让贪吃蛇移动了起来,接下来我们来实现让贪吃蛇可以绕着手机屏幕边线移动并且可以改变方向一、添加状态并修改代码首先我们来用另外一种方式实现上一版本中的刷新界面,在Crazy贪吃蛇(1)中我们自定义了一个线程每隔1s钟刷新界面,在线程中我们使用了postInvalidate()方法通知主线程重绘界面,我们打开View的源代码看看到底
2014-07-13 17:00:10 3678
原创 是男人就下100层【第四层】——Crazy贪吃蛇(1)
贪吃蛇是一款很经典的游戏,这些经典游戏给我们的童年增加了不少乐趣,今天开始我们来一步一步的在Android设备上实现一款贪吃蛇游戏,我也是第一次写这个游戏,有可能会写错,或者走弯路,但是最终希望能有一个好的结果,接下来我们一起来一步步的摸着石头开发吧。一、建立一个工程二、自定义View(贪吃蛇界面)package com.example.crazysnake;import android.co
2014-07-09 00:02:27 5811 4
原创 Android自定义组件系列【10】——随ViewPager滑动的导航条
昨天在用到ViewPager实现滑动导航的时候发现微信的导航条效果是跟随ViewPager的滑动而动的,刚开始想了一下,感觉可以使用动画实现,但是这个滑动是随手指时时变化的,貌似不可行,后来再网上搜了一下,找到一个开源代码,结果打开一看大吃一惊,这么简单的效果代码居然大概有300多行,太占手机存储空间了!后来自己干脆重写ViewGroup使用scrollTo方法实现了一下,具体实现过程如下:pac
2014-07-05 19:55:15 4404 3
原创 设计模式——代理模式
代理模式的作用是控制和管理访问先看一段代码:package com.test;/** * 抽象角色 * @author Administrator * */abstract public class Subject { abstract public void request();}package com.test;/** * 真实角色 * @author 阳光小强 *
2014-07-01 21:51:09 2438 1
原创 Java的结构之美【2】——销毁对象
先来看一段代码:import java.util.Arrays;import java.util.EmptyStackException;/** * 2014年6月28日09:31:59 * @author 阳光小强 * */public class Stack { private Object[] elements; private int size = 0; privat
2014-06-29 09:58:33 3184
原创 Java的结构之美【1】——构造对象
当我们遇到多个构造器参数的时候可能会想到用构件器,代码如下:/** * 构建器 * @author 阳光小强 * */public class Lunch { private String cake; private String meat; private String milk; private String drink; public Lunch(){ this(
2014-06-28 00:19:04 5175 8
原创 Android自定义组件系列【9】——Canvas绘制折线图
有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了很多插件,但是很多时候我们需要根据具体项目自定义这些图表,这一篇文章我们一起来看看如何在Android中使用Canvas绘制折线图。先看看绘制的效果:实现原理很简单,我就直接给出代码:package com.example.testcanvasdraw;import java.util.ArrayList;imp
2014-06-16 22:01:30 13338 8
原创 Android自定义组件系列【8】——遮罩文字动画
遮罩文字的动画我们在Flash中非常常见,作为Android的应用开发者你是否也想将这种动画做到你的应用中去呢?这一篇文章我们来看看如何自定义一个ImageView来实现让一张文字图片实现文字的遮罩闪烁效果,下面先来看看效果吧。(录屏幕延时导致效果看起来不是很好)一、实现原理 实现原理是重写View的onCreate方法,获取图片资源后对每个像素的透明度进行修改来实现,再启动一个线程来循环改变某
2014-06-15 20:02:03 6002 6
原创 是男人就下100层【第三层】——高仿交通银行手机客户端界面
前言:从《是男人就下100层》系列博文的【第二层】发表完到现在已经整整三个月了,从前面的访问量和评论来看很多朋友还是喜欢实战类的博文的。很多尊敬老师和专家在总结了自己多年的开发经验后为我们年轻的一辈留下了很多知识,使我们踏在他们的肩膀上行走(怎么赶脚是骂人的话),最后这些知识很多成为一种形式向下流传——书籍。书籍就像是上大学,不能夹杂太多的口语,而博客给予我们更多的交流空间,我们不用去理会什么条条
2014-06-12 22:52:57 10397 27
原创 一个Java基础练习
今天在群里又有一个朋友问到了这样一个练习,我索性将代码贴到这里,下次需要的朋友可以来这里看。用到知识点:数组、集合、IO流问题描述:在如下图所示的一个txt文件中读取数据到内存,然后统计列除过0的各个数字的个数(放入Map)并按照列的数据大小排序。代码:package com.test;import java.io.BufferedReader;import java.io.File;im
2014-06-11 17:31:51 2719
原创 Android多线程研究(9)——线程锁Lock
在前面我们在解决线程同步问题的时候使用了synchronized关键字,今天我们来看看Java 5.0以后提供的线程锁Lock.Lock接口的实现类提供了比使用synchronized关键字更加灵活和广泛的锁定对象操作,而且是以面向对象的方式进行对象加锁。 @Override public void run() { while(true){ Lock lock = new Re
2014-06-08 21:08:55 11289 1
原创 Android多线程研究(8)——Java5中Futrue获取线程返回结果
我们先来看一下ExecutorService中的执行方法:在上一篇中我们使用了execute方法启动线程池中的线程执行,这一篇我们来看看submit方法的使用:submit提交一个返回值的任务用于执行,返回一个表示任务的未决结果的 Future。该 Future 的 get 方法在成功完成时将会返回该任务的结果。import java.util.concurrent.Callable;impor
2014-06-08 11:45:08 3206 2
原创 Java中的反射——(1)什么是反射
Java程序中的各个Java类属于同一类事物,描述这类事物的Java类名就是Class.public class ReflectTest { public static void main(String[] args) throws ClassNotFoundException { String str1 = "abc"; Class cls1 = String.class; Cla
2014-06-05 22:57:09 2905 2
html5博客主页
2014-03-31
高仿帮美女更衣系列源码(1)
2014-03-09
微信高仿系列源码(9)
2014-03-06
Android布局文件反编译工具
2014-03-05
高仿微信界面系列源码(8)
2014-03-04
高仿微信系列源码(6)
2014-03-03
Android一个小闹钟例子
2014-02-26
android高仿iphne开关
2014-02-12
极光消息推送(服务器自动生成内容)
2014-02-10
Android贪吃蛇源码
2014-01-26
appframework-master 2.0
2014-01-17
ios_网易彩票
2015-05-06
Android高仿豆瓣客户端
2015-01-18
Android自定义对话框
2014-12-30
unity3d制作的一个3d游戏源码
2014-11-11
unity3d开发的游戏demo
2014-11-11
Android2048游戏
2014-07-18
2048apk安装文件
2014-07-17
贪吃蛇源码(未完结版)
2014-07-13
Android自定义组件——单向滑动(仿facebook)
2014-04-22
PhoneGap+Jquery mobile汇率计算器
2014-04-14
PhoneGap环境搭建demo
2014-04-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人