从你的父母(parent)谈起

英语单词 parent 表示“父母亲(其中一位)”,复数形式为 parents。

所谓父母亲,就是带给你生命的人。小时候的记忆,会给你带来一个印象,就是你的父母,就是上帝,他们创造了你,还给你发号施令,或者大爱无疆地照顾你。其实这些都是些相对委婉的说法。直接点,核心的意思,其实,就是你是他们生育或生产的孩子,生育这件事,才是你的父母之所以是你的父母的最关键、最具决定性的和颠扑不破的原因,这是自然伦理的最核心基本点,具有天赋性,你的父母把你生下来,不会和你商量,因为这是他们天然的权力,无论富贵贫穷、高低贵贱。

在这里插入图片描述

parent 的本质,来自于 par-,因为ent-是一个后缀形式,相当于现在分词-ing,只是在这里用作名词。而par-是一个词根,表示“生产,生育”,这在里,显然就是指“生育”的意思。

parent = par-生育 + ent名缀 = 生育你或带给你生命的人 = (你的)父母亲

而英文词根par-的本质,来自于如下结构的合成:

  • par- = p + ar = 生产、生育

在这里,ar- 通 -er,er-是比较级后缀,表示进一步或更加的意思,所以 par-本质上通词根per-。per-表示“往前、在前、前面”等含义,它的本质,来自于“头朝前”,同样来自于“生育”这样事情。

  • 词根par-(生产、生育) = 通per-(向前) = p头 + er比较级 = 头朝前

比较级格属形式的 er-,e表示“向前、向外”,其含义本质上来源于大写 E 的象形,即“动物(鸟)之趾”的形象,字母r表示分裂、裂痕,来自 r 的形象,裂痕或树芽的象形,所以r 代表了“分裂、分离或发生、生发”等义涵,另外 r 还有编织的绳索的象形意义,代表绳索或线索等意思,而大写的 R,也具有 人头 的形象。

另外,词根par-,除了具有“生产、生育”的含义外,还具有“分离、部分”的含义。

这些含义的本质,都来源于 该词根 par-的这个结构:p + ar(通per-),本质上,就是指 婴儿头往外或往前,最终 孩子从母体分离,出生成功。词根par-/per-的词源本质是一样的,只是最终取义或赋义的方向不同。

换句说话,par-/per-的几个含义之间的逻辑关系,其实大体如下:

  • par-/per- = p + er = (头)向前 → (婴儿从母亲) 分离 → 生育(成功) → (成为婴儿)父母

而 par-所具有的“生产”的含义,同样可以视作是“生育”义项的引申。

当我们了解了这一切之后,我们来看一个单词,比如 pare:

  • pare vt.削皮;去皮;削减,缩减,缩小;修剪(指甲等)

看到没有,我们马上可以把它进行结构拆分:

  • pare = par + e尾素 = 削皮,去皮

而且,我们马上可以将 par-(通per-表向前;分离、裂出、离开、部分;生产、生育;父母)中的某个义项赋给 pare一词的par-结构,很显然,我们很容易会找到”分离、裂出、离开、部分”这样的含义给到pare。

  • pare = par-分离,部分 + e尾素 = 削皮,去皮

这样我们的理解和记忆就走向了自洽,内心和pare这个单词之间,就变得圆融,而不是排斥,记忆自然也就高效而长久。

所以,对于单词的记忆如何要高效化,就是将单个单词和相关系列单词,都能够联系在一起记忆,并做到规模级数量的扩展,而要做到这一点,就需要理解单词的结构如何科学划分、单词的源起、字母在整个比形赋义过程中的作用和机理,这就是整个高效化记单词的底层逻辑和理路。

如果你不能做到这一点,那么,我们就会陷入这样一些不同层面的尴尬境地:

