自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

欧阳锋工作室镜像

欧阳锋工作室,做你最坚强的知识后盾!

  • 博客(26)
  • 资源 (7)
  • 收藏
  • 关注

原创 为程序员同学们做点事

哈喽,大家好,我是欧阳锋。2019年,我创业了,迄今为止,我们已经奋斗了7个多月。今天,我带来了我们团队主要面向程序员同学们的一款作品:快评。什么是快评快评是一款社会化的评论系统,类似国内的畅言,国外的Disqus, 目前快评可以支持微信或手机号的方式登录,即将支持Github、QQ等其他方式登录。与畅言不同的是,快评完全支持Markdown语法,并且使用了一款颜值超高的Markdown...

2019-09-25 00:04:09 151

转载 使用Flutter,我写了一个开源版本的HandShaker

使用Flutter,我写了一个开源版本的HandShaker

2022-06-21 15:48:48 582

原创 Android手把手视频教程 | 课程简介

在新的一年到来之前,我准备一份学习大礼送给大家,那就是我们今天的主角:Android手把手系列视频教程。这个视频教程将从Android基础部分开始讲起,并使用Kotlin作为主要的编程语言,最终会进入高阶部分,最后会有一个应用实战课程,实战课程会使用GitHub合作开发的方式进行,所有参与学习的同学都可以推送PR,PR代码会严格审核,也是让大家了解一下GitHub的开源合作方式。好了,废话不多...

2019-12-27 16:52:27 211

原创 懒癌晚期患者的福音到了,高大上的Kotlin序列化插件来了!

上周我一哥们在吐槽Kotlin,说IDEA不支持在Kotlin序列化类中生成“高大上”的序列化版本号。我一试,还真不支持!既然IDEA本身不支持,但总有插件支持吧。于是,尝试Google搜索了一下,确实有一个这样的插件,这个插件发布于今年的2月份,一直处于alpha版本状态。赶紧安装测试了一下,确实可以生成序列化版本号,但生成的值似乎有点问题。而且这个插件仅支持Kotlin类,对于Java与Ko...

2019-12-15 12:41:06 530

原创 10分钟看懂动态代理设计模式(升级篇)

关于动态代理,我之前写过一篇文章《10分钟看懂动态代理设计模式》。在这篇文章中,我收到了一些关于动态代理的提问,也有同学在微信公众号给我私信,询问关于动态代理的问题。再次Review这篇文章之后,我发现了一些问题。确实有一些细节没有介绍清楚,有一些地方含混过关了。因此,我决定重新写一篇关于动态代理的文章,希望可以讲清楚关于动态代理实现的每一处细节。这注定又是一场艰难的旅程,你愿意加入我们吗?...

2019-12-08 10:21:33 479

原创 深入链表数据结构,助你搞定链表算法题

在上一篇文章《巧解约瑟夫环问题》中,我们提到了链表。部分同学可能对链表的数据结构还不太熟悉。今天,我们就一起来尝试手写一个链表类实现。然后,再一起来看一看与链表相关的那些算法题。本篇文章我们依然使用Java语言实现,如果你对其它语言的实现感兴趣,请在微信公众号”欧阳锋工作室“中给我留言常见的线性链表分为两种:单向链表与双向链表。所谓单向链表,即链表只能通过单向访问,从上一个节点可以访问到下...

2019-11-20 10:46:13 277

原创 巧解约瑟夫环问题

100个小孩手拉手围成一圈,从第1个小孩开始报数,数到3出列,下一个小孩继续从1开始报数,循环报数,求最后留在队列中的小孩的位置。这是一道非常经典的算法题,我在面试的时候经常提到这道题。这道题是完全可以通过正向思维解答的,但遗憾的是,在所有面试的人中,几乎没有一个人可以正确地解答这道题。那么,到底要如何解答这道题呢,我们一起来试试看!解法一:生死看淡,不服就干首先,我们尝试用正向思维...

2019-11-18 00:05:02 387

原创 理解Kotlin语言独有的位置注解,让注解控制更精准

