• [java] android.support 迁移到Androidx 2021-01-05 09:18:29

    今天移植了一个几年前的老的Android项目,之前是用了android.support类库, 今天在为新设备编译,有很多提示。 然后就尝试升级一下到androidx. 通过官方网站公告,我们知道: android.support包 修订版 28.0.0 正式版 (2018 年 9 月 21 日)该版本是支持库 28.0.0 的稳定版,适合在生产环境中使用。这将是 android.support 包下的最后一次功能发布,建议开发者迁移到 AndroidX。 也就是说这是最后一版了, 新用户,需要迁移到

  • [个人] 我们不要留下遗憾 2021-01-04 14:04:19

    第1个遗憾 没做自己想做的事第2个遗憾 没有实现梦想第3个遗憾 做过对不起良心的事第4个遗憾 被感情左右度过一生第5个遗憾 没有尽力帮助过别人第6个遗憾 过于相信自己第7个遗憾 没有妥善安置财产第8个遗憾 没有考虑过身后之事第9个遗憾 没有回故乡第10个遗憾 没有享受过美食第11个遗憾 大部分时间都用来工作第12个遗憾 没有去想去的地方旅行第13个遗憾 没有和想见的人见面第14个遗憾 没能谈一场永存记忆的恋爱第15个遗憾 一辈子都没有结婚第16个遗憾 没有生育孩子第17个遗憾 没有让孩子结婚第18个遗憾 没

  • [个人] 个人差旅注意事项和清单表 2020-12-29 16:18:33

    简介 年底了,又到了春运返乡,或者出差的高峰期。很多人,可能需要面临出差,或者返乡的情况。为了帮助更多朋友,我列一下我自己整理的,个人差旅注意事项和清单表, 希望能帮助到大家。 也有很多没出过远门的朋友,我想提醒大家,特别是女孩子,出门在外,一定要多保护自己。 有些社会经验,不是每个家长,或者老师,或者朋友都会一一给你培训和教育。 再者,就算他们唠叨,你也未必愿意听。 注意安全,保护自己,平安出行 清单   充电宝,充满电; 电源线1根 雨伞

  • [编程语言] Kotin 不错,但它只不过是C#的模仿者 2020-12-27 12:59:04

    简介 kotlin 是不是最近很火热,有Google爸爸的加持之下, 感觉Kotlin如日中天? 很抱歉, 其实从一个开发人员的眼界里来看, Kotlin其实真的没有那么牛逼,可能是有一点过誉了. 它本质上,还是在模仿C#, 而C# 甚至还有LINQ这样牛逼的特性 . 更不用说现在.net已经开源, 免费使用. C#还有自己独立的VM, kotlin还没有自己的运行时, 它还只能依附于JVM生态上吸血. 我个人其实觉得Jetbrains公司, 没有自己的VM, 而又不积极去推进JVM生态体系建设

  • [编程语言] Scala 3 新特性:自傲的上下文抽象 2020-12-26 19:53:45

    翻译Scala 3 新特性系列文章, 这一篇是讲Scala 3 的 上下文抽象, 官方用了Opinionated的这个词, 文面上意思:自以为是, 我觉得翻译为 自傲 更合适, 一方面,很骄傲别人没有, 我有, 另外一方面, 我比以前更强大了, 所以翻译成: 自傲的上下文抽象 Scala的一个基本的核心概念是(现在在某种程度上仍然是)为用户提供一小套强大的功能,这些功能可以组合成巨大的(有时甚至是不可预见的)表现力。例如, implicits(隐式转换) 这个特性已经被用来模拟上下文抽象、表达类型级计

  • [编程语言] Scala 3新特性:新的流程控制格式 2020-12-26 19:53:04

    Scala 3 新特性之一,是带来了新 的流程控制格式 详细的规则是。 if表达式的条件可以不加括号,如果后面是then。 while-loop的条件,如果后面是do,可以不加括号。 如果for表达式的枚举符后面跟有yield或do,则可以不加括号或括号来书写。 for表达式中的do表示for-loop。 一个 catch 后面可以在同一行中跟一个case。如果有多个case,这些case必须出现在大括号中(就像Scala 2中一样)或缩进块中。 看代码

  • [编程语言] Oracle 宣布GraalVM 支持COBOL 编程语言 2020-12-26 19:52:32

    GraalVM引入了对COBOL的支持,扩大了支持范围,一个运行时可以支持多种可互操作的语言。这就把可以在多个平台上运行的Java(语言)的范围扩展到了可以在多个平台上运行多种语言的Java(虚拟机)。 这项工作是Christoph Schobesberger在10月份通过他在JKU Linz大学的研究工作介绍的。该技术的工作原理是通过GraalVM与LLVM位码的集成。通过LLVM的路径不同于HotSpot实现对替代语言如Nashorn(Java 8中的JavaScript,后来被废弃)和JRuby(一

  • [编程语言] Ruby 3.0.0 正式发布,性能提升3倍多? 2020-12-26 19:51:50

    今天是圣诞节,Ruby开发团队宣布正式发布Ruby 3.0.0, 并贴了一张图,显示性能比前一代提升至少3倍以上 Ruby 3.0.0 核心的新特性如下: 性能: MJIT 并发:Ractor / Fiber Scheduler 类型: (静态分析 ) RBS / TypeProf 将长代码粘贴到IRB比捆绑在Ruby 2.7.0上的速度快53倍。例如,粘贴这段示例代码所需的时间从11.7秒缩短到0.22秒。 其他的详情,可以参考官方发布声明,欢迎大家下载体验新版Ruby

  • [WEB框架] Spring boot 把对象属性转换成Map 2020-12-26 19:51:13

    这篇文章,记录了如何在spring boot来开发业务的时候, 把一个Class对象的属性,提取出来,转换成一个Map备用。 数据格式转换,是一个非常有用的基本操作。比如用在构造一些方法的时候, 别人如果只支持Map,那你怎么办, 只能转换一下格式呀。   Spring boot是个大宝库,啥需求都能满足,今天就来看看Spring beans相关的能力。 我以一个小需求为例,带大家切入日常操作。 不会讲的很全面,但是掌握这一个例子之后,你可以发散思维,做更多的事情。   需

  • [电脑数码] Windows 10 文件名过长问题解决 2020-12-26 19:50:38

    今天学习spring boot 项目,想要git clone 到本地, 因为我本地是windows 10, 然后就报错了,提示文件名太长, file name too long。 网上找了一下怎么解决, 现在就把解决方法分享一下, 我们需要做的就是修改注册表 让windows10支持长文件名, 保存下面的代码为 ok.reg,然后双击执行, 并重启电脑生效 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\Cur

  • [电脑数码] RFC是什么,有什么用 2020-12-26 19:50:00

    在一些博客文章中,会提到 "这项技术在RFC xxxx中定义",或者 "具体细节见RFC yyyy"。 什么是RFC? RFC是Request for Comments的缩写。你现在可能在各种环境下都有RFC,但传统上我们所说的RFC在互联网上是指由工程师和计算机科学家编写的出版物,针对的是在互联网领域工作的其他专业人士。 RFC历史悠久,早在1969年ARPANET时代就开始了。互联网就是这样产生的,RFC是讨论的起点,或者是人们用来实现实际软件的协议实现细节。 Request for Comme

  • [Linux/Unix] tcp协议必知必会 2020-12-26 19:49:03

    TCP的意思是传输控制协议,它是网络和其他应用(如电子邮件)的基础。 TCP在1981年的RFC793中定义,是互联网最古老的支柱之一。 TCP位于互联网协议(IP)之上,构建了一个基础系统,HTTP、FTP、IMAP等应用级协议就是在这个基础上产生的。 TCP与IP和UDP相反,是面向连接的。 在通过TCP进行传输之前,必须建立一个连接。数据是以小包的形式发送的,当通信结束时,连接就会关闭。 当数据通过TCP传输的时候,必须发生一个比较复杂的工作流程,叫做握手。 在这里我就不详细介绍了,但是这

  • [个人] 如何编写更好的文档 2020-12-26 19:48:34

    好文档的秘诀就是在你写代码的时候就把它写出来。你是你的第一个听众。向自己解释你在做什么。未来的你会感谢你自己! 这里有三个具体步骤,你可以趁早写好文档。   1. 从准确的笔记开始 当你在代码中提出想法时,通过从准确的笔记开始,确保你不会很快忘记重要的细节。虽然你以后会想用长篇的形式向自己解释一些事情,但短篇的笔记就足以捕捉细节,而不会打断你的编码会话流程。 在你的代码旁边打开一个文档,写下你使用的命令、决定和来源等内容。这可以包括 你输入的终端命令 为什么您选择了一种特

  • [前端开发] Fable, 一款编译F#为JS代码的前端编译器 2020-12-26 19:47:46

    什么是Fable? Fable是一个可以让你用F#(一种函数式编程语言)编写JavaScript应用程序的解决方案。 什么是FSharp? F#(发音为f-sharp)是一种强类型的函数式编程语言,它提供了许多强大的功能来构建健壮的和可维护的代码,例如。 轻量级语法。F#语言非常容易上手,而且通常也很容易读懂别人的代码。 默认情况下是不可变的,但如果需要的话,也是可以变的,所以你可以与你的JavaScript代码库互操作,没有任何问题。 丰富的类型让你可以轻松地表示你的数据或你的领域

  • [编程语言] Flutter Mac初体验,跨平台开发应用很简单 2020-12-26 19:46:35

    简介 一直想写一些在Mac 下面,体验Flutter开发的文章,终于,来了老弟. Flutter是一个谷歌开发的跨平台开发框架,免费,开源.越来越多的公司,开发者用Flutter来构建他们的应用. 相比于SwiftUi, Objective-C, Flutter更容易学习,语法接近Java,Javascript. 学起来不怎么费力. Swift语言一代比一代新,一代坑多过一代,学不动了. Objective-C 历史坑太多了.要不然苹果也不会发明Swift来尝试替代Objective-C. 不过苹果努

  • [.NET] dotnet 跨平台构建应用 for linux 2020-12-26 19:45:37

    dotnet 可以跨平台构建应用, Windows可以为Mac, Linux构建可执行文件, 为部署,测试带来了很多便捷性。 本文就介绍给大家,如何快速的构建跨平台应用。   建立项目用Visual Studio Community,或者dotnet命令建就可以, 下面的命令是构建命令,一步到位、在.net core 3.1, .net 5下面测试通过   dotnet publish -c Release -r linux-x64 --self-contained tru

  • [编程语言] Windows 10玩转ipynb 2020-12-26 19:39:34

    本教程,讲解如何在windows 10下面使用jupyter 打开ipynb, 首先请安装Python 3.7. 接下来先装jupyter ,打开一个powershell命令行 pip install -U ipynb 下载你要查阅的ipynb文件,比如我的文件名为:personal.ipynb   然后在windows 文件管理器界面,选中这个ipynb文件,鼠标右键菜单,选择打开方式,选择浏览目录   C:\Users\netroby\AppData\Roa

  • [.NET] Asp.net 5.0 Area 模块使用教程 2020-12-26 19:38:47

    Asp.net 5.0 学习教程, Area 模块使用教程. 如果你是新学Asp.net的,那么直接学asp.net 5.0吧,今年刚出的最新的 asp.net框架, 以后也就不叫asp.net core了, 直接就asp.net. Area的概念是什么意思呢, 就是在一个很大型的项目里面, 传统的MVC模式,已经不足以定义各个模块,组件了.举个例子, 阿里巴巴旗下,有很多网站, 比如淘宝,支付宝, 天猫.   如果你的项目比较大了,那肯定不止一个或者几个Controller, Area

  • [.NET] Asp.net 5.0 MVC 把List传到View显示 2020-12-26 19:35:42

    需求 有个小功能需求点,我们要把一个表格数据, 即一个List,显示在Views 模板, 我们应该怎么传值,怎么显示 基础知识   我们知道Asp.Net的模板 数据容器是ViewData, 那么我们可以先把List 传给ViewData, 先看示例代码   我们先定义了一个List,然后赋值给ViewData数据容器   List<String> viewList = new List<String>();

  • [电脑数码] Mac 彻底删除Google chrome 的操作说明 2020-12-26 19:32:47

    据网上媒体报道,Google chrome 在mac 上面,可能会让系统变得缓慢,这个时候,你可能需要删除谷歌chrome,如果没有按照正确的姿势删除, 那么很遗憾,可能阴魂不散,继续拖慢系统. 下面就是删除chrome的完整流程 好的,这很奇怪,如何删除Chrome和Keystone? 转到/Applications文件夹,然后将Chrome拖到垃圾箱。   在Finder中,单击“转到”菜单(在屏幕顶部),然后单击“转到文件夹...&rdquo