后端

IntelliJ IDEA中的神仙插件 写代码必备

IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著

代码坏味道:不合理命名与重复代码

一. 命名 1.1 命名是否具有业务含义 (1) 命名不精准,用词宽泛,不能有效反应代码含义 从沟通的角度看,这就不是一个有效的沟通。要想理解它,需要消耗大量的认知成本,时间和精力,同样也增加了后来人包括我们自己维护代码的成本。 其中,Info、data、flag、process、handler、build、maintain、manager、modify等,都是属于典型的过于宽泛的名字,当这些名字

搞懂 Kubernetes 网络模型

Kubernetes 是为运行分布式集群而建立的,分布式系统的本质使得网络成为 Kubernetes 的核心和必要组成部分,了解 Kubernetes 网络模型可以使你能够正确运行、监控和排查应用程序故障。 网络所涉及的内容很多,拥有许多成熟的技术。对于不熟悉的人来说可能会非常痛苦,因为大多数人对网络都有先入为主的观念,并且有很多新旧概念需要理解并组合成一个连贯的整体。所说的网络可能包括网络命名空

闭包的初了解

1.什么是闭包? 内部函数能够返回外部函数的作用域(当内部函数返回时,它会携带一个背包,背包中是函数声明时作用域内的所有变量) 我们可以用以下代码来表述以下: function makeFunc() { var name = "Mozilla" function displayName() { alert(name); } return displa

Java多线程 - 线程通信

1. 通信方式 要想实现多个线程之间的协同,如:线程执行先后顺序、获取某个线程执行的结果等等。涉及到线程之间相互通信,分为下面四类: 文件共享 网络共享 共享变量 jdk提供的线程协调API 细分为: suspend/resume、wait/notify、park/unpark (1) 文件共享 文件共享 (2) 网络共享 网络资源的共享,此处略 (3) 变量共享 变量共

《立方根》的设计

立方根的学习方法和平方根的学习方法相同,都是根据实际需要求哪个数的平方(立方)等于a。所以整体教学环节类似。 环节一:实际问题数学化、符号化。 环节二:借助乘方(立方)的运算,求出这个数,初步感受互逆运算。 环节三:归纳平方根、立方根的概念、符号语言。 环节四:根据概念求一个数的平方根(立方根)(这里是可以用有理数表示的平方根或立方根),归纳平方根、立方根的性质。 环节五:引入根号表示不能用有理数

快速搭建一个网关服务,动态路由、鉴权的流程

插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 坚持不懈,越努力越幸运,大家一起学习鸭~~~ 前言 本文记录一下我是如何使用Gateway搭建网关服务及实现动态路由的,帮助大家学习如何快速搭建一个网关服务,了解路由相关配置,鉴权的流程及业务处理,有兴趣的一定看到最后,非常适合没接触过网关服务的同学当作入门教程。 搭建服务 框架 Spri

学习《框架思维》第一天

      今天开始学习《框架思维》一书,框架意味着规律,应用框架思维解决问题,也就是应用套路解决对应的问题。《框架思维》告诉我们解决问题需要五个步骤,分别是界定问题,构建框架,明晰关键,高效执行,检查调整。今天学习界定问题。       界定问题也就是找到问题的真正所在,而不是贸然去解决,解决问题的框架就是发现问题,分析问题,解决问题。但界定问题是解决问题的第一步,一般可以按以下方法去做。  

HashMap扩容机制

介绍一下几个名词: 容量:capacity ,默认16。 加载因子:loadFactor,默认是0.75 阈值:threshold,默认12。threshold=capacitytloadFactor;当元素个数超过阈值时,就会触发扩容。 什么时候需要扩容: HashMap数组中元素个数超过阈值,即触发扩容。 例如:默认情况下,容量16,加载因子0.75,阈值12,当HashMap中的元素个数超

抖音 Android 性能优化—Java OOM 优化之 NativeBitmap 方案

一、背景和目标 背景 作为 Android 开发者,相信大家都碰到过 Java OOM 问题,导致 OOM 的原因可能是应用存在内存泄漏,也可能是因为手机的 heapsize 比较小不能满足复杂应用对内存资源的大量需求。对于 Java 内存泄漏治理,业界已经有比较成熟的方案,这里不做介绍,本文主要针对第二点尝试进行分析和优化。 举个例子:我们在监控平台查看稳定性数据,发现 heapsize=256