乱码三千 – 分享实用IT技术

乱码三千 – 码出一个新世界


  • 首页

  • 归档

  • 搜索

大脑开发之右脑开发

发表于 2019-11-26

前言

工欲善其事必先利其器,大脑是我们每个人最为珍贵的宝藏,它的潜能是无穷无尽的,强大到令人可怕,

但是普通人对于大脑的了解和使用是即为匮乏的 作为一名现代人 如果你想跑得比别人快 站得比别人高 那么就必须学会如何开发我们的大脑, 让大脑更好的为我们服务

左脑和右脑分工

左右脑检测

如果你看见这个跳舞女孩是顺时针转,说明你用的是右脑;

如果是逆时针转,说明你用的左脑。

耶鲁大学耗时5年的研究成果。据说,14%的美国人可以两个方向都能看见。顺时针转的话,属於是用右脑较多的类型。逆时针转属於使用左脑较多的类型。大部分人的眼里里是逆时针方向转动,但也有人看来是顺时针方向转动的。

为什么要开发右脑

  • 左脑刺激机会相对比右脑多 大部分人左脑发达

人类左脑主管语言、逻辑、书写及右侧肢体运动,而右脑主管色彩、空间感、节奏和左侧肢体运动。在频繁使用语言的过程中,特别是国内的应试教育,侧重偏向于逻辑、记忆为主,人的左脑得到更多刺激,使左脑相对发达于右脑

  • 右脑的存储量是左脑的100万倍 反应时间要快于左脑
  • 右脑记忆更容易转化为长期记忆 极大缩短知识的记忆时间

右脑记忆的主要方式

  • 图像记忆
  • 声音记忆
  • 感觉记忆

如何训练和开发

  • 养成将知识转成图像 声音或者感觉的形式进行记忆的习惯
  • 养成听音频的习惯
  • 养成画图的习惯
  • 养成闭目空间想象回忆的习惯

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

右脑记忆法之图像记忆

发表于 2019-11-26

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

右脑记忆法之联想记忆

发表于 2019-11-26

严格来说 联想记忆不属于单独的右脑记忆法,由于在联想的过程中,涉及到图像 声音甚至是感觉,

因此 联想记忆更像是一种记忆检测和整理的手段 通过画思维图并且利用联想的手段联想出脑袋中所有的知识 这些知识的载体多种多样 有可能是一幅幅图像 也有可能是一段声音,或者是一阵刺骨的疼痛

联想有检测右脑知识的功能 当然他也有记忆的功能, 通过联想手段记忆知识的特点是:

用已知的知识去联想新的知识,或者说将新知识关联到熟悉的知识上

这也是为什么懂得越多,学得越快

联想记忆重要分为两大种

  1. 相似联想
  2. 对比联想

相似联想

新事物和脑海中已知事物(图像 声音等等)相似或者接近,类似举一反三

对比联想

新事物和脑海中已知事物刚好是两个极端,例如水和火

总结

联想记忆有

  • 总结复习和检测右脑知识的功能

  • 快速记忆新知识的功能 (将信息联想于已知事物,可能是相似也可能是对比)

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

Android面试题之Activity和Fragment生命周期 一次性记忆

发表于 2019-11-26

每当我们换工作面试之前,总是会不由自主的刷起面试题,大部分题我们反反复复不知道刷了多少遍,但是今天记住了,等下一次面试的时候又刷着相同的面试题,我就想问在座的各位,Activity的生命周期,你们到底刷过多少遍 [哭笑] 作为一名程序员 把时间浪费在重复性劳动上是极其不能忍受的 因此 为了让自己省去不必要的脑力开销 我给自己总结了一份面试相关的记忆技巧,在这里分享给大家 记忆不是目的 把知识变成自己的才最关键

前提

需要熟悉Activity的生命周期 通过Activity的周期去对比理解和记忆Fragment生命周期

Activity的生命周期

假设你已经非常熟悉Activity的生命周期了,那么接下来咱们看Fragment的生命周期图

