一周 Go World 新鲜事[Asta 优选]

01

Google正式发布 TensorFlow Lite预览版

日前,谷歌正式发布 TensorFlow Lite 开发者预览版,这是针对移动和嵌入式设备的轻量级解决方案。

TensorFlow 可以在许多平台上运行,从机架上大量的服务器到小型的物联网设备,但近几年,随着大家使用的机器学习模型呈指数级增长,因此需要将训练模型的平台扩展到移动和嵌入式设备上。TensorFlow Lite 支持设备上机器学习模型的低时延推理。

TensorFlow Lite 是一种全新的设计,它支持以下功能:

  • 轻量级(Lightweight):支持机器学习模型的推理在较小二进制数下进行,能快速初始化/启动。

  • 跨平台(Cross-platform):可以在许多不同的平台上运行,现在支持 Android 和 iOS

  • 快速(Fast):针对移动设备进行了优化,包括大大减少了模型加载时间、支持硬件加速。


在公众号中回复(非评论)关键词“ lite ”即可阅读全文

02

Golang 标准包布局[译]

在Go社区中, 包管理和泛型看上去被当做一个很大的问题, 但有另一个很少被提及的问题——项目结构。每一个Go程序都看似对这个问题有自己的答案, 那我应该如何组织我的Go代码? 有些人把所有代码放到一个包中, 有些人用类型或者模块归组代码。如果你们的团队没有使用一个好的策略, 你会发现代码混乱分散在不同的包中。 所以我们需要一个更加标准的Go程序设计。

作者提倡一种更好的方法. 通过以下的几种简单的规则, 我们解耦我们的代码, 并便于测试, 同时给我们的项目带来一种始终如一的结构。

常见但有瑕疵的方式:

  1. 整块的包布局

  2. Rails 风格

  3. 根据模块归组

作者提出了一种更好的方式,包含四个信条:

  1. Root package is for domain types (根包作为领域类型)

  2. Group subpackages by dependency (根据依赖将子包归组)

  3. Use a shared mock subpackage (使用共享的模拟子包)

  4. Main package ties together dependencies (main包将所有依赖关联起来)

这些规则有助于我们的包解耦, 它定义了一个清晰的领域语言。 


在公众号中回复(非评论)关键词“ 包布局 ”即可阅读全文

03

高效的多维空间点索引算法

在对空间距离进行计算的时候,常见的做法是对地图进行分块。现在用的比较多的数据库 MySQL、PostgreSQL 都原生支持 B+ 树。这种数据结构能高效的查询。地图分块的过程其实就是一种添加索引的过程,如果能想到一个办法,把地图上的点添加一个合适的索引,并且能够排序,那么就可以利用类似二分查找的方法进行快速查询。

问题就来了,地图上的点是二维的,有经度和纬度,这如何索引呢?如果只针对其中的一个维度,经度或者纬度进行搜索,那搜出来一遍以后还要进行二次搜索。那要是更高维度呢?三维。可能有人会说可以设置维度的优先级,比如拼接一个联合键,那在三维空间中,x,y,z 谁的优先级高呢?设置优先级好像并不是很合理。

本篇文章就来介绍2种比较通用的空间点索引算法。


在公众号中回复(非评论)关键词“ 空间点 ”即可阅读全文

04

golang interface深度解析

如果说 gorountine 和 channel 是支撑起 Go 语言的并发模型的基石,那么接口是Go语言整个类型系列的基石,让 Go 语言在基础编程哲学的探索上达到前所未有的高度。Go 语言在编程哲学上是变革派,而不是改良派。这不是因为 Go 语言有 gorountine 和 channel ,而更重要的是因为 Go 语言的类型系统,更是因为 Go 语言的接口。Go 语言的编程哲学因为有接口而趋于完美。C++、Java 使用"侵入式"接口,主要表现在实现类需要明确声明自己实现了某个接口。这种强制性的接口继承方式是面向对象编程思想发展过程中一个遭受相当多质疑的特性。Go 语言采用的是“非侵入式接口", Go 语言的接口有其独到之处:只要类型T的公开方法完全满足接口I的要求,就可以把类型T的对象用在需要接口I的地方,所谓类型T的公开方法完全满足接口I的要求,也即是类型T实现了接口I所规定的一组成员。这种做法的学名叫做 Structural Typing,有人也把它看作是一种静态的 Duck Typing。


在公众号中回复(非评论)关键词“ 接口 ”即可阅读全文

05

理解 Docker 的多阶段镜像构建

Docker 技术从2013年诞生到目前已经4年有余了。对于已经接纳和使用 Docker 在日常开发工作中的开发者而言,构建 Docker 镜像已经是家常便饭。但这是否意味着 Docker 的 image 构建机制已经相对完美了呢?不是的,Docker 官方依旧在持续优化镜像构建机制。这不,从今年发布的 Docker 17.05 版本起,Docker 开始支持容器镜像的多阶段构建 (multi-stage build) 了。


在公众号中回复(非评论)关键词“multi stage”即可阅读全文

06

Golang的HTTP操作大全

Golang提供了官方的http包,对于http操作非常的方便和简洁。
但是不同于PHP,使用Golang的包来做http操作,还是没有那么”直接“,需要实例化一下这个,实例化一下那个,有点像Java,因此,为了以后书写方便,就把基本的请求写在此。下次用的时候,直接copy就好了。


在公众号中回复(非评论)关键词“ http ”即可阅读全文

本周开源

Golang 机器学习库

在公众号中回复(非评论)关键词“ 机器学习库 ”即可阅读全文

非常实用的HTTP请求库

在公众号中回复(非评论)关键词“ 请求库 ”即可阅读全文


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值