徐小夕 徐小夕
4年前
10分钟教你手写8个常用的自定义hooks
前言Hook是React16.8的新增特性。它可以让你在不编写class的情况下使用state以及其他的React特性。本文是一篇以实战为主的文章,主要讲解实际项目中如何使用hooks以及一些最佳实践,不会一步步再介绍一遍reacthooks的由来和基本使用,因为写hooks的文章很多,而且官网对于reacthooks的介绍也很详细
Easter79 Easter79
3年前
supersocket client 的简单使用方法
由于需要在服务端和客户端持续通信,于是在网上找了好久的socket通信工具。刚开始想直接用.net自带的socket通信,后来担心不够稳定健壮,毕竟自己不专业。找来找去觉得supersocket还可以,但是说实话,他们的帮助文档写的真是太烂了,使用也不够简单易懂,折腾了一阵大致明白如何使用。1,在nuget上引用supersocket.clienteng
放学路上 放学路上
3年前
git常见合并冲突场景以及解决办法
git很好用,但是遇到合并冲突就会很痛苦!在此之前我一直都是个人开发者,因此对git的使用也不熟悉,本文将持续总结我在使用git合并过程中遇到的冲突的场景以及产生冲突后的解决办法。如果有不足的的地方还请各位大佬指正!一、第一种情况1、场景描述:当两人都拉取了同一个分支的代码,然后两人都对代码进行了修改,假设其中一人把他修改完的代码上传到master分支,这时
Stella981 Stella981
3年前
Redis 总结精讲
本文围绕以下几点进行阐述1、为什么使用redis2、使用redis有什么缺点3、单线程的redis为什么这么快4、redis的数据类型,以及每种数据类型的使用场景5、redis的过期策略以及内存淘汰机制6、redis和数据库双写一致性问题7、如何应对缓存穿透和缓存雪崩问题8、如何解决redis的并发竞争问题
Stella981 Stella981
3年前
ReentrantReadWriteLock(读写锁)
ReentrantReadWriteLock是JDK5中提供的读写分离锁。读写分离锁可以有效的帮助减少锁的竞争,以此来提升系统的性能。用锁分离的机制来提升性能也非常好理解,比如线程A,B,C进行写操作,D,E,F进行读操作,如果使用ReentrantLock或者synchronized关键字,这些线程都是串行执行的,即每次都只有一个线程做操作。但是当D进行读
Easter79 Easter79
3年前
Tomcat 源码分析一 :快速搭建 Debug 环境
最近不是特别忙,空闲之余就开始倒腾Tomcat源码了,之前也陆陆续续看过一点,翻过《Howtomcatworks》这本书。这次想趁着有时间,系统性的好好分析下Tomcat的源码。分析源码的第一步自己是先搭建debug环境,我之前选择的是先下载Tomcat源码,然后通过Tomcat文档里面写的方法,使用ant构建,发现中间需要用很长的时间,中间经常提
Stella981 Stella981
3年前
Android模块化初体验及教程(二)
上一章初级体验了一下模块化,但是还是有很多需要优化和改进的地方思考点:怎么单独运行某一个子模块,不影响到其他模块之间的依赖?子模块需要Application,难道要每个模块写一个?因为是同一个服务器,所以网络请求库,怎么跨模块间公用?模块间怎么通信?解决将项
小万哥 小万哥
1年前
Kotlin 面向对象编程 (OOP) 基础:类、对象与继承详解
面向对象编程(OOP)是一种编程范式,它通过创建包含数据和方法的对象来组织代码。相较于过程式编程,OOP提供了更快更清晰的结构,有助于遵守DRY(Don&39;tRepeatYourself)原则,使代码更易于维护和扩展。在Kotlin中,类和对象是OOP的核心。类作为对象的模板,定义了对象的行为和状态;对象则是类的具体实例。例如,Car类可以定义汽车的品牌、型号等属性,以及如驾驶和刹车等功能。通过构造函数可以快速初始化对象的属性。此外,Kotlin支持继承机制,子类可以从父类继承属性和方法,促进代码重用。
陈杨 陈杨
3个月前
鸿蒙5开发宝藏案例分享---分析帧率问题
鸿蒙性能优化宝藏:帧率问题实战案例解析​​嘿,各位鸿蒙开发者!​​今天分享一个开发中的大发现——鸿蒙官方文档里藏着一堆超实用的性能优化案例!这些案例不仅解决了常见的丢帧卡顿问题,还附带了详细的分析思路和代码改造方案。我整理了几个高频场景,结合代码讲解,帮你
布局王 布局王
3个月前
Uniapp开发鸿蒙应用教程之选项式api和组合式api
大家好,前两天讲了Uniapp开发鸿蒙应用时的基础布局和自定义导航栏,都是仅限于页面上的开发。今天我们尝试进行一些数据上的操作,借此分享一下选项式API和组合式API的内容。我们初始化的首页项目代码,它的脚本代码部分通常是这样的:exportdefault