Fragment的生命周期

找出他和Activity的相同之处

这部分完全和Activity一模一样 可以不用记忆它,咱们来看不同的地方

其实这部分才是人们最容易搞混和记不住的地方 那咱们来分析一下:

Fragment比Activity多了几个生命周期的回调方法

  • onAttach(Activity) 当Fragment与Activity发生关联的时候调用
  • onCreateView(LayoutInflater, ViewGroup, Bundle) 创建该F
  • onActivityCreated(Bundle)当Activity的onCreated方法返回时调用
  • onDestroyView() 与onCreateView方法相对应,当该Fragment的视图被移除时调用
  • onDetach() 与onAttach方法相对应,当Fragment与Activity取消关联时调用
    PS:注意:除了onCreateView,其他的所有方法如果你重写了,必须调用父类对于该方法的实现

这些方法理解起来并不费劲 但是要完美记在脑子里 还是需要花上一番功夫的

那咱们一个一个来 先从创建开始:

1.首先 onAttach方法: 和Activity进行关联的时候调用 这个放在第一个 应该好理解

2.我们知道 Activity在onCreate方法中需要调用setContentVIew()进行布局的加载,那么在Fragment中onCreateView就相当于Activity中的setContentVIew

3.onActivityCreate是一个额外的方法 为了告诉Fragment当前Activity的创建执行情况 方便Fragment的后续操作

先后顺序

已知Fragment是依赖Activity而存在的 它们都有着相同的生命周期方法 那么先调用Activity的还是Fragment的呢? 这里分两种情况

  • 如果是创建 那么先创建Activity 后创建Fragment
  • 如果是销毁 那么先销毁Fragment 后销毁Activity

网上有很多文章说Activity的onCreate方法在Fragment的onCreateView之后执行,这是不正确的 Fragment一般都是在Activity的onCreate()中创建 要么通过布局加载的方式 要么通过new创建Fragment对象的方式 如果没有Activity的onCreate 哪来的Fragment

总结

上面的理解好后,咱们再整理记忆一下

一句话 Activity是老子 Fragment是小子 进门先让老子进 滚蛋先让小子滚 加载布局createView 老子完事吱一声(ActivityCreated)

希望有帮到你

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

原生app如何跨进程调起微信小程序

发表于 2019-11-21

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

微信小程序开发入门篇

发表于 2019-11-21

对于初学者来讲,快速掌握一门新技能,不在于把每一步都搞透,而在于先把整个流程跑通,

先控大局,再究其细节 这是快速学习的基本技巧之一

第一步 申请小程序账号

注:一个邮箱只能申请一个小程序账号

注册链接:https://mp.weixin.qq.com/wxopen/waregister?action=step1

第二步 获取小程序Appid

注册成功后登陆账号

进入开发设置界面 复制appid 一会开发需要用到

第三步 下载小程序开发工具

官方下载地址:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

安装完毕后打开,然后新建项目

填入之前复制的appid,新手的话选择不使用云服务即可,这样目录相对简单一些

创建成功后会自动生成一些目录和文件

小程序初始化目录:

小程序包含一个描述整体程序的 app 和多个描述各自页面的 page。

一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下:

文件 必需 作用
app.js 是 小程序逻辑
app.json 是 小程序公共配置
app.wxss 否 小程序公共样式表

一个小程序页面由四个文件组成,分别是:

文件类型 必需 作用
js 是 页面逻辑
wxml 是 页面结构
json 否 页面配置
wxss 否 页面样式表

1:page 页面文件夹 存放项目页面渲染相关文件

2:utils 存放js库和数字格式化文件

3: 配置文件

第四步 程序开发

需要具备前端相关知识,如果还不具备,建议先学习html+css+js 基础

个人开发大多以展示为主,可以不用开发后台

第五步 上传小程序

开发完之后,可以在开发工具选项点击上传按钮将代码至微信后台。如下:

填写版本号和项目备注

第六步 提交审核

