分享一些有用的网站/网页(四)

某一天忽然冒出个想法:把曾经对我有过帮助的网站或网页记录一下。以博客的方式,相当于投票吧,增加其PR。 最直接的应该是点赞之类的。但这样做的前提是必须要有个账号。为了点赞去注册一个账号,不合适。所以另辟蹊径,想了这么一个办法。

说明:

  • 各类别按时间顺序添加,排名不分先后
  • 记录的是下次可能还要查的信息。那种查一下知道就行了的没有记录
  • 每篇分享10个

技术类(6)

  1. https://www.cnblogs.com/junhuawang/p/6952748.html
    如果在IDEA中运行JUnit时遇到类似这样的错误:java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing,那就添加对应jar包。
    具体步骤如下:菜单File->Project Structure->Module->Dependencies,从IDEA的安装目录\lib选择相关jar。
  2. https://juejin.im/entry/6844903788738772999
    Maven 测试(test)指定的类。
  3. https://www.cnblogs.com/wang1001/p/9768029.html
    Java生成随机数的工具类。
  4. https://www.cnblogs.com/bill89/p/11044928.html
    Oracle Job的实例与详解。
  5. https://www.cnblogs.com/jiading/articles/13193992.html
    Java printf 的用法。
  6. https://www.cnblogs.com/mengchunchen/p/9669704.html
    查看Linux系统的CPU等的使用情况使用 top 命令。

工具类(3)

  1. https://www.cnblogs.com/EasonJim/archive/2004/01/13/7867472.html
    IntelliJ IDEA 如何使 Properties 文件显示中文?
    File -> Settings -> Editor -> File Encodings,Properties Files,Transparent native-to-ascii conversion,打勾。
  2. http://791202.com/2020/03/12/intellij-idea/588/
    在 IntelliJ IDEA 中 commit 时会有 “Checking for line separator…”,如果想去掉,就看看这个。
    可能只有很卡时才会发现。
  3. https://www.123cha.com/ip/
    IP信息查询。

其他(1)

  1. http://www.dll-files.com
    Windows 系统缺dll时可以来这里看看。

[译文]设计模式06 – 单例模式(附代码实例)

原文网址:Singleton Pattern

意图

  • 确保一个类只存在一个实例,并供全局访问
  • 适时初始化,或者在第一次使用时初始化

问题

应用程序需要一个,并且只需要一个对象的实例。另外,延迟初始化和全局访问是必要的。

讨论

单例的职责有:创建、初始化,访问和执行。声明一个私有的、静态的成员变量;提供一个公共的、静态的方法来封装初始化代码,并访问该实例。

客户端可以随时调用这个静态方法来获取单例。

Continue Reading »

如果欺骗是为了爱,这两种爱有什么不同?

引子:看《请回答1988》,两段善意的谎言,引发的思考。

(一)

珍珠摔跤了,在医院里善宇问他妈妈情况怎么样,妈妈笑着说没事的,让他不要担心。可在病房外,善宇发现妈妈正对着大叔(一个同乡大哥,还没看完,不知道两人最终是否走到了一起)哭诉,说自己很担心,也责怪自己怎么那么没用连女儿也照顾不好。

善宇哭了,哭着对女朋友宝拉说“我知道讨厌叔叔的原因了”。之前,他一直不承认他讨厌叔叔。他说“是因为对不起死去的爸爸。他没有照顾好妈妈”。

(二)

正峰做手术,跟之前的大手术相比,这次真的是小手术,只是换个电池。正峰的爸爸很担心,弟弟正焕也担心。爸爸都担心的睡不着,而妈妈却说这只是一个小手术啊,有什么好担心的,说着就要去外面看电视了。爸爸还犯嘀咕:妈妈真是变坚强了,之前儿子做手术的时候,也是很担心很焦虑的。

可后来爸爸发现在医院的休息厅(看电视的地方),妈妈正对着儿子的主治医生哭诉,诉说着内心的焦虑和担心,也一再地向医生确认手术没什么风险吧。

妈妈对儿子撒谎,是为了不让他担心。
却对老伴(后面应该是一对吧)毫无保留,让他一起分担这份自责与担心。