【1】parent的记忆:p-a-r-e-n-t,父母亲,逐个字母地拼写拼读,机械式记忆
【2】parent的记忆:只是单个的 parent 这个单词,不会去记忆相关的单词,因为缺乏联系
【3】如果你学了词根词缀法(结构分析记忆法),你仍然会掉入如下几大陷阱:
【3.1】parent = par生育、生产 + ent后缀,对词根par-的记忆仍然需要死记硬背
【3.2】你可能将会在不同的阶段,学习到不同的词根par-,比如:
(1)词根par-分离;
(2)词根par-部分;
(3)词根par-生产;
(4)词根par-生育;
(5)词根par-父母;
也就是说,同个词根基本被内在的分裂或割裂开来,不能有机、整合或综合、一体性地形成记忆,相关单词或词簇也被分开进行记忆。更要命的是,因为可能不理解其底层字母级或子级词根往上叠加、合成的机理,和词源上的衍生或勾连关系,或底层逻辑,在单词的部件含义到单词本身的含义的推出过程或会意过程变得牵强附会,缺乏逻辑,或发生错误,导致词根词缀这类结构分析法给学习者的记忆带来肤浅化、低效化或无效化,给记记带来障碍,从而凭添了许多比原来还要多的无效信息需要记忆,整个过程是无机的、低效的,甚至陷入新的更多的学习和记忆痛苦之中。
【3.3】同样,不同的词根和词根之间也缺乏联系,比如词根par-和词根per-之间,缺乏联系,是分开学习和记忆的过程。但是,如果我们理解了这一切的机理和底层逻辑,那么,我们就可以很容易,将词根par-,词根per-放在一起来记忆,而且水到渠成、融会贯通,甚至将其它更多的词根也一起放到一块记忆,比如词根para-,表示“旁边,旁侧;在旁边,在一旁”,我们马上可以将它诠释为,婴儿出生后,就在父母身边,引申为“在旁边”,我们同样可以将 首字母 p 解作“头”,将ar-解作通er-,从而将三个词根整合在一起记忆:

  • 词根par-分离、部分;生育 //生育是孩子从母体中分离,孩子是父母身上掉下来的肉,是父母身体的一部分
  • 词根per-向前 //生产过程,头向前 #暗示顺产、成功生育,投胎(转世),超越等更多可能的义涵
  • 词根para-在旁 //婴儿出生后在母亲或父母旁侧

在这里插入图片描述

又比如 pati-这个词根,如果你理解了其首字母p,象形,表示“脚掌或手掌”,引申为“踩、践踏、拍打、击打”等含义后,pa-视作脚“走一步”、“踩一下”或手“拍一下”的拟声结构,将pati-视为是从“(脚)践踏、(手)拍打”的义项引申出的“承受、忍耐”的义项时,那么,你对于词根pati-的记忆,就会变得顺理成章、合情合理,而不太会产生过多的记忆痛点,为进一步高效记忆相关的单词奠定坚实的基础。

词根pati-(忍受、承受、忍耐):

  • patient n.病人 a.有耐心的 //= pati-忍受 + ent形、名缀
  • patience n.耐心;毅力 //= pati-忍受 + ence名缀

当然,我们只是列举了部分单词来说明将 单词词源法、字母象形法、词根词缀法、经典场景法等记忆方法融合在一起进行单词记忆重要性、必要性和可行性。毕竟,像par-、per-、para-、pati-等系列词根、词缀牵涉的单词实在是太多,在这里我们就不一一列举了。

所以,重要的,或者最最重要的,是理解,理解机制、机理、缘起、前因后果、本质等最重要的东西,也就是目前流行的说法,掌握【底层逻辑】,只有这样,我们才能真正融会贯通、大力出奇迹,才能事半功倍、高效前进。

比如,我们基本就parent这个单词,摸到词根par-(父母)这个词根,摸到词根par-(向前;分离;部分;生产;生育)、词根per-(向前),摸到词根para-(在旁),我们还可以继续往前摸,比如词根por-(前向;携带;搬运),比如词根par-(生育),单词born(生育),p-和b-相通,p(头/朝上),b-(头/朝下,大肚子)等,不一而足,相关的单词,可以达到成百上千个,这样的,你记忆的过程,就像晴朗的夜晚天上的烟花一样绽放,壮观而美好。

最后,祝大家心有灵犀一点通,学习记忆单词不再痛苦,一切顺遂而美好,词汇量能以万起步!