在Kotlin语言编写的代码中,你应该看到过类似这样的注解@file:JvmName(...),这有点难以理解,正常的注解不会存在类似@file:这样的前缀,在Java语言中也没有类似的语法。那么,这到底有什么作用呢? 由于其特殊的作用,我把它称之为”位置注解“。Kotlin语言是一门将语法简化到极致的编程语言,我们一起来看一段简单的代码:class Person { var na...

2019-11-15 20:56:55 374

原创 正确使用Kotlin注解,兼容Java代码

大多数情况下,你不需要关注这个问题。但是,如果你的代码中包含了部分Java代码,理解这些注解将帮助你解决很多棘手问题。产生这个问题的根本原因在于:Kotlin语言与Java语言的设计思路不同,部分特性属于Java语言独有,例如静态变量。部分特性属于Kotlin语言独有,例如逆变和协变。为了抹平这些差异,Kotlin语言提供了一个绝佳的思路,通过添加注解可以改变Kotlin编译器生成的J...

2019-11-14 11:39:33 1849

转载 一个从来不玩游戏的人做了一款小游戏,你会来玩吗?

哈喽,大家好。我是一个几乎不玩游戏的人,小的时候也玩过小霸王游戏机,被父亲阻止。从此以后,对游戏便没了兴趣。虽然对大型游戏没了兴趣,但对一些益智类的小游戏却情有独钟,发现一些独特的小游戏总忍不住看上一眼。在一次偶然的机会,在国外的一个网站上发现一款推方块的小游戏,目的就是排除干扰方块,将目标方块移出游戏面板。刚开始的时候觉得这很简单,不就是移动方块吗?可是上手一玩却并不是那么回事,有一个通用...

2019-10-13 15:47:14 338

原创 Hexo搭配快评实在是太妙了!!!

快评是什么快评是由深圳市一行代码科技有限公司开发的一款社会化的评论系统,快评使用Markdown编辑器进行评论回复。目前,支持使用微信或手机号进行登录。体验地址:集成步骤1)注册并登录快评官网官网地址:https://kuaiping.yhdm360.com/点击右上方登录按钮,使用手机号加验证码的方式登录。首次登录后会看到申请免费使用的按钮,点击申请免费使用,填入申请域名,域名校验通...

2019-09-25 12:59:22 216

原创 2018最新Kotlin基础视频教程终于上线了

本篇文章已经在微信公众号【欧阳锋工作室】完成首发从5月份开始制作这个视频,历时两个多月,终于在网易云课堂与大家见面了…视频特色在前期课程中,使用普通编辑器进行编码,治疗你的IDE依赖症所有课程均使用live coding的方式授课,保持与你的频率一致每节课程课后都准备了相应的习题供大家巩固练习课程覆盖面广,线下效果持续跟踪项目实战部分是一个非常有意思的小项目,...

2018-07-09 14:56:56 5051 4

原创 使用Kotlin语言两年后,我有话要说

使用Kotlin语言已经两年了,它已经成为了我使用频率仅次于Java的编程语言。在此期间,很多人也谈了自己的一些使用感受。但我想,我是最有发言权的。迄今为止,我已经在三个生产环境应用中使用了Kotlin语言。因此,希望我的这些感想能够给你一些启发。Q:是一个什么机缘让你开始决定使用Kotlin? 如果我没有记错的话,大概在2016年3月份的时候突然收到一条来自Bugly...

2018-05-03 17:08:22 4389 1

原创 关于Kotlin抛弃可检测的异常处理,你怎么看?

可检测的异常英文翻译为Checked Exception,以下简称为CE。CE是一个备受争议的话题,有人主张CE是一个不可或缺的特性,也有人认为CE带来了一些问题,是一个冗余特性。这其中的支持者和反对者中都不乏软件行业的大佬。今天,我们借助这篇文章一起来讨论一下CE存在的必要性。什么是CE部分同学可能还不知道CE到底是什么。因此,在开始命题之前,有必要给大家解释一下CE的概念。...

2018-04-25 13:21:00 2508 2

原创 测测你的Kotlin基础

本次测试满分160分,测测看,你能拿几分 <<<1)Kotlin语言有基本数据类型吗?(5分)2)Kotlin中有哪些访问控制符,分别代表什么意思?默认访问控制符是什么?(5分)3)Kotlin接口是否允许有方法实现?是否允许声明成员变量?(5分)4)Sealed类有什么作用?(5分)5)Kotlin语言中如何实现类似Java创建匿...