妻子对丈夫撒谎,是不想给他增加负担。
却对一个陌生人表露真情实感,找到了一个宣泄的出口。

这里仿佛看到了三种爱:为其遮风挡雨的爱;互相扶持的爱;默默承受的爱。

以相同的关系来看,同样是伴侣,为什么一个选择倾诉,一个选择善意的谎言呢?

同样是夫妻/伴侣之间的爱,这两者有什么不同呢?

是感情的深厚不同吗?不尽然。

可能跟生活经历和性格有关吧。

善宇的妈妈,单身,很多事一直是自己扛。经过长时间的接触,对大哥有了一定的依赖,像是找到了主心骨,遇事就向他述说。

正峰的妈妈,平时在家做主惯了,大概是不想在丈夫和孩子面前表现脆弱的一面吧。

千人千面!

爱也分很多种吧,爱的方式也是因人而异。

同样以爱之名,做着不同的事表达着不同的情感。

爱,作为一个抽象名词,很难准确地定义和衡量。奇妙的是,当你遇上了或看到了,你知道这就是爱。

App推荐(一)

一来确实是推荐。

二来也是为了记录。以前满足过我需求的App,一段时间不用后,就想不起来是哪个了。又要重新去找重新去试。

1. Typora

Windows下好用且免费的Markdown工具。

以前用的时候没太注意。换电脑需要重新下载,再次点开官网(网站也挺漂亮),发现了很多隐藏技能,如文档结构,目录树,甚至还能画流程图等。

官方网站:https://www.typora.io/

2. 最美证件照

拍证件照,可以换背景换装等。iOS和Android都有,关键还免费。

3. 福昕阅读器

PDF阅读器,好用,还可编辑。暂时没用到其他功能,这两个就够了。

下载地址:www.foxitsoftware.cn

4. 坚果云

可在不同设备不同环境(家&公司)间都可查看和修改资料。刚开始用,挺不错的。同步贼快。

官网:https://www.jianguoyun.com

5. Sidekick

作为Chrome的替代被推荐的,据说不那么吃内存。但在Windows上比较了一下,没有明显的差别。Chromium内核。外观还是挺漂亮的。

下载地址:https://www.meetsidekick.com/download

读《定位》

有很多有意思或引人思考的观点,摘录如下:

是什么成就了领导者?当然是众多跟随者。领导者不应当将竞争者赶尽杀绝,而是需要它们共同创建一个品类。

 

不要和潜在顾客玩文字游戏。广告并非辩论,而是为了“诱惑”消费者。

 

如果你想点顺风12,就不能只说“顺风”。如果加上“12”,你不敢保证调酒师听到没有,同等重要的是,你会担心旁边坐的人没有听到。顺风12对原品牌顺风也毫无益处,它不断提醒喝顺风的人:他喝的是顺风系列里品质较差的酒。

注:品牌“顺风12”是“顺风”的高端版。

产品类广告,通常以画面为主导,突出视觉要素。服务类广告,通常以文字为主导,突出语言要素。

 

任何值得做的事情,即便做得很差也值得做。如果不值得做,那就根本不该去做。
反过来说,如果是一件值得做的事情,你想等到能够做得完美时再去做,迟迟不动手,就有失去机会的风险,永远都做不了。

 

人生的成功更多要依靠别人为你做些什么,而不是依靠你能为自己做些什么。

[译文]设计模式05 – 原型模式(附代码实例)

原文网址:Prototype Pattern

意图

  • 创建指定对象的原型实例,然后通过复制这个原型来创建更多的实例
  • 指派一个类的一个实例用于育种该类的未来所有的实例
  • new 操作是危险的

问题

应用程序在使用 new 操作时跟对象产生了“硬连接”(耦合)。

讨论

定义一个可供“克隆”的接口方法,维护一个包含所有“可克隆”的具体衍生类的“注册表”。每一个类都具有“多态性”:继承自基类或者接口,注册它的原型实例,实现了“克隆”方法。

作为客户端,不用再使用跟跟类名“硬连接”的 new 操作了,而是调基类的 clone 方法,通过字符串或者枚举值类型来指定具体的衍生类。