信我,得永生!掌握底层逻辑和走向融会贯通,才是根本。比如,词根hydr(o)-(=water),表示“水”,问题来了,你记了一堆hydro-相关的单词,回头还是不知道,为什么water是水,hydr(o)-也是水?

  • 你的学校的老师不会和你讲
  • 你找个讲词根词缀记忆法的老师,还是不会跟你讲
  • 你找个讲词源记忆法的老师,通常也不会跟你讲
  • 因为,他们大抵都不知道,为什么hydr(o)-这个词根表示水,他们只会跟你讲 hydropower(水电) = hydro水 + power电力,或者由于该词较高级,连(hydro水 + power电力 => hydropower)也根本没人给你讲,但到工作的时候,你可能会需要记忆这个单词,因为“水电”是现代社会是一个很重要的能源形式,然后 hydropower 这个单词,就成为了你痛苦的开始,所有的都成了死记硬背、效果低下
    更可怕的,可能讲词源的老师会这样讲,词根hydro-(水),源自希腊语 hydro-,最终源自 PIE 词根 *wed-(1)“水; 湿润”的后缀形式,可想而知,你更蒙逼了,因为希腊语 hydro-和PIE *wed-除了一个字母d相同,其它一点有关联的样子也找不到,这不但让你感到困惑,而且还突然多出了好多奇奇怪怪的信息,事实上成为你更大的痛苦,心里产生一堆疙瘩,信息负荷大增而且呈混乱无章之势…于是,等你回过神来,就是心里一万个草泥…什么马路过,邯郸学步,结果:不会走路

在这里插入图片描述

其实,更大的悲剧是,上图这样的事情,不但发生在你的身上,通常也会发生在你的孩子身上,你的孩子的孩子身上…如果我们学校的老师没有进步的话,就是这样子的,一代一代地讲着,天道酬勤的道理,家中父母和学校老师,像打铁匠一样的,一遍遍敲打着孩子,称之为天道酬勤、百炼成钢…

