深圳幻海软件技术有限公司 欢迎您!

  • Android 中的 R8详解

    Google发布了R8来作为Proguard的替代品,用以帮助开发人员通过生成更好的输出(APK)来缩减代码。与Proguard相比,R8被认为要比Proguard要快得多。1、什么是R8?R8是一个将我们的java字节码转换为优化的dex码的工具。它遍历整个应用程序,然后对其进行优化,例如删除未使

  • 每日算法4:计算字符串中的字节数;正则匹配;代码实现outerHTML

    匹配输入的字符:以字母或_开头,后面由数字字母_组成长度为5-20的字符串varreg=/^[a-bA-B_][a-bA-B0-9_]{4,19}/varname1='abb'console.log(reg.test(name1)题目描述:js求字符串字节长度方法描述:汉字字节为2,其他为1一个英文

  • 抖音 Android 包体积优化探索:基于 ReDex 的 DEX 优化落地实践

    作者|冯瑞;廖斌斌;刘丰恺前言应用安装包的体积会显著影响应用的下载速度和安装速度,按照Google的经验数据,包体积每增加1M会造成0.17%的新增折损。抖音的一些实验也证明了包体积会显著影响下载激活的转化率。Android的安装包是APK格式的,在抖音的安装包中DEX的体积占比达到了40%以上,所

  • JVM诊断工具中的深堆、浅堆、支配树,你都明白吗

    概述大家在用jvm诊断工具,比如EclipseMAT或者Jprofiler分析堆内存的时候,都会看到一些概念或者关键词,如ShallowHeap,RetainedHeap,DominatorTree等,你们知道他们是干嘛的吗?EclipseMAT相关截图:jprofile相关截图:虽然上面两个工具有

  • 大嫂说,有你靠的(Unicode)

    哈喽,大家好,我是指北君。最近看《狂飙》了吧,大嫂气场十足!飒爽!Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。简

  • 似乎你总也记不住,byte取值范围是 -127~128 还是 -128~127

    一、前言介绍无论在面试过程中还是平时的技术交流中,似乎有很多小伙伴始终记不住java中byte类型的取值范围是多少。究其原因大部分程序员对这个取值范围是不在意的,因为知道与不知道都不影响你完成工作。另外这种知识点压根不是让你死记硬背的,当然如果你是从其他文科专业转过来学编程开发的,还情有可原。但对一

  • 小程序不让用 JS 解释器?那我再杠一次鹅厂

    前言6月23号的时候,微信团队发了如下通知将禁止小程序使用JavaScript解释来动态更新代码。消息一出,小程序开发者们哀嚎哀嚎遍野,更有人声称要开始加班改代码了。自2018年1月,我写下 「brambles:微信小程序也要强行热更代码」 (https://zhuanlan.z

  • 应该知道的RPC内核细节(值得收藏)!!!

    ​微服务分层架构,之前聊得很多了,微服务离不开RPC框架,RPC框架的原理、实践及细节,今天和大家聊一聊。文章较长,1万字左右,建议提前收藏。​服务化有什么好处?服务化的一个好处就是,不限定服务的提供方使用什么技术选型,能够实现大公司跨团队的技术解耦,如下图所示:服务A:欧洲团队维护,技术背景是Ja

  • 一篇文章解密 Arthas 实现原理

    前言在之前文章中介绍了Arthas应用诊断利器--入门和常用骚操作,想必大家同我一样对Arthas这么强大的功能所折服(如何做到无需重启attach到JVM、又如何实现各种监听和统计等功能),今天我们就来对Arthash的实现进行解密。提前透露下今天重要的角色:Instrument、ASM。Inst

  • JDK9为何要将String的底层实现由char[]改成了byte[]?

    如果你不是Java8的钉子户,你应该早就发现了:String类的源码已经由char[]优化为了byte[]来存储字符串内容,为什么要这样做呢?开门见山地说,从char[]到byte[],最主要的目的是为了节省字符串占用的内存。内存占用减少带来的另外一个好处,就是GC次数也会减少。一、为什么要优化St

  • 自动化测试:Python常见的几种编程模式

    本章节给大家更新一下“Python语法规范与数据类型”相关内容,主要是为了让大家了解Python有什么类型的编程模式,掌握Python的基本语法,清楚怎么输出及命令行参数的基本应用,对Python的数据类型了解后,以便做更多的相关操作。常见的编程模式①Python交互式命令编程。②Python脚本编

  • 字节28岁程序员传猝死,其妻怀孕两个月:我的小伟永远离开我了

    昨晚,网友最先爆料,字节28岁员工因工作猝死,留下了怀孕2个月的妻子,还有未还尽的房贷。不出所料,#字节28岁员工猝死#登上微博热搜,引起许多网友的关注和思考。不过,事情也有些了变化,字节辟谣仍在医院抢救中。28岁员工猝死2月22日,一位字节跳动员工从健身房被救护车拉走。一时间,脉脉平台字节同事圈,

  • 字节流、InputStream类、OutputStream类、标准输入System.in和标准输出System.out

    大家好,我是Java进阶者。前言在很多的应用程序中需要实现与设备之间的数据传输,例如通过键盘输入。输出的设备例如显示器,在不同的输入和输出设备中数据传输抽象表示“流”,程序通过流的方式的输出和输入设备进行数据传输。本文主要学习Java的字节流,接下来小编带大家一起来学习!一、字节流1.什么是字节流在

  • 文件字节流FileInputStrea和FileOutputStream

    大家好,我是Java进阶者。前言我们知道计算机的数据基本是存储在硬盘文件当中,操作文件的数据是常用的操作例如读取数据和写入数据。接下来小编带大家一起来学习!一、文件字节流FileInputStream1.FileInputStream是InputStream的子类,FileInputStram是操作

  • 谈微服务架构,你必知的RPC细节

    服务化有什么好处?服务化的一个好处就是,不限定服务的提供方使用什么技术选型,能够实现大公司跨团队的技术解耦,如下图所示:  服务A:欧洲团队维护,技术背景是Java服务B:美洲团队维护,用C++实现服务C:中国团队维护,技术栈是go服务的上游调用方,按照接口、协议即可完成对远端服

  • 面试官:谈谈你对SpringAOP的了解?请加上这些内容,绝对加分!

     引言众所周知,一旦提到AOP,相信大家都是条件反射的想到JDK代理和CGLib代理,没错,这两个代理都是在运行时内存中临时生成代理类,故而又称作运行时增强——动态代理。世间万物都不是绝对的,既然有动态代理,那么,是否有想过:是不是存在静态代理呢?LTW(LoadTimeWeaving)其

  • 为什么给Java代码加个空行,class文件就翻脸不认人了?

       复制public class HelloWorld {         public static void ma

  • 为什么给Java代码加个空行,class文件就翻脸不认人了?

    为了写出这几行优美的代码,主要是为了让它输出优美动听的乐符,我下了一番功夫。你不要觉得简单,我把它打印出来给普通的保洁阿姨去看,阿姨竟然连xjjdog都认不出来。别说代码了,中英文混血,就秒杀一大堆高干分子。复制public class HelloWorld {&nbs

  • 一图看懂腾讯、阿里、字节跳动工作的区别

    互联网人爱相互跳槽,腾讯和阿里一直相互流动,近两年势头强劲的字节跳动也成为跳槽热门去向,那么在这三家公司工作有什么区别呢?一起来看下文。No.1.旗舰产品No.2.擅长领域腾讯:是社交领域的霸主;阿里:是电商界的巨头;字节跳动:是内容领域的王者。No.3.公司特色腾讯:产品文化,小马哥是产品出身;阿

  • Java程序计数器刨根问底,大部分程序员都收藏起来了

     JAVA虚拟机管理的内存区域图 1.什么是程序计数器?程序计数器是当前线程正在执行的字节码的地址。程序计数器是线程隔离的,每一个线程在工作的时候都有一个独立的计数器。2.字节码的执行原理编译后的字节码在没有经过JIT(实时编译器)编译前,是通过字节码解释器进行解释执行。其执行原

推荐阅读