3 ddnosh

尚未进行身份认证

我要认证

欢迎关注公众号:国民程序员。我的新书《AndroidApp开发入门与实战》已经出版发行了,详情请见:https://blog.csdn.net/ddnosh/article/details/107666187

等级
TA的排名 2w+

我的新书《Android App开发入门与实战》已经出版

本书结合工作中的实际项目,站在开发者的角度,从实战出发,介绍如何开发一个完整Android App,以及开发Android App所会涉及到的各个方面。目的是让Android开发人员迅速掌握App开发技能,系统完整地了解最新Android开发技术,以及灵活运用各种开发工具和技能。

2020-07-29 17:17:37

趣谈代码评审(Code Review)编年史

1990 - your code is using to much memory1995 - your code is not running on window 952000 - your code is slow2003 - your code don’t have tests2005 - your code is not 64 bit2009 - your code is not using mvc patters2010 - your code is not horizontal sca

2020-06-30 08:27:48

大厂程序员辞去2w月薪去当司机的一点看法

最近某大厂程序员做了个视频说自己厌恶编程因而决定去做一名司机。理由是互联网已经是夕阳行业,准备追风口去了。

2020-06-29 15:04:08

没有百度,你还会编程么?

百度是什么,一个搜索引擎,网络的入口,可以从里面找到你想要的存在于网上的东西,当然其中也包括编程知识。这时有人说了,没了百度,用Google啊,搜索代码啥的还是Google比较合适。当然这里我们想讨论的不是具体用百度还是Google,我想很多人还是会从百度作为入口搜索代码的,毕竟有很多国内的技术网站SEO做的很不错,百度里面搜出来的匹配度还挺高,基本上能满足需求,如果实在找不到答案,再考虑去Google或者Bing这样的搜索引擎。我们想说的是,如果不靠搜索引擎,你还能愉快地.

2020-06-28 22:07:23

“拍一拍”真的只是“拍一拍”么?

最近微信的”拍一拍“功能上线后,就被大家玩坏了。各种拍的文案应运而生,什么”拍了拍裤裆说,怎么这么小“,”拍了拍自己的脑袋说,怎么都是水“。

2020-06-27 09:19:28

程序员如何优雅地摆地摊

当下摆地摊如火如荼地在全国上下展开,这里怎么少得了程序员呢?这年头没摆过摊,都对不起国家给的政策。程序员该如何在这一风口上捞上一桶金呢?今天国民程序员来给大家分析分析。学了那么多年编程,发型可以变,体型可以变,但是编程思想不能变,衣服也不能变。。。根据万物皆通的原则,我们要将设计模式原则、互联网思维、行业特色带入地摊经济中。说起设计模式原则,比如单一职责原则,放到摆摊上来说就是,不要什么东西都卖,找准一个突破口即可。摊位不是小商店这样的杂货铺,面积小,东西不多,但是要有特.

2020-06-26 20:15:50

Android AOP简介及其AspectJ的应用

文章目录AOP与OOPAOP实现方式AspectJ实例AOP与OOPAOP: Aspect Oriented Programming,即面向切面编程。作用是通过预编译方式和运行期动态代理实现程序功能的统一维护。在Spring开发中,AOP技术应用得比较广泛,通过AOP实现横切关注点(如日志、缓存、事物、安全等),实现与具体影响对象的解耦。AOP也是函数式编程的一种衍生模式。那什么是切面呢?...

2019-08-25 12:29:50

Android使用AspectJ进行AOP开发时遇到的一些问题总结

文章目录实例代码参考工程:https://github.com/ddnosh/QuickAOP@Around 注解的方法,无法进入断点debug@Before、@After都可以进入断点,但是@Around却不能进入断点。解决方案:新建一个library库工程,将annotation和aspect文件都放在库工程中。java.util.zip.ZipException: zi...

2020-01-24 08:05:25

12个Android中使用AspectJ实现AOP的实例操作

文章目录github地址AOP开发问题总结骚操作展示1. 实现annotation2. 实现aspectj3. 使用方法github地址实例代码参考工程:https://github.com/ddnosh/QuickAOPAOP开发问题总结https://blog.csdn.net/ddnosh/article/details/103988614骚操作展示添加日志、权限拦截、防止双...

2020-02-02 16:46:48

App马甲包开发需要注意的地方

文章目录App端要做的设计端要做的服务端要做的由于种种原因导致原App不能使用,比如App被封杀,服务器被黑等,因此需要在短时间内上架跟原App类似的App,简称马甲包。马甲包的特点是:功能跟原App一模一样;对用户来说,只是换了一套皮肤和名称;App端要做的包名:这个肯定要换掉;icon:一般也要换成新的App的icon;app_name:肯定要换成新的;推送:因为换了包名,各个推送平台需要重新申请key和secret;如果是公司内部的推送平台也需要申请。分享:微信、QQ、微博、

2020-05-12 16:47:05

纪念博客专家申请成功