内容概要:本文围绕六自由度机械臂的人工神经网络(ANN)设计展开,重点研究了正向与逆向运动学求解、正向动力学控制以及基于拉格朗日-欧拉法推导逆向动力学方程,并通过Matlab代码实现相关算法。文章结合理论推导与仿真实践,利用人工神经网络对复杂的非线性关系进行建模与逼近,提升机械臂运动控制的精度与效率。同时涵盖了路径规划中的RRT算法与B样条优化方法,形成从运动学到动力学再到轨迹优化的完整技术链条。; 适合人群:具备一定机器人学、自动控制理论基础,熟悉Matlab编程,从事智能控制、机器人控制、运动学六自由度机械臂ANN人工神经网络设计:正向逆向运动学求解、正向动力学控制、拉格朗日-欧拉法推导逆向动力学方程(Matlab代码实现)建模等相关方向的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握机械臂正/逆运动学的数学建模与ANN求解方法;②理解拉格朗日-欧拉法在动力学建模中的应用;③实现基于神经网络的动力学补偿与高精度轨迹跟踪控制;④结合RRT与B样条完成平滑路径规划与优化。; 阅读建议:建议读者结合Matlab代码动手实践,先从运动学建模入手,逐步深入动力学分析与神经网络训练,注重理论推导与仿真实验的结合,以充分理解机械臂控制系统的设计流程与优化策略。
非常好的问题! 你问的是:**这个 `parent` 从哪来的?** 在你的代码中,比如: ```kotlin override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): SkeletonViewHolder { val itemView = LayoutInflater.from(parent.context).inflate(layoutRes, parent, false) ... } ``` 这里的 `parent` 参数是从 **RecyclerView 内部自动传入的**,它是当前 item 将要被添加到的父容器(即 RecyclerView 自身),我们来详细解释它的来源作用。 --- ### ✅ 一、`parent` 的来源:由 RecyclerView 调用时传入 当你写 `RecyclerView.Adapter` 时,系统会在需要创建新 ViewHolder 时调用: ```kotlin adapter.onCreateViewHolder(parentViewGroup, viewType) ``` 而这个 `parentViewGroup` 是由 **RecyclerView 的 `LayoutManager` 创建并传入的**。 #### 🔍 具体流程如下: 1. RecyclerView 开始布局(layout)自己。 2. 它发现需要显示新的 item,于是请求适配器创建一个 ViewHolder。 3. LayoutManager 调用: ```java adapter.onCreateViewHolder(recyclerView, viewType); ``` 这里的 `recyclerView` 实际上就是 `ViewGroup` 类型,作为 `parent` 参数传入。 > 所以:**`parent` 就是 RecyclerView 本身(或其内部的滑动容器)**,类型为 `ViewGroup`,通常是 `RecyclerView` 的直接实例。 --- ### ✅ 二、为什么叫 `parent`? 因为它是即将成为你 `itemView` 父布局的那个容器。 你在 `onCreateViewHolder` 中 inflate 布局时会这样写: ```kotlin LayoutInflater.from(parent.context) .inflate(R.layout.item_layout, parent, false) ``` 参数说明: | 参数 | 含义 | |------|------| | `R.layout.item_layout` | 要加载的 item 布局资源 | | `parent` | 指定父容器,用于生成合适的 LayoutParams | | `false` | 不立即 attach 到 parent(由 RecyclerView 控制添加时机) | 📌 关键点: - 传入 `parent` 是为了让 `inflate()` 方法能根据父容器的布局规则(如 `match_parent`)生成正确的 `LayoutParams` - 如果不传 `parent`,`match_parent` 会退化成 `wrap_content` --- ### ✅ 三、常见误区:能否信任 `parent.measuredWidth`? ❌ **不能!尤其是在 `onCreateViewHolder` 阶段。** 因为在 `onCreateViewHolder` 被调用时,RecyclerView 可能还没有完成自己的测量(measure pass),所以: ```kotlin parent.measuredWidth // → 很可能是 0 或不准确! ``` 这就是你之前遇到的问题根源: 你想用 `parent.measuredWidth` 来 measure itemView,但此时 parent 宽度还没确定。 --- ### ✅ 四、如何获取“真正可用”的宽度? 如果你需要知道 item 应该多宽,有以下几种可靠方式: #### ✅ 方式 1:使用屏幕宽度(适用于固定比例) ```kotlin val displayMetrics = parent.context.resources.displayMetrics val screenWidth = displayMetrics.widthPixels val itemWidth = (screenWidth * 0.9).toInt() // 占屏 90% ``` #### ✅ 方式 2:延迟到 `onBindViewHolder` 或 `post()` ```kotlin override fun onBindViewHolder(holder: SkeletonViewHolder, position: Int) { holder.itemView.post { // 此时 view 已 attach,可以安全获取宽度 Log.d("Width", "Actual width: ${holder.itemView.width}") } } ``` #### ✅ 方式 3:监听 `ViewTreeObserver` ```kotlin holder.itemView.viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener { override fun onGlobalLayout() { holder.itemView.viewTreeObserver.removeOnGlobalLayoutListener(this) Log.d("Width", "Final width: ${holder.itemView.width}") } }) ``` --- ### ✅ 五、图解 `parent` 的层级关系 ``` Window └── DecorView └── LinearLayout ├── ActionBar/Toolbar └── FrameLayout (Content Parent) └── YourActivityContentView └── RecyclerView (这就是 onCreateViewHolder 中的 parent) └── [ItemView] ← 由 LayoutInflater.inflate(..., parent, false) 创建后由 RV 添加 ``` 所以: > `parent` = RecyclerView = item 将要被加入的父容器 --- ### ✅ 总结 | 问题 | 回答 | |------|------| | `parent` 从哪来? | 由 RecyclerView 的 LayoutManager 在创建 ViewHolder 时传入 | | 它是什么? | 当前 item 的父容器,类型为 `ViewGroup`,其实就是 `RecyclerView` 实例 | | 能否用它获取宽度? | ❌ 在 `onCreateViewHolder` 中不可信,可能为 0;✅ 可在后续 layout 阶段使用 | | 为什么要传它? | 为了 inflate 时生成正确的 `LayoutParams`(比如支持 `match_parent`) | ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值