自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序员人生

菊尽无花

  • 博客(19)
  • 收藏
  • 关注

原创 添加自定义字体引起的Memory Leak

添加自定义字体引起的Memory Leak问题

2018-01-26 15:52:50 338

原创 应用在华为P9手机上安装失败原因分析 (错误码:-110)

问题描述:应用在之前的华为手机上都能正常安装,但是在华为P9手机上安装失败,提示错误为:失败原因:系统问题导致安装失败(错误码:-110)原因分析:开始怀疑是android的版本问题,后来看了一下在华为Mate8上面也能正常安装,华为Mate8和华为P9都是android6.0华为P9 用的是 EMUI 4.1版本,但是华为Mate8用的是EMUI4.0, 初步

2016-05-15 00:04:04 37262 10

原创 Activity和Service之间只相差了一个Window

从使用的角度来说: - Activity主要处理需要用户参与的任务 - Service主要后台处理一些不需要用户参与的任务 从实现角度来看,是什么造成了它们之间的区别,我很好奇的翻了翻源码,发现: Activity和Service 都是由共同的祖先派生下来的,其实Activty和Service之间最大的区别是 Activity包含了一个Window,但是Service没有。

2016-05-07 18:33:32 1262

原创 Android Studio分渠道打包

使用Android Studio分渠道打包的详细步骤

2016-05-07 17:20:15 1745

原创 上班族怎么提高时间的效率?

现在人的时间越来越碎片化,有太多的东西会打扰人的专注力。比如微信,手机放在桌子上,总是不时响起,每次响起,总是习惯的打开看看什么情况。比如邮件,上班的时候总会弹出一个邮件,经常会打开看看然后回复一下。我还有一个很不好的习惯,就是喜欢同时做几件事,工作的时候,经常是几件事同时穿插着做。搞的自己很忙,还觉得没啥效率。微信常常响起,尤其是一些群。把一些不重要的群统统设置成消息免打扰。有时间的时候

2016-05-04 21:22:42 352

原创 敏捷能干啥?

一次和朋友谈起敏捷,朋友说了一句“一切开发方法都是耍流氓,软件做的好不好全看人怎么样”。好吧,我50%的同意这个观点。“只要人足够优秀,流程就是个屁。"纵观人类历史上那些牛叉叉的软件,基本都是最初几个大牛凭借自己的天才才华捣鼓出来的。比如Unix啥的。我相信这些大牛们开发软件时候时候,肯定没有仔细考虑过该采用什么软件开发流程,典型的code and fix。问题在于我们很难保证软件开发队伍里的人都足够优秀。现状是优秀的人都是一小部分。所以我们需要一个好的开发方法帮助团队能够完成软件项目。

2014-01-08 16:51:55 1425

原创 Emacs 的安装和配置

关于Emacs 的安装和配置,网上已经有很多文章介绍,对于初学者最痛苦的莫过于解决方案分布太广,需要一一寻找。我把各种需要用到的资料汇总一下,方便大家参考,也方便自己以后查阅。基本上下面几个网站就能满足初学者的要求。Emacs 简单教程: http://i.linuxtoy.org/docs/guide/ch25.html 中文Emacs 的简单设置: http://doc

2012-02-25 17:33:58 430

原创 ubuntu彻底解决wine的中文问题

<br />其实方法很简单,就是运行 export LANG=zh_CN.utf8 <br />在运行wine就OK了。<br /><br />我还测试了网上说的<br /><br /> env 方式: <br /> env LANG=zh_CN.utf8 wine QQ.exe <br /> <br />发现并不起作用。<br /> <br />安装时用英文的ubuntu,装上中文包,还用上面的办法。发现有些软件会崩溃。<br />安装是用中文的ubuntu, 安装好w

2011-06-02 20:48:00 1894

原创 C++学习--拷贝构造函数

