厚脸皮:从入门到实践
本文是我克服社交恐惧的一些个人经验,希望能给读这篇文章的你带来些帮助。
我所指的厚脸皮是在真诚与尊重他人的基础上,能勇敢地做自己,拥有被讨厌的勇气。让别人感到不舒服的行为,不叫厚脸皮,叫冒犯。
心法一:别人没有那么在意你
又名:每个人的中心都是自己
本文是我克服社交恐惧的一些个人经验,希望能给读这篇文章的你带来些帮助。
我所指的厚脸皮是在真诚与尊重他人的基础上,能勇敢地做自己,拥有被讨厌的勇气。让别人感到不舒服的行为,不叫厚脸皮,叫冒犯。
又名:每个人的中心都是自己
很早就想写写关于「阿德勒」的一些东西了,前些天交了心理作业,所谓的契机就这么来了。我是从《被讨厌的勇气》一书知晓阿德勒的,对话体,作者是「岸见一郎」与「古贺史健」。可以说,是阿德勒赋予了我新生。
你永远想象不到代码能被重构成什么样子,重构之路充满了惊喜。——我自己
如果不信,请直接跳转到文末。
这本是我交给社团新人的一个重构任务,但后面自己手痒,在他的基础上,又重构了几版。个人自大一波,认为从本次重构中领悟了很多东西,希望也能给读者带来些帮助。本文是基于 Go 语言的,但是在解释思想时,绝大部分内容不涉及特定语法,适合所有开发者阅读。在此感谢 Atom 、Eson 与我进行的讨论、提供的建议,给我带来了非常大的帮助与启发(尤其是代码直观性方面的保持,不要为了重构而重构)。也感谢 Dolt 的初次重构。
先来个例子,简单了解一下面向过程和面向对象的区别。
有一天你想吃鱼香肉丝了,怎么办呢?你有两个选择:
1、自己买材料,肉,鱼香肉丝调料,蒜苔,胡萝卜等等然后切菜切肉,开炒,盛到盘子里。
2、去饭店,张开嘴:老板!来一份鱼香肉丝!
看出来区别了吗?1是面向过程,2是面向对象。
最近在做一些群内的人员管理工作,经常要下发表格,筛选出没提交的人。 众所周知,懒是第一生产力,于是开发了一个可以根据人员信息表与实际提交信息,直接计算出未提交名单的工具。
目前只做了桌面命令行极简版。仓库地址:aFlyBird0/submit_tools: 看看谁还没提交!!!
先考虑最简单的情况:如果所有人的信息,仅提供姓名。
那么只要先维护一个姓名列表,然后使用某种途径获取已经提交了人的列表。遍历姓名列表,一个个看该姓名是否出现在了提交列表中即可。
稍微复杂一些:提交列表不一定是规整的数组,可能来源于网页表格;也可能来源于QQ的投票统计,是OCR的结果。即,拥有许多杂乱的内容。这时候可以退而求其次,把提交信息统一转化成一个多行字符串,将列表的对应查询变成了 strings.Contains()
操作。