Easter79 Easter79
4年前
swift闭包表达式和尾随闭包
我们从一个Swift函数说起。并以此为例子。Swift的标准库提供了一个叫做sorted(by:)的方法,会根据你提供的排序闭包将已知类型的数组的值进行排序。一旦它排序完成,sorted(by:)方法会返回与原数组类型大小完全相同的一个新数组,该数组的元素是已排序好的。原始数组不会被sorted(by:)方法修改。我们以soted方法为例子
Android开发你必须了解的几个原理
随着互联网的迅速发展,Android技术也是发生很大的变化,要求也是越来高了,在11,12年只要会基本的Android组件,会listview,分享就感觉很牛了,智能手机的发展,及用户普通追求高效率,用户体验的提升,要求开发人员必须会懂实现原理及优化APP程序;不管是面试他人还是被面试目前都经常问到原理性的问题,handler实现原理,activity启动原
Wesley13 Wesley13
4年前
Java8中的简易并发
我们在《实战Java高并发程序设计》一书中,专门介绍过java8中对并发的改进。这里我通过转载一篇博客来说简单介绍下。有人曾经说过(很抱歉,我们找不到原句了):初级程序员认为并发很难。中级程序员认为并发很简单。高级程序员认为并发很难。这说的很对。但是从好的方面来看,Java8为我们带来了转机,通过lamb
Wesley13 Wesley13
4年前
Java对IPv6的支持详解:支持情况、相关API、演示代码等
本文由朱益盛、杨晖、傅啸分享,来自IBMDeveloper社区,原题“使用Java开发兼容IPv6的网络应用程序”,本次收录时有改动。1、引言前几天,有个群友跟我讨论用MobileIMSDK 写的IM服务端想支持IPv6的问题。因为众所周之的原因,IPv4早就不够用,现在国内从国家层面都在大力推广IPv6的普及,所以包括事业单位
Stella981 Stella981
4年前
EMAS 移动 DevOps 解决方案 —— Mobile DevOps
简介:DevOps这一优秀的软件交付理念在服务端已经有很多相关的实践,那么是否也可以应用到移动端进行交付呢?基于移动端和服务端场景的差异,移动DevOps跟服务端DevOps又有哪些不同和挑战?本文分享阿里云云原生应用研发平台EMAS在建设云原生MobileDevOps过程中的思考、遇到的挑战以及解法,解密其设计架构和技术细节。阿里云云原
Stella981 Stella981
4年前
CopyOnWrite容器
CopyOnWrite容器即写时复制的容器。通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个新的容器,然后新的容器里添加元素,添加完元素之后,再将原容器的引用指向新的容器。这样做的好处是我们可以对CopyOnWrite容器进行并发的读,而不需要加锁,因为当前容器不会添加任何元素。所以CopyOnWri
Stella981 Stella981
4年前
Python 的可变类型与不可变类型(即为什么函数默认参数要用元组而非列表)
Python的内建标准类型有一种分类标准是分为可变类型与不可变类型:可变类型:列表、字典不可变类型:数字、字符串、元组因为变量保存的实际都是对象的引用,所以在给一个不可变类型(比如int)的变量a赋新值的时候,你实际上是在内存中新建了一个对象,并将a指向这个新的对象,然后将原对象的引用计数–1.比如下面的示例:
Stella981 Stella981
4年前
Html5 Canvas画线有毛边解决方法
Html5Canvas所有的画线指令画出来的线条都有毛边(比如lineTo,arcTo,strokeRect),这是因为在Canvas中整数坐标值对应的位置恰巧是屏幕象素点中间的夹缝,那么当按这样的坐标进行线条渲染时所要用到的就是夹缝两边的象素点,这样即便设置了lineWidth为1也将看到两个象素效果的线条,解决方法原象素点0.5进行偏移。下
Wesley13 Wesley13
4年前
C#中如何串行执行所有线程
为建立中文知识库加块砖        ——中科大胡不归0\.前言第一次在技术群提出这个问题,大佬们一脸懵逼,既然你要串行执行,为什么不单线程。其实就是由于很多场景需要封装的业务逻辑,并依赖线程,比如顺序写日志文件。当然这是我现阶段粗浅水平所能想到的实现方法,希望以后能接触到更广大的世界,能嘲笑今天的自己。1\.实现原
京东云开发者 京东云开发者
1个月前
Joycode 无法跨项目读取源码怎么办?MCP Easy Code Reader 帮你解决!
本篇文章主要介绍MCPServerEasyCodeReader,它可以帮助你在使用Joycode编写代码时,根据调用链路将多个项目或Jar包中相关的代码读取到上下文中,供CodeAgent帮我们分析逻辑和编写代码,而无需再手动将源码复制到对话框中发送给AI