2018-04-25 13:08:57 187

原创 测测你的Java基础

Let’s get started <<<1)关键字volatile、transient各有什么作用?2)下面两种使用synchronized关键字的方式有什么区别?// 第一种synchronized(this) { ...}// 第二种synchronized(A.class) { ...}3)ArrayList和Li...

2018-04-25 13:08:00 177

原创 Kotlin难点解析:extension和this指针

扩展(extension)是Kotlin语言中使用非常简单的一个特性。这篇文章并不是要讲解扩展的基本用法,而是解决在一些复杂场景中,扩展容易让人产生迷惑的一些问题。除了扩展,本篇文章还将讲解this指针在Kotlin语言中的基础用法。扩展函数难点解析大多数场景下,你都能轻松搞定Kotlin扩展。可是,看看下面这个题目,你还能脱口而出,告诉我答案是什么吗?open c...

2018-04-14 00:48:24 318

原创 技术相对论之软件架构

有同学问我,你是怎样学习编程的呢?为了回答你的这个问题,今天,我们一起来做一件非常有意思的事情。我们以MVC架构为基,从服务端编程开始,依次类推iOS、Android,并最终完成登录、注册功能。What is MVC ?正文开始之前,我们先来简单了解一下MVC架构。MVC全称是Model-View-Controller,是上个世纪80年底Xerox PARC为其编程语言...

2018-03-19 22:08:55 210

转载 Android两行代码实现仿微信滑动返回效果

iPhone滑动关闭页面是一个非常讨喜的设计。滑动关闭可以让你聚焦屏幕内容,而不需要因为返回突然切换思维到屏幕下方寻找返回按钮。事实上,在使用Android手机的时候,我经常这样做。原因是,Android不同机型的返回按钮位置不一样。以至于在更换机型后我常常找不到返回按钮,需要一段时间的适应期。而滑动关闭就可以有效地避免这个问题,目前已经有很多类型的Android应用开始支持滑动关闭,比...

2018-03-06 11:44:16 2608

原创 10分钟看懂动态代理设计模式

动态代理是Java语言中非常经典的一种设计模式,也是所有设计模式中最难理解的一种。本文将通过一个简单的例子模拟JDK动态代理实现,让你彻底明白动态代理设计模式的本质,文章中可能会涉及到一些你没有学习过的知识点或概念。如果恰好遇到了这些知识盲点,请先去学习这部分知识,再来阅读这篇文章。什么是代理从字面意思来看,代理比较好理解,无非就是代为处理的意思。举个例子,你在上大学的时候,总...

2018-03-02 16:05:33 725

转载 [Kotlin]深入理解backing field

最近,一个同学突然问到一个问题:为什么扩展属性不能直接进行初始化?针对这个问题,官方文档有一段简短的解释,翻译成中文就是:实际上,扩展并不会真正地往类中插入成员变量。因此,我们没有一个有效的方式让一个扩展属性拥有backing field,这就是扩展属性不允许被初始化的原因。大多数同学看到上面这一段话肯定是一头雾水,但我们抓到了一个关键词backing field。解释这个问题,其实就是理解bac

2018-02-06 22:58:10 1224

转载 前端开发教你配置单臂路由

单臂路由是基础网络课程中非常重要的一个知识点。概括来讲,就是路由器通过在一个接口中配置子接口的方式来实现不同局域网之间的通信。这里的局域网是通过802.1q协议配置Vlan的方式来实现物理隔离的。这篇文章将使用Cisco Packet Tracer来实现一个简单的单臂路由的配置,希望对你有所帮助。实验室环境操作系统:Windows 7 模拟器:Cisco Packet Tracer

2018-02-06 19:34:21 1603

转载 [Kotlin] 操作符重载及中缀调用