拷贝构造函数<br />int i = 0;<br />int i(0);<br />数据类型可以扩展。<br />先看一个例子:<br /><br /> class howmany{<br />    static int object_count;<br />public:<br />    howmany(){<br />        object_count++;<br />    }<br />    static void print(){<br />        cout<<"object

2010-12-15 22:41:00 411

原创 C++学习-常量

常量<br />1.       值替代<br />l         为什么使用const代理 #define<br />例如:const int bufsize = 1000; const int bigbuf = bufsize*3;<br /><br />#define A 3<br />#define B A+5<br />#defien C B*3 <br />那么C为   A+5*3 = 18<br />类型检查:const会进行类型检查,但是#define不会检查类型<br /><b

2010-12-15 13:57:00 494

原创 软件设计中的五大原则

<br />软件设计中的五大原则<br /> <br />一、 SRP The Single Responsibility Principle 单一职责原则<br /> 陈述:就一个类而言,应该只有一个导致其变化的原因分析:<br />一个职责就是一个变化的轴线<br />一个类如果承担的职责过多,就等于将这些职责耦合在一起。一个职责的变化可能会虚弱或者抑止这个类完成其它职责的能力<br />–多职责将导致脆弱性的臭味<br /> <br />什么是职责?职责就是变化的原因。<br /> <

2010-12-14 23:16:00 1264

原创 C语言声明学习之高级篇(转载)

 C语言的设计哲学要求对象的声明形式和它的使用形式尽可能相似,比如一个int类型的指针数组被声明为int *p[3];并以*p[i]这样的表达式引用或者使用指针所指向的int数据,所以它的声明形式和使用形式非常相似。这样做的好处是各种不同操作符的优先级在“声明”和“使用”时是一样的,而缺点恰好在与C语言的操作符的优先级过于复杂(有15级或者更多,取决于你怎么算),这是C语言设计不当、过于复杂之处。        实际上有些关键字只能出现在声明中,而不是使用中,比如volatile和const等,这使

2010-10-10 15:37:00 443

原创 (C 语言)类型提升的问题

(C 语言)类型提升的问题今天在工作中发现了一个和类型相关的问题.代码如下:Declaration:                    uint32 cursor;                    uint16 i;                    uint16 old_str_len = 0;                    uint16 new_str_len = 0;Code:                if (cursor >= i +

2010-10-10 15:35:00 458

转载 陈老师的艺术人生

<br /> 有人说;<br /> <br /> <br />在我的眼中,但凡著名的艺术家在早期都是穷困潦倒的,我国香港特别行政区的著名摄影艺术家陈冠希老师更是如此,陈老师早年拍摄摄影作品的时候,连一台像样的专业相机都没有,可他硬是用一部普通的拍照手机就拍出了近2000张震撼人心、享誉全球的摄影名作,且不说后无来者,恐怕前无古人这样的称号对于陈冠希老师来说是当之无愧了! 细观陈老师的作品,尤其是不朽名作“阿娇之媚”,在简陋而温馨的环境下,影像中人物表情彷徨、迷离,眼神里流露出对现实生活的不惑而又

2010-10-05 22:37:00 461

原创 C++学习 -- 重载和缺省参数

重载和缺省参数什么是重载?<br />重载简单来说就是依次多义。所谓函数重载是指同一个函数名可以对应着多个函数的实现为什么要重载?<br />主要是两个原因:<br />1. 不想使用printf_int(), printf_char(), printf_float() 来打印不同数据类型的字符。类似这样的问题,可以使用重载来解决。<br />2. 构造函数<br />因为构造函数的名字预先由类的名字确定,所以只能有一个构造函数名。但如果我们想用几种方法来创建一个对象时该怎么办呢?例如创建一个类

2010-09-20 17:44:00 493

原创 C++学习 -- 构造函数和析构函数

构造函数和析构函数<br /><br />在C中,程序的完整性交给用户来维护<br />//main.c文件<br />#include "stash.h"<br />#include <stdio.h><br />void main(){<br />  Stash s;<br />  initialize(&s, sizeof(int));   <br />  for(int i=0;i<10;i++){<br />  add(&s, &i);<br />  }<br />  for(i=0;i<

2010-09-20 17:43:00 501

原创 无题

<br />若无缘,三千大千世界,百万菩提众生,为何与我笑颜独展,惟独与汝相见?<br /><br />若有缘,待到灯花百结之后,三尺之雪,一夜白发,至此无语,却只有灰烬,没有复燃?

2010-09-10 23:19:00 331

转载 [转载]为什么敏捷方法能在软件开发中行之有效?来源:酷壳

<br />有很多的书籍讨论敏捷方法是怎样工作的(How it works?),在这个主题演讲中,Martin Fowler 和他的同事 Neal Ford 讨论了敏捷方法能够在软件开发项目中行之有效的原因(Why it works?)。作为敏捷方法的发起人和传道者,Martin Fowler 和 ThoughtWorks 一直试图从理论层面证明敏捷方法的可行性,同时不厌其烦地解答着客户们的各种困惑,正如他们所说,敏捷方法中的很多概念不是特别的直观,除非人们真正实践过一段时间,否则有些概

2010-08-08 21:07:00 524

转载 [转载]与Martin Fowler关于敏捷方法的问答 来源:酷壳

2009年6月23日,Martin Fowler到公司访问,与我们开了一个小型座谈会并顺便拜访了他在ThoughtWorks的同事们。以下是座谈的内容:1、如何在常规业务中应用敏捷方法? 常规业务(Business As Usual)是指使公司业务正常运营而进行的一些日常业务活动,对于IT部门而言则包括系统维护、技术支持以及应用更改。这些工作相对于独立的软件项目而言即琐碎又零散,但又是不可或缺的。“如何在常规业务中应用敏捷方法?”,这是我们向Martin提出的第一个问题。Martin阐述道,首先需要

2010-08-08 21:03:00 587

空空如也

空空如也

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

TA关注的人

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