上传成功后进入后台管理界面,将刚才上传的程序提交给微信官方审核

1574320522905

一般一两天就能查看审核结果,通过审核之后,还需要发布上线

线上版本发布后,这时你就可以在微信搜索中搜到我们自己的小程序了

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

UE4(虚幻引擎)之常用快捷键

发表于 2019-11-21

虚幻4中有一些按键和快捷键很常用,牢记它们并运动到实际的项目开发中,将会大大地提高你的工作效率和使得工作更简便快捷。下面将列举它们出来:

按键 动作
鼠标左键 选择actor
鼠标左键+拖动 前后移动和左右旋转摄像头
鼠标右键 选择actor并打开右键菜单
鼠标右键+拖动 旋转摄像头方向
鼠标左键+鼠标右键+拖动 摄像头上下左右移动
鼠标中键+拖动 摄像头上下左右移动
滑轮向上 摄像机向前移动
滑轮向下 摄像机向后移动
F 聚焦选中的actor
箭头方向键 摄像机前后左右移动
W 选中平移工具
E 选中旋转工具
R 选中缩放工具
W+任何鼠标按键 摄像机向前移动
S+任何鼠标按键 摄像机向后移动
A+任何鼠标按键 摄像机向左移动
D+任何鼠标按键 摄像机向右移动
E+任何鼠标按键 摄相机向上移动
Q+任何鼠标按键 摄像机向下移动
Z+任何鼠标按键 增加视野(鼠标释放后会恢复原状)
C+任何鼠标按键 缩小视野(鼠标释放后会恢复原状)
Ctrl+S 保存场景
Ctrl+N 创建新场景
Ctrl+O 打开一个已有的场景
Ctrl+Alt+S 另存为新场景
Alt+鼠标左键+拖动 复制当前选中的actor
Alt+鼠标右键+拖动 摄像机前后移动
Alt+P 进入Play预览模式
Esc 退出预览模式
F11 进入仿真模式

官方提供

Viewport

Hotkey Action
LMB Select actor under cursor, replacing selection.
Ctrl + LMB Add / Remove actor under cursor to selection.
Shift + LMB Add actor under cursor to selection.
ESC Clears selection.
TILDE Toggles command console.
Perspective
RMB + Drag Forward / Backward Rotate camera up / down.
RMB + Drag Left / Right Rotate camera left / right.
( RMB + W ) | Numpad8 | Up Move camera forward.
( RMB + S ) | Numpad2 | Down Move camera backward.
( RMB + A ) | Numpad4 | Left Move camera left.
( RMB + D ) | Numpad6 | Right Move camera right.
( RMB + E ) | Numpad9 | Page Up Move camera up.
( RMB + Q ) | Numpad7 | Page Dn Move camera down.
( RMB + C ) | Numpad3 Zoom camera in.
( RMB + Z ) | Numpad1 Zoom camera out.
LMB + Drag Forward/Backward Move camera forward /backward
LMB + Drag Left/Right Rotate camera left /right
LMB + RMB + Drag Move camera up /down
Orthographic ( Top | Front | Side )
LMB + Drag Creates selection box, selects contained actors, replacing selection.
Shift + LMB + Drag Add actors in selection box to selection.
Ctrl + Alt + Drag Remove actors in selection box from selection.
RMB + Drag Pan camera.
LMB + RMB + Drag Zoom camera in /out.
Focusing
F Focus camera on selected object or group.
Camera view
Alt + G Perspective camera.
Alt + K Side camera.
Alt + J Top camera.
Actor Manipulation
Space Toggle between ( Translate | Rotate | Scale ), see toolbar for selection.
W Selects Move tool.
E Selects Rotate tool.
R Selects Scale tool.
V Toggles vertex snapping.
LMB + Transform Axis + Drag Transforms selected actors depending on active tool.
Perspective (scale works evenly on all axes, rotate/move works as expected)
Ctrl + LMB + Drag Transform selected actor(s) along the x-axis.
Ctrl + RMB + Drag Transform selected actor(s) along the y-axis.
Ctrl + LMB + RMB + Drag Transform selected actor/s along the z-axis.
Orthographic
Ctrl + LMB + Drag Transform selected actor(s) along the view plane axis.
Ctrl + RMB + Drag Rotate selected actor(s) along the view plane axis.
Display
G Toggles Game Mode rendering.
Ctrl + R Toggles real-time playback.
F11 Toggles Fullscreen.