Continue Reading »

[译文]设计模式04 – 对象池模式(附代码实例)

原文网址:Object Pool Pattern

意图

对象池对性能有显著的提升。在以下场景中最有效:实例化过程复杂的对象;实例化频率高的对象;同一时刻用到的实例数量较少。

问题

对象池(也叫资源池)是用来管理对象缓存的。一个使用了对象池的客户端可以请求对象池中已经存在的实例,而不用自己创建。一般来说,这个对象池是可以自动增长的,当它是空的时候可以自己创建对象。或者我们可以限定对象池的大小。

将所有可重复使用的、当前未使用的对象放在同一个对象池中以保证其连贯性是有必要的。为了达到这个目的,对象池应该是单例的。

讨论

对象池允许其他程序从中获取对象,当用完后在放回池中,以便下次再用。

但是我们不会一直等着某个对象被释放,所以在必要的时候对象池可以创建新的对象,但一定要有定期清理未使用的对象的机制。

Continue Reading »

2020给女儿的寄语

亲爱的姑娘,

希望你知道,从你出生的那一刻开始,你就是爸妈最珍贵的礼物。

我们也是第一次为人父母,所以做的不好的稍稍体谅一下,我们一起努力做到更好。

你的聪明可爱叫人怜爱,而你的乖巧懂事叫人心疼。

感谢你成为我们的女儿。

爸爸妈妈永远爱你!永远支持你!

dear daughter 2020

字丑 情真

 


P.S. 这是学校要求家长写的,但也是真情实感。

后来想一想,“做一个爱笑的女孩”可以写三行,一个大大的“笑”字一行,好像更有设计感。

[译文]设计模式03 – 工厂方法模式(附代码实例)

原文网址:Factory Method Design Pattern

意图

  • 定义一个用来创建对象的接口,由其子类(实现类)决定哪个类应该被初始化。工厂方法把类的初始化过程延迟到子类里
  • 定义一个虚拟的构造器
  • new 是危险的操作

问题

一个框架需要对其架构模型有一套标准化的操作规范,但对一个单独的应用来说,可以定义不同的作用域对象及其初始化过程。

讨论

工厂方法模式是为了创建对象,就像模板方法模式是为了实现一种算法。接口定义了标准的创建对象的方法(用纯虚拟的标识——如abstract——来修饰创建步骤),然后委托子类去完成创建的具体步骤,并将子类提供给客户端调用。

工厂方法模式使得设计具有更多的可定制化空间,而只是多了一点点复杂性。其他设计模式需要新的类,而它只需要新的操作(方法)。

大家经常使用工厂方法模式作为创建对象的标准方式,但以下情况就没有必要用了:初始化过程不会再改变的类,或者初始化过程被放在很容易被子类覆盖的方法里(如构造函数)。

工厂模式方法和抽象工厂很相似,只是少了那一组相关或类似对象。

工厂模式通常是在基础框架中定义,然后由使用者去实现。

Continue Reading »

[译文]设计模式02 – 构造器模式(附代码实例)

原文网址:Builder Design Pattern

意图

  • 将一个复杂对象的创建和它可能的表现形式分开,以便于同一个创建过程可以创建不同的表现形式
  • 分析一套繁杂的表现形式(最终产品),完成其中一个

问题

一个应用需要创建一个有很多元素组成的复杂的集合体。该集合体的具体内容存储在辅助存储器内(如文件),但其中某一种展现形式需要在主存储器(内存)中构建。

讨论

将解析(读取和分析)已存储的数据(如RTF文件)的算法与构建并展示众多表现形式(如ASCII,TeX,文本组件)之一的算法分开。重点在于创建一个复杂的集合体。

“主管”在解析底层数据时调用“构建者”。“构建者”每次被调用都构建这个复杂对象的某一部分,并且掌控所有中间状态。构建完成后,客户端可以从“构建者”处获取。

对创建过程有了更好的控制。不像之前的“抽象工厂模式”一步构建(new)对象,“构造器模式”是在“主管”的控制下一步步地完成构建。

Continue Reading »