操作符重载其实很有意思!但这个概念却很少有人知道,使用操作符重载在某种程度上会给代码的阅读带来一定的麻烦。因此,慎用操作符被认为是一个好习惯。的确,操作符重载是一把双刃剑,既能削铁如泥,也能“引火烧身”,这篇文章将从实用的角度来讲解操作符重载的基本用法。支持重载的操作符类型Kotlin语言支持重载的操作符类型比较多。以最新版本1.2.21为准,目前支持重载的操作符可以归纳为以下几类:

2018-02-06 11:59:18 305

转载 关于Git,你真的学会了吗?

“锋哥,Git有什么可说的,不就是git add添加,git commit提交嘛” 听说我要写一篇Git教程,小明不屑一顾地说。 “…”。小明是我的一个学生。目前,是一名Android开发工程师。过了几天,我又再次见到了小明。“锋哥,今天,我在Github新建了一个版本库,本地提交后推送远程的时候,却被拒绝了,是怎么回事?”以下是小明的操作记录:git initgit

2018-02-01 22:41:00 863

转载 用Kotlin写Android Gradle脚本

Android应用开发中,离不开Gradle脚本的构建。大部分Android开发同学忽视了脚本的力量,甚至有很大一部分同学不知道Gradle脚本是什么,用什么语言编写的;当然,也有相当一部分同学知道Gradle脚本是使用Groovy语言编写的,但对于Groovy语言却一窍不通,只是勉强可以看懂Gradle脚本。正所谓,知其然,但并不知其所以然…换个角度看问题,熟练掌握Gradle脚本还需要精

2018-01-26 13:20:09 6326

转载 使用Snake,安卓也能轻松实现类iOS滑动关闭功能

坦率地讲,我并不是一个果粉。我也不觉得iOS系统比Android优秀,曾经有过一段时间将iPhone用作主流机。最后还是换成了安卓机,原因是iPhone的性价比的确不高,加上系统的一些限制,可玩性非常有限。而如果你问我,iOS系统里面有什么你特别喜欢的功能,滑动关闭无疑是其中一个。当人们在专注屏幕内容的时候,还要转移注意力聚焦屏幕下方的按钮,其实是有一些成本的,最直观的感觉就是不太自然。用过iPh

2018-01-11 19:20:31 1922

adbd-Insecure-v2.00.apk

一些手机使用刷机工具开启root后, 使用adb root命令时依然不能进入超级管理员模式,原因就是root不完全,这时需要在手机上安装adbd 并且开启su模式,这是用adb root就能看到提示符为#了 欢迎免费下载

2016-03-16

tcpdump for android L 5.x with pie support

由于使用了NDK编译的可执行文件在应用中调用,在4.4及之前的版本上一直没出问题。 最近由于要测试在Android L上的运行情况发现,当运行该可执行文件时,报如下错误: error: only position independent executables (PIE) are supported. PIE这个安全机制从4.1引入,但是Android L之前的系统版本并不会去检验可执行文件是否基于PIE编译出的。因此不会报错。但是Android L已经开启验证,如果调用的可执行文件不是基于PIE方式编译的,则无法运行。解决办法非常简单,在Android.mk中加入如下flag就行。

2016-03-10

PHP手册中文版

PHP手册中文版目录如下: 入门指引 安装与配置 语言参考 安全 特点 函数参考 PHP 核心 骇客指南 FAQ 附录 CHM版本

2015-01-28

ICO图标文件 分61个类别 每个类别有10来个图片文件

ICO图标文件 分61个类别 每个类别有10来个图片文件,欢迎下载,直接即可,无密码。

2013-12-15

JDK1.6+API帮助文档中文版.zip

JavaTM Platform Standard Edition 6 API 规范 本文档是 JavaTM Platform Standard Edition 6 的 API 规范。 方便查看。 解压出来即可打开查看,压缩包无密码。

2013-09-26

弹出任意个窗口实例 for命令运用 start命令批处理

实例为弹出cmd窗口 ,讲cmd改成其他程序就能实现弹出其他程序功能 (1,1,X)x表示弹出窗口数量

2011-04-09

set命令实例 运算符自增自减 +=、-=

一个保险箱密码保护程序 , 有10次密码输入机会,提示剩余尝试次数, 连续10输入错误密码自动关闭, 输入正确的密码给出提示。

2011-04-09

空空如也

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

TA关注的人

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