写本篇博客为了纪念成为CSDN博客专家。最近些年一直在做移动端方向的开发和管理工作,17年底开始在CSDN上陆续总结Android App实战开发中的一些经验,主要是分享和探讨App开发的遇到的问题和解决方案。平时也有总结的习惯,比如从一个项目中可以学到了哪些技术,遇到了什么问题,怎么解决的,还有哪些可以优化和改进的。俗话说好记性不如烂笔头,将这些知识记录下来,久而久之就成为容量庞大的知识仓库。非常感谢CSDN提供了这样一个交流和分享的平台,也感谢上面遇到的很棒的朋友。“其作始也简,其将毕也必巨”,共

2020-05-09 10:12:50

ViewBinding使用时出现Could not find method viewBinding() for arguments错误

在app的build.gradle中android内配置了:viewBinding {enabled = true}编译时报错:Could not find method viewBinding() for arguments.解决方案请检查以下几点是否配置正确:Android Studio版本需要升级到3.6以上;Android Gradle Plugin Version和Gr...

2020-05-05 10:10:51

ViewBinding使用时出现Missing required view with ID: xxx 错误

文章目录问题描述原因分析解决方案其它解决方案问题描述Android Studio版本:3.6.3我们知道,AS在3.6版本是引入了ViewBinding功能,具体功法此处不赘述。有时候在导入第三方使用了ViewBinding功能的项目时,会发现点击某些页面崩溃,并报如上错误。原因分析出现这种现象的原因一般是我们项目中使用了include布局,导致include布局中的id不能被识别。...

2020-05-01 10:49:51

关于源码阅读:源码资源、阅读工具、阅读方法

源码资源源码资源一般分两类,一类是在线资源,一类是本地资源。在线资源这类资源一般是一个网站,提供在线源码阅读与检索功能。比如 GitHub 就是一个大型的源码分享网站。我们可以在 GitHub 上面分享我们的源码,其他人可以在线阅读,也可以下载到本地,通过导入源码开发或者阅读工具进行阅读。另外还有一些专业方向的在线阅读源码网站,以 Android 为例,AOSPXRef 网站是一个专门的...

2020-04-27 19:19:54

高级程序员、研发Leader、技术总监、首席架构师、CTO的职责

作者 | 阿朱来源 | 微信公众号“阿朱说”经常有创业公司老板来拜访我,常常会拜托给我一句话:帮我找一个CTO。我解释的多了,所以想把这个写下来,看看你到底需要的应该是啥。一、高级程序员如果你是一个刚刚创业的公司,公司没有专职产品经理和项目经理,你就是公司的产品经理,你如果对你现在的开发员能力不满,那么你只需要的是一个高级程序员。你定义功能、你做计划推进和管理,他可以带1-2个副手把你...

2020-04-04 15:04:51

Android开发已经没人要了么?

前沿Android从08年开始兴起,一路走来,已经历经10多年的发展。08到12年属于Android从萌芽到快速发展的阶段,12到16年属于Android成熟阶段,16年到现在属于Android差异化发展阶段,并且在各个领域均有渗透。发展历程08到12年:Android开发从兴起到爆发,火遍大江南北,很多做Java开发的纷纷纷纷转行做Android。还记得那时刚开始比较稳定的操作系统是1.5...

2020-03-30 10:39:20

Android开发想要百万年薪,你得这样做!

Java高阶:原理:泛型、线程池、classloader、反射、JVM、I/O、注解、序列化;Framework:Activity生命周期、Activity启动模式、Activity任务栈、IPC机制、View事件体系和工作原理、window和windowmanager、四大组件、消息机制;开源框架源码:主流开源库源码实现原理;App优化:代码、内存、启动、布局、卡顿、网络、存储、图片、...

2020-03-30 10:33:57

错误:Unfortunately you can‘t have non-Gradle Java modules and Android-Gradle modules in one project.

最近在revert一个library的build文件夹的时候,SVN出现错误,提示操作失败。结果整个Android Studio就开始不正常了。一直提示:Compilation is not supported for following modules: xxx. Unfortunatelyyou can’t have non-Gradle Java modules and Andro...

2019-01-16 19:27:38

Flutter编译卡在Running Gradle task ‘assembleDebug‘...

可能出现的场景:项目变更目录有时我们将项目移动到了其它位置,然后重新编译运行,就会出现这样的问题。比如从D:…换成了E:…变更了Gradle Version比如从5.4.1换成了5.6.2,由于网络问题下载速度可能不会那么快,所以导致了一直卡在此处。解决方案删除根目录级的build文件夹:下载离线Gradle版本下载后解压到/.gradle/wrapper/dists/目...

2020-03-07 11:10:12

Learn Git Branching:一个非常好的学习Git命令的网站

文章目录网址GitHub地址特点演示Demo简介闯关网址https://learngitbranching.js.org/GitHub地址https://github.com/pcottle/learnGitBranching特点LearnGitBranching通过可视化动画效果来帮助开发人员理解Git命令,并且配有游戏闯关功能来一步一步学习Git命令。开发人员可以在LearnGi...

2020-03-01 08:22:51

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。