链接地址:https://leetnightshade.com/blog/unreal-engine-hotkeys

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

告诉你为什么十六进制表示的颜色值是两位代表一种颜色

发表于 2019-11-20

学习本篇之前需要先了解《十六进制和二进制的互相转换》

前提

我们知道每个像素都是由三原色红绿蓝三种颜色组成

1
RGB //Red(红色)  Green(绿色)  Blue(蓝色)

一个像素点可以由4组8位二进制数表示(不要问为什么 重点)

1
2
3
4
5
6
7
1 1 1 1   1 1 1 1    第一组 表示红色 R

0 0 1 1 0 1 0 0 第二组 表示绿色 G

1 1 1 1 1 1 1 1 第一组 表示蓝色 B

1 1 1 1 1 1 1 1 第一组 表示表明度 A

也就是我们熟知的RGBA

结果

既然我们已经知道了二进制的颜色, 根据二进制转十六进制 利用8421法必然会将每个颜色的二进制分为两组 比如:

1
2
8 4 2 1   8 4 2 1
0 0 1 1 0 1 0 0

第一组为:2+1=3

第二组为:4

那么其对应的十六进制结果为0x34

所以RGBA每个通道需要两位十六进制进行表示

你学会了吗

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

利用8421法进行十六进制与二进制的互相转换 一学就会

发表于 2019-11-20

二进制转十六进制

已知二进制值

1
110100

从右到左4位4位的进行分割(不要问为什么),位数不足的在左边添0 得到两组二进制:

1
0011 0100

然后利用8421进行对应

1
2
8 4 2 1   8 4 2 1
0 0 1 1 0 1 0 0

把0对应的值去掉 1对应的值相加得到:

第一组为:2+1=3

第二组为:4

那么其对应的十六进制结果为0x34

十六进制转二进制

同理 已知十六进制

1
0x52

第一组是5 第二组是2 对应关系为:

1
2
8 4 2 1   8 4 2 1
0 1 0 1 0 0 1 0

由于4+1=5 所以第一组4和1下面为1其余为0,同样第二组2下面值为1

最后得到二进制值为:01010010

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

十进制和二进制的快速转换 一学就会

发表于 2019-11-20

十进制转二进制

首先 我们需要背诵2的2到10的幂次方,这个我相信对大家都不难,它们分别是

1
1、 2、4、8、16、32、64、128、 256、 512 、1024

这些对应的二进制分别是

1
1、10、 100 、1000 、10000 、100000、 1000000 、10000000、 100000000 、1000000000.

接下来,就是开始心算的时候,比如:

9=8+1  对应二进制 1001 

17=16+1 对应二进制  10001

 34=32+2  对应二进制    100010

  245=128+64+32+16+4+1  对应二进制 11110101

每次从高位依次往下写,比如34 从32 往下写 依次是

1
32、16 、8 、4 、2 、1

在该位数上分解的数有该数就写1,没有就写0。得到:

1
1、0、0、0、1、0 //也就是100010

二进制转十进制

同理,也是从高位开始计算,;先数二进制数比如:

     101010   6个数  就从2的(6-1)次方开始计算

          分别是32+8+2=42

找到最大位,依次往下数,该位上是1的话,就写出该数,最后相求和即可。

是不是很简单呢

本帖附件

点击下载

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

1…495051

乱码三千

android程序员一枚,擅长java,kotlin,python,金融投资,欢迎交流~

505 日志
145 标签
RSS
© 2026 乱码三千
本站总访问量次
由 Hexo 强力驱动
|
主题 — NexT.Muse v5.1.4
0%