粉丝338获赞1012

如何把模型导?大家好,我是刘海,今天给大家分享一下如何把实体模型导入 cm 孔先,下面我就给大家示范一下。 先,我们还是后处理,把这个程序后处理出来,就就选择这个后处理,然后处理到桌面上,随便改个名字, 我们等一下它就会处理出来了。 下一步的话我们把这个文件 文件我们给它导出,导出 s t、 l 的 格式,我们选择它确定,然后在这个地方的输出路径,我们选择桌面给个幺六零 确定,然后我们确定就 ok。 平时的时候我们程序弄好了,都会把程序拉到这个 c m 口里面来看一下, 现在我们窗口模拟仿真仿真的时候,现在能看到它的这个坐标系,这些刀路什么的点一下也能看到它的深度, 然后的话我们怎么把模型导进来,这个就需要在这个地方仿真,找到这个地方有个 s t、 l, 看到这个地方 点击这个桌面的这个打开。好,现在的话我们就把模型导进来了,这样的话你看我们就能够很清楚的很直观的看这个道路有没有附着在这个模型上,这个模型也是可以可以转动的, 然后可以平时也可以看其他地方有没有道路啊,坐标系有没有错都是可以的。好,今天就分享到这。

pasa 二十行代码的接苹果小游戏。这是用 pasa 精灵模块制作的,它和 c 家家精灵库不是同一个东西。 pasa 精灵模块是本人自二零一九年开始开发的一个 pasa 教学库。它主要提供了继承自 pasa turtle 中的 turtle 类的 sprite 类,增强与增加了某些命令, 如提供像素级别的碰撞检测。本人用它编辑了精灵宝典和几何宝典。本模块已开源,任何人都可以免费下载安装。安装方法,在管理员窗口输入 pip install price。

ten 基础三点三项目推导式当同学们在给列表添加大量数据的时候,是不是需要调用大量的 append? 这样写的代码非常多,比如我们需要添加一至一百的数字到一个空列表中, 我们首先想到的是一个一个的添加,这样写明显是不太现实的。一个一至一百的列表,我们需要写一百行代码,这个时候我们会想到利用 f 循环 very good 接下来我们来看一下代码 list 等于返回号 for i in range 一 幺零幺 list append i print list 这个时候你就会得到一个一至一百的列表,但是这样还是太复杂了,我们需要编写三行代码才能够实现。那么有没有更简单的呢? of course 接下来我们来看这样一行代码 list i for i in range 一 幺零幺这样一行代码我们就能得到一个一至一百的列表,这里就是推导式。

大家好,跟我学数控,我是于哥,这期视频咱们讲解程序是如何传输的,也就是说咱们在干活之前,首先要在编程员那里把程序拿到手,拿到手之后再怎样给它导到机床上,好,这期视频咱们就开始学习一下是如何操作的。 首先咱在程序员那里把程序拿到之后,然后把这个 u 盘插到这个 usb 接口,这 插上去之后,然后咱在功能键里选择这一个编辑给它点亮,点亮之后,然后按这个 pro 键,哎,这个是哎项目 啊,按完之后,然后在这里点操作,操作之后选择这个设备选择设备选择之后选择 usb, 哎, usb 选完之后,这就是咱们 u 盘里的内容,然后选到咱们要传输的哎程序的文件夹,哎,这个第四个, 哎,找到程序文件夹之后,然后点击这个进入哎 input, 然后进去之后找到咱们要用的程序这个幺零幺, 找到这个幺零幺之后,然后在这里按这个右边这个加号加号,按这个选择选择之后,再按这个上下键,上下键选中,选中咱们的幺零幺,然后点复制, 点完复制以后再回到咱们的啊,再点这个加号,回到这个设备选择,点这个设备选择之后 再选这个,哎 cnc 选择这个机床,在这个机床这个页面下面,然后再点这个加号,点完这个加号之后,然后点这个粘贴, 哎,稍等几秒钟,哎,这个程序就从 u 盘烤到咱们的啊机床上,然后再把这个 考到机床上,这个程序给它设为主程序,现在这个程序是幺幺幺,哎,主程序是幺幺,前面有一个按特号,咱要把这个主程序换成幺零幺,再点击这个加号按钮, 哎,再点一下,点一下出现这个页面之后,里面有一个主程序, 哎,再点击这个主程序,哎这个主程序。点这种之前,先把这个光标打到咱要选择的这个程序上,哎按这个上下键, 上下键选择咱们这个程序,然后给它按一下主程序,这个按钮号就变成了,哎,在这个程序前面,这里就变成了咱们要加工的 当前的程序,这样咱们就相当于把整个程序传到的机床,再按这个启动按钮哦,就可以了。在启动按钮之前先要达到哎自行 哎自动执行模式,然后就是记忆模式,有的床子是一个哎扳拧拧的一个旋钮,咱们这是一个按键的,哎,自动行驶之前先,然后点这个哎记忆或者自动,然后再启动咱们的机床,就开始他的一个工作了, 哎,这期视频就是讲解的咱们如何把程序从 u 盘考到机床上,然后给它设定主程序,大家学会了没有?如果没学会,大家按照我的视频多操作几遍,你肯定能学会, 后期我会继续更新咱们数控的知识,欢迎大家点赞收藏。

呃你好哎。呃学历本科。呃哪个城市?深圳工作几年?四年薪多少?十七。 好。什么问题?好?第二问题就是最近在工作上就是有这样一个想法,就是我准备就分一个这种类似一个小插件吧,这个插件呢就是说他自己会一张维护的配置表, 然后呢只有先说我想干什么,这插件作用是我给他一个我们自定义的主键的名称,然后他就把那个主键配置对象吧还是什么东西,反正弄过去给我们,那我们直接用就行了,就挂上面用就行了,就是这么一个工具。可以这么理解为 他是以什么形式存在的呢?插件?浏览器插件吗?啊不不没有那个就是很简单,就是我们自己的项目分了很多个没有。他是什么形式?是页面形式吗?还是个桌面端形式吗?还是个命令行形式啊?他是个什么形式?不是那样是就是我们就普通的一个前端项目。就是个页面吗?是吧? 对一个页面啊,页面是有很多,就是搜主键的名字是吧?啊对我给我主键的名字,比如说 a 主键,我给 a 主键给他他就帮我把 a 主键然后就返回出来,就把 a 主键的代码给返回出来是吧?呃 就是那个返回一个东西,那东西我可以直接放到我的业务代码去用,就这么简单。他返回的是什么东西呢?是个主键,比方说你是五 u 他 就是个五 u 的 主键那个代码吗?呃这个代码就是音炮的导入那个东西 我没太明白说。就是说我们的主键不是要导入吗?对不对啊?我们导入的就是那个东西,那个叫做。呃,没太理解。就是你如果说搜索啊,搜索的是一个主键 a, 他 给你得到的是一个这个东西, 就一个代码片段,对,就正常主键的话就是 a 那 个主键吗?那个主键不是片段,他应该不是整套代码,他自己就是 一个配置对象,然后呢?一个 component 的 那种东西,它应该是这样,我直接拿去用就可以了。我还是没太理解,就是给的是什么东西,给的就是个代码片段吗?那我再举个例子哈,就比如说我现在就 a b c, 对 不对?嗯,然后呢?我 a 就是 引入了 b, 引入了 c, 对 不对?嗯,然后呢?如果我要引入的话,我是不是要写 import a, 然后放点杠,然后 b 点 v o e, 对 不对?然后前面那个 b 我 就要那个东西, 你再说一次刚才那段,再说一次,我脑袋都给我整晕了。啊啊,就是我现在有 a b, c 嘛,对不对? a 是 就是依赖的 b 嘛? a 里面有 b 的 东西嘛?那我是在引路这个 b 嘛,是不是啊?对, 然后呢?我引路的话,那我还是个主键嘛,就他就主键,他其实没有什么太大的东西,他就是 import b, 放点杠, b 杠,等等,慢点,慢点。什么?什么 import b? 什么 from f r o m from, 然后点杠,那 b 点 v o e 嘛,对不对?就是这个意思嘛?啊,对对对啊,对,就不用管那目录嘛,就这个意思嘛,那我就要拿到这个 b, 你 就要拿到这个 b, 然后我这个 b 就是 直接挂到 a 那 去用的,然后呢?就扩展一下,我不管哪里我也不用这个导入,我也不需要知道我的就是,我还是没听懂你这个插件它起了一个什么作用,我还是没听懂,你们听懂了,就这样的,你们听懂了。 就比如说我的主键,他可能是放在我不想知道我的主键,我这个目录我的主键在哪里,我只要知道我有这个主键就行了,我不想知道我的主键在哪里? 对,我不想知道我的主键的具体位置在哪里,我只知道比如说一个通用的搜索主键,我不想知道我主键在哪里,我用别人封好了,他说封好了,那我就封呗。封完之后你是不是这个意思?就是你们那个项目里边呢, 就是有写的很多的主件啊,你要把背景给我描述一下啊,就是你们的项目里边写了很多的主件,这些主件呢在不同的目录层级下面,现在你要用其中一个主件,但是你忘记了这个主件在哪了,准确来说我是不想知道, 我也不在意这个东西。对,反正就是你现在就遇到一个问题,也就是当你想用一个主件的时候,你不知道他在哪,你要到处去找, 然后呢你就做了一个小工具,这个工具呢就是可以快速的帮你找到他的在哪,而且呢同时他呢为了方便的话,同时把那个引入代码给你生成出来,你直接复制粘贴过来就行了,不用复制粘贴,他就是说直接能帮我导入,我直接用就行了,帮我直接引入 直接帮你引入。就是你写的个 vs code 的 插件吗?是编辑器的插件吗?不是 vs code 的,是那个类似于你还不是在复制粘贴他,比方他生成一个东西 比较生成的一个,呃,比较一个 a 的 这个主键,然后在后边一串路径嘛?你要把这个东西复制一下到你的代码里边才能粘贴过来用啊。呃,就是我的想法是它不需要去复制,它是不是生成了,然后直接运行它不就可以了?你不是在页面上吗?这个我在点 v o e 文件吧,应该算是。 哦,这是开发,不是那个点 v o e 文件里面。我就在问你啊,你就是你这个插件是什么形态出现的?是做一个什么工程化的插件吗?这边位子插件,但是我描述的不够清楚,可能它并不需要到工程化那个阶段,它就是一个 utils 工具函数。可以这么简单的理解,它就是工具函数, 它没有到插件,它也不需要太过于通用。它只是也就是说你现在写了一个函数,还不是说什么页面之类的,你就写了一个函数,比方说一个 utl, 然后呢就是 get component, 比方说我随便来一个吧 component, 然后呢给它一个名字,然后它就返回这个主键,是吧?是这个意思吧?哦对对对,就这么简单。对 哦哦哦哦,对,你能了解了。对,所以现在我是这样想的,但是你这样子做,嗯,有个啥问题呢?对,我就想知道一下有什么问题是吗?首先第一点就是那你就要全做手动分包, 不然的话他们所有主线全部打成一个包了。嗯,对,只有两种方案吗?就是要不在这里边去做动态引入。 对,这用那个 d 什么什么 pro 什么的,有一个导入的东西,一个你要不就做动态导入,动态导入的话他自动分包的结果就是全分包,一个主键一个包。那你这个文件要多的吓死人。呃,要么就是你要静态导入,就在这个游戏包里边,你要去一个个静态导入啊, a 是 啥,然后 b 是 啥?要一个个全部静态导入。 呃,对,我应该不想用静态导入,我想的就是一个配置表里面就写的 a 来自于哪里, b 来自哪里, c 来自于哪里这种之类的, 对吧?那不行,那就必须要手动分包,因为他就会自动分包产生很多的包出来啊。对,有可能会有很多包出来,这是一点啊,要去控制一下这个创口,就这一块你要控制一下,其他的倒还好啊其他倒还好。 那重名咋办呢?逐渐重名咋办呢?如果重名的话首先目录肯定不一样吗?是不是目录不一样的话,那大不了我在后面加后缀对不对?我目前是这样想的, 主见重名你最好报错吧啊,你,然后提醒他就是你这一块有两个同名主见,因为你这种 a p i 的 设计方式,嗯,就暗含了主见是不能重名 的。呃,也算这个道理,的确是不应该重名啊,你最好报错吧,报到提醒他得了。 对,就是,我就是这样想的,这里面会有一张配置表,他就是对应的 a 有 什么目录, b 有 什么目录或者自动生成,或者每次,然后刚刚想的时候我又在想如果我自动生成的话对不对?他在 app 挂载的时候还是什么时候,挂载时候自动去找, 就是 s r c 特定目录下的特定文件夹下面的子文件夹,然后呢就根据一系列规则找到一系列的目录,然后把它给。但是我说实话你这样做你不如直接使用那个自动导入工具啊。自动导入工具啊?为啥他有个自动导入工具有一个?对啊,要不是直接用这个呢? 就是,而且用这个的话你还不用去管他的是分包的问题,这个没太了解,这是干啥的? 这干啥的?就是你除了你不用写导入代码,你直接用就行了。这个主键,然后他在编辑时候他发现你用了这个主键,他会在你配置的相应目录里边去找有没有这个主键,有的话打包的时候他就会把这个导入代码生成出来。 哦,有这种东西吗?啊,那接下来我就了解一下吧。对啊,你这个玩意他还是这样子的话,加入的导入是静态导入语句,就是你这个东西应该在编辑阶段解决,而不应该在运行时阶段解决。 嗯,他本身就可以加到,就是精彩导入语句,这样的话那个依赖关系更加合理一点。其实我刚也在想如果我这样的搞的话,他要去怎么去拿一拿。你们有那么多主见吗?就是埋的地方都不知道了。有是不是因为你们那个目录分类不合理啊? 分类还算合理的,我是这样想的,如果我是作为业务开发者,我知道我现在有比较多的供的业务主业的,这些业务主业在哪我其实不想去管,然后呢?只要别人告诉我有我用就可以了。我是这样想的嘛, 我就怕以后有个主见重名这个问题。嗯,怕这个问题。主见重名的话,因为项目扩张过后主见重名是经常会发生的。 对,目前还没遇到吗?现在还没遇到,而且怎么说。嗯,分好目录其实我觉得问题不大。分好目录有那么多主键需要那个吗?即便是有 insui 那 种就是一些公共的一些主键库,他那种主键量的级别也不至于说我需要有这个需求存在。 因为你只要把目录结构分好你要需要什么东西应该严格按照目录结构顺序是搞的比较清晰的。做一个 come on, 这里面下面一个就杠主键名字呢杠 excel 基本上是这样的结构。其实我在做的时候我又想到就是我觉得除了主键之外就是任何的函数来自于别的什么东西。就是我都是一股脑包了吗 就是以后的话我除了主见啊甚至有可能我的公众函数啊护客师啊这些我都其实我都不用管我只要掉一个东西就行了。可以整没事整吧整着玩吧其实也无所谓整着玩可以可以啊,这个东西以后就不要在面试里面去聊了啊啊容易吵架 那。那也是啊还有啥。那就没有了。没有了没有了哎。好嘞好嘞拜拜。嗯,来 一 v 二账号过期了。找班主任啊找班主任续。那肯定免费续,就我们的课程都是免费的,就是你买了课之后不存在说你看半年看一年就不能看了,整个职业生涯都管理的。就我们的度一的课程他是管理整个职业生涯的哈,不是说只管理一段时间的, 包括以后这个课程里边后续的所有更新你都是可以免费享受的。所以说可以看我们早期的学员就很爽了是吧?一开始我们只有三四百个课时,两三百个课时到现在估计都有两三千了,就光是高新课都有两三千的课时, 都翻了十倍了。但是后边的更新你都是可以看的,因为我们的课程是跟着市场节奏来的,市场对要求的越来越高,我们的课程肯定要不断的更新,要去匹配市场的要求, 所以越早买咱们的课呢,其实越划得来,因为我们的课时量增加,包括我们付出成本增加过后呢,课时的费用肯定是慢慢要涨上去的, 因此你越早买其实越划得来。然后除了我们的付费课程之外呢,我们还有很多的福利课程,有完全免费的,也有这个小额的啊,就都基本上你可以把它认为都是免费的,因为这个小额也就是几块钱,十几块钱。这些课程呢,也是从咱们的付费课程里面抽离出来的,他解决的是一些核心知识点的问题, 如果说你是一个白嫖党的话,其实可以完全通过咱们的福气课程,也可以在短期内获得巨大提升啊。我知道是薪资层面啊,所以说要了解这课程的同学啊,在咱们账号主页点击头像,进入账号主页,根据提示领取完事。

觉得讲的不错的评论句扣六六六,鼓励一下,开始学习。好,各位小伙伴们,大家好,接下来我们开始继续进入到 t s p 网络编程。那上节课我们已经讲完了这开发流程,接下来我们开始写代码,我再建立一个派单派,叫 t c p 编程。好,回车, 接下来我在 t i p 编程里面一样的新建一个新的,取个文件,取个名字叫 t c p。 我 先从服务端开始写起回车, 那首先是要导入 input socket, 接下来我们要开始先创建服务端的 socket, 还是给它取个名字叫 server socket, 等于 suck 的 的 suck 的, 大家他要传两个参数,第一个参数是 family, family 是 表示到底是使用 i p v 四还是 i p v 六,还是使用这个 unix 操系统中独有的?那我们首先接的是 suck 点,我们用的是 a f in, a f in 的 准确来说其实就是 ipv 四的。呃,网络通信,接下来我们的协议是 socket, 点大写的 socket 啊,点 string。 好, 这是这个是,这只是 socket。 string 就是 我们所谓的 tcp 的 协议。如果你不太明白或者不太记得了,回到我们之前上节课讲的 uop 网络编程里面,把它讲了,这个 socket 类型嘛,把它放大一点,其中这个 t 四 p 不 就是这个吗?你看 socket, 它是属于 tcp 的, tcp 的 协议就用这个。好, a f letter 其实是 ipv 四,服务器和和客户端之间的网络通信,其实这个地方应该加个 ipv 四,如果是 ipv 六,这个叫 ipv 六,加一个后面加个六就可以了。 好,接下来我们开始继续回到文档中来,这样我们就已经创建了一个 succct。 好, 这个是一个服务端的 succct, 这个服务端的 succct 在 tcp 编程中跟我们 udp 不 一样,这个服务器服务端的 succct 指是负责什么? 负责接收客户端的对接请求,他不负责和客户端进行具体的通信。你要明白我这个词啊,具体的通信他不负责。比如说接下来我写的这个案例,还是一个及时聊天的网络程序需求及时聊天 啊,那你要是聊天发送信息,我们的这个 sosok 是 不负责发送跟客户端相关的这些通信信息的,要注意。 好吧,不负责,那谁来负责的话,我们会说会,但服务端还会有一个新的 sosok。 好吧,好,我们先把这个 saf 创建出来,然后接下来 saf 点 bind, 它要绑定。绑定,我们昨天已经讲过了,首先是一个 ip 地址, ip 地如果你不写,那就代表所有的 ip, 包括本地, 包括连外网的那些 ip 地址都包括在内。接下来是端口,但你要注意,这里面接的实际上是一个圆组,所以你要接两个括号,里面那个括号实际上代表圆组监听的端口是八千。好,接下来我们再 saf 点 列线,这个后面要接个数字,一般接三啊也行,五也行,或者一百二十八也行,自己看着办。这个数值是什么意思?这个数值其实是表示我们的客户,我们这个服务器取最大,服务器允许最大 等待建立连接的个数,这种情况下,其实就是客户端建立连接的时候,你在这等着 啊,因为我可能忙不过来啊,我允许多个在这呢,我允许最多允许一百二十八个在这等着啊。 ok, 好, 总而言之,你掉了这个 listener 之后,那当前做 socket 才可以开始接收连接的请求,怎么接收呢?是 server socket 点 accept, accept 就是 负责接收。好吧,写个注。是的。呃,或者叫接收客户端 裂,接好,他接收之后注意 anaccepter 接收之后他会返回两个东西,他会返回两个非常重要的东西。注意,注意这句话。第一个是什么?是客户返回一个 sook, 专门和当前这个 sook 当前的客户端进行具体通信的一个撒给。 那这个 suck 的 我们叫什么?叫啊?啊? sucker 二,还有它。好,它还会返回一个什么?还会返回客户端的 ip 地址和端口, 叫 idd, 我 们的 client client idd, 我 们加这个,它会返回两个东西,重要的是这个 socket 二,前面我们说了这个 server sucker, 它只是负责接收链接请求,它不负责和客户端之间进行即时聊天的信息通信。 那谁来负责和客户端进行聊天的即时通信呢?那发送和接收,那就是有撒克蛋,有这个听到吗? ok, 好, 接下来我们要开始接收,那我要不断的和客户端进行聊天接受,是不是得写一个外要循环? 好,外要循环里面,那我们假设服务器还是先接受,那就是不,既要接收数据对不对?怎么接收?谁来接收了?谁负责接收具体的聊天信息了? 刚刚已经强调过了,是看看,来来负责,你千万别拿着这个萨克克来啊,来来来,接收即时聊天的通信数据啊,因为到这一步开始才是什么正式开始聊天了? ok, 那 前面是,这是十四行,正常话是表示连接已经建立,如果十四行正常返回,就表示连接已经建立。 建立了。建立好连接之后,我们前面说过了, tcp 网络编程的这个特点是先建立好连接,然后你才能进行通信, 对不对?那好,那你十四号,你刚刚说了连接已经建立好了,那接下来我们就可以正式发送聊天信息了, 好吗?发送聊天信息就是我们通信的目,目的。好,所以我们是拿着这个 sock 日点 receive, 这里我们就不用再调用这个 receive from 了。老师,我就要调用 receive from 行不行?其实也行,但是没必要了,直接 receive 就 行。好,那为什么呢?回到我的 我们之前讲的文档中来往下拉,在公共的 sock 里面,我们说过了,有两对,一个是这个 receive, 一个是 receive from。 好吧,这个 receive 它的特点是接,只是接收数据包的内容,它不包括接收这个数据包我来自的原 ip 地址和原端口, 那 receive receive from, 它就可以接收原地址和原段号。但话又说回来,其实我们在 tcp 网络编程中,数据包里面根本就没有原地址和原段号,也就是说在 tcp 网络编程中其实是不能够使用 receive from 的, 只是这个 receive 它是可以又在 tcp 使用,又在邮寄费可以使用。不过我们一般来说, 你直接这样记,我们不要搞那么复杂。好,咱们不要记那么复杂,咱们只需要知道我们这样子说就行了。简化一下,这个 receive 就是 receive, 就是 专门用于 udp 的, 接受你这样记可能简单明了一些好不好,这样记没有错。 ok, 那 老师这样行不行?其实行的,因为编程他不是为了你去考试,去探讨一些非常偏门的编程,程序员编程习惯的那种那种知识点, 不会有这样的考试题的。而且说实话,计算机编程好的考试不多,最多在面试的时候有一次笔试,大部分的笔试人家不考这样的了,因为这个考这样的没有意义,知道吧。 ok, 所以 你你就这样归纳。 receive 就是 tc 一 边 tc 网络编程接受数据的 receive from 是 耶稣皮雷。可以了,简单。好,接下来我们就回到这里来,所以我们这个函数调对了呢?接受多大的数据?我们还是接收幺零 s。 好 吧, 那接收过来的数据了,我刚刚说了,它只有数据内容了。好吧,好,我们把它称叫 msg, 这个 msg, 但是它什么类型?你要注意, msg, 其实它是字节数据,如果你要把它变成字母串,你要加个 dq 的。 我们这里还是使用 uti 八就表示接收数据了。这是账号密码,我们之前写。呃,讲过的啊,那接收完数据之后呢?我们把这个数据打印出来,是不是?拜拜。 来自客户端的客户端什么了?客户端,看来我们有没有客户端的 ip 地址啊?其实有,在这 在这,在 accept 函数中返回,它会有客户端的 ip 值中括号零,记住它里面包含两部分东西,这个包含了 ip 地址和端口的,来自于客户端这个 ip 地址客端口号。 客户端 ip 也写个 ip ip i 破号逗号,端口也接个冒号 括号 idd 二中括号一。好,再接下来接一个冒中文的破号,这个包裹后面就只接我们的具体的消息了,也就是说客户端发了一个这样的消息过来了,是吧?我们这个消息在这展示出来。好,接下来我们就可以给客户端发聊天。哎, 客户端发送聊天信息,那给客户端发送聊天信息,那是调用 send, 那 我们里面有需要它去做,要现在写的是服务器代码,服务器 send 这个 send message 就 由用户输入,之后呢,我们接下来就可以发出去了,也是谁来发?通过 socket 二来发 socket 二,但这里面我们调的是 send, 不要调 send to 啊。那那那还是那句话,还是什么样的一个支点?是刚刚我们说的这个 resend 和 send to 也是, send 是 针对 tc 协议的, send to 是 针对幺 d 协议的。比如说之前我们讲 a b p 编程的时候用的是 send to。 send 它只发送什么?只发送具体的内容 啊?不,这这面不携带目标地址以及目标端口,好,直接发具体内容,具体内容是谁?就是这个 send message, 但是我要把它转换成字节,所以调用 encode 里面接 u t of 八, 这样就把数据发出去了。好吧,那发出去之后呢?那接下来我们假设不想聊了,不想聊了的话呢?就那循环就要退出循环退出的话呢? suck 二就要干嘛要 close 一下? suck die close, 先关闭 server, 然后再关闭 server, suck server 啊啊,而这里要估计要关闭两个撒开。好吧,好,那到这服务端就写完了。各位,如果你有任何的一些疑问,估计我猜测可能是这个 accept 这个地方有疑问。 好吧,所以呢,我在在这个案例讲完这只服务端代码写完之后呢,我还重点再说一下,哎,事务的函数呢,它是一个阻涩的函数,它也是一个阻涩号,当客户端没有来连接的时候, 它是一直阻涩在这了,是阻涩函数,当客户端来连接了,那我们的 accept 才会执行完成。执行完成会返回两部分数据, 第一个返回一个全新的 socket, 这个 socket 专门负责和客户端进行聊天。那么第二部分返回客户端的 ip 地址和端口号,这个重点再强调一下。好,这节课我们先到这,谢谢大家,再见。

自己做项目时是不是经常碰到这种情况,发现开源项目里有个超实用功能,想移植过来却不知道从哪入手?本期视频手把手教你用免费工具吹读懂源码,找到核心代码,并轻松导入自己的项目中。关注我,免费教你学 ai 编程! 第一步,先把源码下载好,导入项目任意目录,我这里文件夹名叫 fishman。 接着直接让 ai 分 析这个目录,大家可以看我写的提示词,一定要限定,只分析这个指定目录,能看到 ai 很 快就定位到核心文件和对应代码,是不是超简单, 免费的吹完全够用,还能反复分析,直到精准找到核心代码。第二步,我们来写一个 demo, 点 html 验证功能,你可以参考我的提示词,让 ai 直接生成一个简易 demo 用来测试。既然 ai 已经分析好了原码,写出这个 demo 就 非常轻松。 接下来我们预览一下 demo, 看看效果是否符合预期。大家可以看到想要的功能已经完美实现了。 最后一步,直接让 ai 帮你复刻修改代码,改成适配自己项目的调用方式,我这里是把它转成了 ts 类文件。最后看一下项目效果是不是超简单。 总结一下,用免费的吹分析原码,定位核心代码,写 demo 验证功能。最后把代码移入自己项目,复杂业务逻辑也完全适用,效率拉满。关注我,免费教你学 ai 编程!

呃,今天呢跟大家讲一下我们的这个 esprit 这个软件啊,怎么样去编程我们 ai 夜冷啊,母头啊,这个整个的一个编程的一个流程啊,教大家怎么去编程啊,这样子一个案例啊,首先呢我们先打开这个我们的 esprit 这个软件啊,然后呢这个地方呢我们默认选择公式啊, 好,双击选择公式模板了之后呢,我们现在要做的就是我们的第一步啊,就是导入我们的一个啊, ai 夜冷母头的一个零件啊,再点击我们的文件,然后呢点输入选,输入了之后呢选择我们的文件夹啊, 找到我们的这个夜冷的这个零件啊,母头啊,本体啊可以打开啊,这个时候呢他会让你是否进行诊断,这个地方你点否啊? 啊,这样子的话呢,我们这个零件呢,他就相当于是已经把他给导进来了啊,导进来之后呢,但是呢我们呃我们还是要去把它摆正,对吧啊?这个弓箭呢怎么去摆正呢 啊?首先呢我们需要选择一个我们需要加工的一个端面,那比如说这一面呢,我们需要先加工这一面,我们先选择这个面啊,要双击点两下啊,双击点两下了之后呢上面有个控制啊,控制这里呢有个这这轴对齐啊,我们点一下这轴对齐 啊,这周大家看一下他的弓箭呢,就像是已经摆正过来了啊,摆正过来了啊,摆正过来了之后呢,我们还需要再对齐一个圆面啊,再对齐一个啊,点一下再对齐啊,下一次把整个弓箭给摆正对齐了啊, 好摆正,对齐了之后呢,我们现在就要进行我们的一个弓箭的一个设定啊,就相当于是设定我们这个弓箭,射箭的弓箭呢,我们需要点一下这个初设设置啊,弓箭设置把这个不要了 啊,公键设置出来了之后呢,我们需要双击这个键一啊,这个地方呢他会我们这里已经选了这个几何体了啊,他选中了他会变成绿色啊,变成绿色,如果他这地方没有这个几何体的话呢,你就要去选一下他啊,双击选一下他就可以 啊,选完他了之后呢我们点确定,那我们键就设好了,设好了之后呢,我们还要去设我们的毛胚啊,比如说我们的棒料毛胚,点一下棒料毛胚呢,我们公差呢,我们可以默认啊,公差可以更改, 他们可以不用改。然后呢我们现在往下啊,我们需要去设我们的这个外镜还有内镜,像我们这个是十七的,呃,十十,我们的外镜最大是十六点八五,那么我们就设到十七 啊,这个内镜的话呢,因为我们啊我们是实心实心的磅料,所以说这地方呢,我们需要设置零好,然后毛坯这地方呢我们不选中心对齐啊,我们选择底部和顶部对齐啊,点这个啊,底部边缘的话呢,我们尽量啊给他长一点啊,因为我们一般液冷零件呢,都是放都是一些啊料比较长的啊,都是走批量件的,所以说我们给个两百 好,顶部的话呢,我们就啊相当于是前面的一些余量吗?我们给个一毫米,到时候我们用呃外圆刀把它给精精掉啊,我们射好了之后呢就点回车啊,回车的时候呢,他就相当于是我们的弓箭毛胚就已经射好了啊, 啊,设好了之后呢,我们现在还要去设我们的机床啊,机床,机床呢,我们直接点确定啊,然后这里有个机床啊,设置点一下啊,这样设置点一下之后呢,我们现在要去找我们的一个机床,我们机床呢就是这个啊,两百的法拉科,两百的啊,三 e i 杠 b 的 这个啊,所以点一下,选择这个点打开,选择我们机床文件点打开啊, 好,这时候呢我们的机床呢就相当于是已经安装进来了啊,安装进来了,安装进来了之后呢,我们还要去设设定我们的一个家具啊,家具,这个家具呢在哪地方设呢啊?大家看一下啊,这个呢就是我们的机床的床体啊,然后呢我们先把我们的这个机床身给隐藏一下啊, 把计算延长生命延长点好,大家看一下我们现在主轴是没有夹具的啊,那么我们现在就要去设一个啊,去设一个夹具,夹具呢就在这个地方去设啊,点我们的这个夹具啊,点我们这个夹具呢,我们点击我们的这个啊,我们要去找我们的夹具,然后呢点我们的这个 ps 啊,这个啊,这个六零,这个六零这个老点打开,大家看一下我们的家具是不是已经射进来了,射进来了之后呢,我们这个地方呢就不用管啊,不用管,老铁,确定我们射完,我们射完我们的主轴的家具呢,我们还要去射一个背轴的一个家具背轴一个家具背轴的家具呢,也是一样啊, 点击我们这个啊机床,然后呢点家具 啊,点家具,点完家具了之后呢,我们还要我们去选一下这个打开,然后这个装配的时候呢,我们这个地方呢啊就要选择 f 二, f a 二啊,就不是 f a 一 了啊,这时候大家看一下我们这边的家具是不是已经装好了,然后点确定啊?点确定了之后呢,这个时候呢我们就要去安装我们的零件啊,安装零件我们点一下这个, 点一下我们的主轴这个家具啊,然后点一下我们的零件,大家看一下我们这零件呢,它现在里面,对吧?那么我们现在就要把它给偏移出来啊,这个偏移出来呢,我们需要在这个啊偏移这地方输入一个,比如说一百,把它偏移一百出来 啊,偏移一百出来之后呢,大家看我们磅量呢就出来了,出来我们点回车呢,它就自动的默认了啊,默认了,然后呢我们还要去创建我们的一个刀具啊。

昨天咱们分享了一般部件库吗?嗯,然后就评论区各种问题,哎,我印象最深的一个是这个端子排怎么添加?嗯,咱就依据这个问题一个一个给大家解答一下。首先呢这边我们导入完以后,看这边的插入中心,点击这个设备,然后是电气工程零部件 往下拉,这边就有一个端子,点击一下我们这边就有,然后你就直接拉出来用就可以了。如果你需要很多的话,这个右键,然后多重复制, 放到他中间会有一个框,这个框给跟他对上以后呢,我们这边就给他选择数量十二个,点击确定 就可以添加很多个了,有别的样式吗?有,这个插入里面呢还有一个端子,然后我们拉出来以后,如果我们不是想要的样子,直接选点击这个键, 然后是图形,这边也有好多按照自己各种钥匙,对,然后第二个是这个 plc 怎么添加 plc 的 部件库里面呢?已经给它导入好了,我们就首先我搜一个两维 smart, 嗯,打好了我就搜索,然后这边就有设备,嗯,我们就放到这个 下面,但是啊他的前提是你必须在插入这一页点击这个安装安装版,然后给他,必须要给他定义好,然后 点确定这边的话,你的首页也是点他的属性,在这边必须要选这个安装版才能用。然后再一个是布件库里边都有啥?你照一下,有这几个品牌的各种样式的图案的,还有电器符号都有,好。

这个 c tab 语法堂和这边这个 c tab 函数,它们到底有什么样的区别?我们这里呢花一两分钟深刻的去认识它,很多同学都会认为啊,这个 c tab 语法堂呢,它就会转换成这个 c tab 函数,我们最好呢试验一下, 因为这两个组建呢,目前功能完全一样,看它们在用起来是不是完全没有区别。我这呢做了一个例子啊,这有两个组建,一个呢使用 c tab 语法堂,一个呢使用这个 c tab 函数,然后呢我们通过另一个组建啊,用 app 组建去使用它们到 导入这两个属性。然后呢定义呢两个 ref, 这两个 ref 呢分别给它放进去啊,然后在 onmonty 的 里边呢,把两个 ref 打印出来,看一下打印上有没有什么区别。好,咱们可以看到功能上呢是没有任何区别的,然后看一下打印结果呢, 打印了两个代理对象,第一个呢是使用了 c tab 函数的,也就是这种模式,它打印出来的东西呢,跟我们五 u 二呢很像,除了我们定义的这么一些数据之外啊,还有一些五 u 的 内部成员。然后再看一下这个 c tab 鱼,把糖呢它打印出来,你会发现它是一个啥也没有的空对象。哎,这是为啥呢? 说这两者之间可以相互转换吗?那为什么会造成区别呢?那么你要了解这个问题的话,就需要借助到一个插件,是一个位子插件啊,叫做 inspect, 当你安装好这个插件之后啊,你把它加入到个位子的插件里边,它有什么用呢?通过这个插件啊,我们就可以清楚的看到每一个 ui 的 单文件组件,它编辑出来的编辑结果到底是什么? 好,咱们重新运行一下啊,好,加入这个插件过后啊,我们运行出来呢,你会发现有两个地址,一个地址呢就是这个页面的地址,另一个地址呢就是个插件给你生成的地址,你通过这个地址打开过后啊,你可以看到目前他的编辑结果到底是什么,我们只需要关注这两个主键就可以了啊,这两个,首先我们看一下这个 c tab 函数编的结果, 好,看一下结果啊,左边是我们的圆代码,右边呢是他的编结果,我们从这里呢也可以顺便看到啊,就是我反复说的,这个模板在编辑过后是压根不存在的,他会变成啥呢?他会变成一个 random 函数啊, 看这里模板是不存在的,模板里边那些创建的元素呢,会变成这里的虚拟节点 h 一 button 没问题吧?然后这里主要关注啥呢?就是我们导出这个 c tab 函数,它的编辑结果是啥?你会发现它的编辑结果就是原封不动的, 你写的是啥,那么编辑的结果就是啥?好,我们知道了这个 c tab 函数,再来看一下这个 c tab 语法堂呢,点击进去好看一下啊,我们的模板还是一样会被翻译成一个 word 函数, 然后我们这里边这个代码它会变成啥呢?你会发现呢,它确实也变成了一个 setup 函数,你看我们这里的定义的这些变量函数都会放到这里,对吧?然后呢,最终放到一个对象里边,把它们全部返回,但是你会发现有一个地方不一样,就是在编的结果里边呢,它多了这么一句话, expose。 expose 是 怎么来的呢?是通过这个 c tab 参数结构出来的,它为什么会加上这么一句话?然后这句话到底起一个什么样的作用呢?如果说你熟读过 vivo 的 官方文档,你会知道在 vivo 三里边呢,它搞出来一个 a p i 叫做 expose, 它的作用是啥呢?它的作用是手动指定向外界暴露的成员。如果说你没有指定它的话,就 就像我们刚才看到的那样,就是这个主键呢,他会把自己的那些全部成员都会暴露出去。但是如果说你指定了,比方说在我们这个 c tab 函数里边,哎,我们通过第二个参数来解构出一个函数叫 expose, 如果说你手动指定了啊 expose, 比如说只暴露 message, 那 么这样子一来,保存啊,刷新你看一下,现在暴露出来的东西就会只有一个 message, 也就这个函数,你不调用,那么它暴露的是啥?全部 你调用了,它只暴露那些你指定的,哎,这是一个非常非常重要的 a p i, 这样子一来,我们通过它就可以隐藏主键里边那些我们不希望暴露的成员。为什么不希望暴露呢?是因为如果说你暴露的过多的成员, 你就创建了一种可能性,就是外部在使用这个主键的人啊,他可以通过 rate 拿到这个主键实力,对吧?拿到主键实力过后,他是不是有那么一种可能了,我就可以通过这个 rate, 然后去操作这个主键里边的数据, 别管他应不应该,他能不能嘛?你是不是给他创建了可能性,而这一操作是不是打破了单向数据流?单向数据流一打破,那你的代码离十三就更进一步了。所以呢,为了避免这种可能性,在维柒里边就搞出来这么一个 expose, 那 么你可以通过它来隐藏自己的内部成员。如果说你把它设置为空对象,那就告诉维柒,我不希望暴露任何东西。 再刷新,你看一下是不是啥也没了,现在明白了吧,在 view 的 set up 这个语法堂里边,它就默认给你添加了这么一个东西。那些同学问了说,袁老师啊,那如果说我在语法堂里边确实想暴露一些东西怎么办呢?那我这里又拿不到这个 express 函数了。 那么这个时候呢,你就可以使用一个东西,叫做 define express。 红。什么叫红啊?红的意思就是我不参与运行,我只参与变异。什么叫变异?这个玩意就是变异。所以说学习知识呢,你就一步到位的把它学明白, 反正都是花同样的时间,其实应该是学透彻,学明白花的时间更少,因为你模糊不清的东西越多,后续的学习就会越慢,学习的过程也就会越曲折。这就是为什么要给大伙录制大师课,大师是完全免费的来领取晚上了。大师的作用就是让你把前端最重要,最核心,最能够影响你薪资高低和职业发展的知识彻底的理解清楚, 包含的是流量的渲染原理,实战循环、实战案例,比面,入题无忧,原码优化等等等等啊,这里边的任何一个点没有理解到位,在这个行业和行情里边不可能有啥成就,甚至生存都有可能是问题,所以呢,无论你是想高新就业,还是想在职提薪,都应该先来看我的这招课程。只 要领取呢,在咱们账号主页点击头像,进入账号主页,按照提示领取。可以了,来我们在这个语法堂里边试一下啊。如果说我们要手动暴露怎么办呢?那我们这里就是用 def post, 那 你说这个玩意儿不需要导入吗?不需要,为啥呢?因为它不参与运行,它只是参与翻译而已。保存你看一下,保存了过后呢,你再看一下它的编辑结果,在这里边就可以看得非常清楚。你看我们这里边使用的是什么?一个红 define expose, 然后编的结果是什么呢?编的结果变成了这个了 expose, 也就是说那个 define expose 在 运行的时候是压根不存在的。这又类似于啥?类似于 define props。 是 不是 define props 也不需要导入啊?就这个原因,它只是参与编辑,通过这个插件呢,就看得一清二楚了。

同学们好,这节课来介绍循环结构,循环结构在控制流程当中非常重要,它是依据条件是否满足循环多次的执行某段代码来完成程序的一定的功能。 我们来看一个任务,求自然数一到一百的和,那对于这个任务来说呢,我们根据之前已经学过的顺序语句可以这样来解决, 那顺序语句呢,是指的主语的来执行程序来完成功能。那要想求自然数一到一百的和,显然我们是需要将自然数一到一百逐步的加到它的和上面去。 所以我们首先呢来定义变量求和的变量,比如说用 sum 来表示, 那 sum 刚开始求和还没有加自然数之前,自然要出实化为零啊,这一点是非常重要的, 因为我们在内存当中申请变量,申请内存空间,那么 sum 它的出实值是不定的啊。内存空间当中是什么数据我们是不知道的,所以一定要记住对它进行出实化。 那 sum 定义好了以后,用它来存放和,接下来还要定义一个变量来存放我们的自然数,当然自然数初在初始的时候,它应该是一 啊。定义好了变量以后呢,接下来我们就可以逐步的将自然数加到和上面去了, 所以我们要做 sum 加负值 i 将一加到 sum 上去,那此时呢, sum 的 值为一啊,因为加了一个自然数,加完一之后,下一步要加二,因此我们要让 i 进行自加, i 本来是一,自加之后呢变成了二,那接下来就应该将二再加到 sum 上去,所以我们又写了这样的相同的语句, sum 加复制 i, 接下来爱又要有从二变成三啊,爱自家依次类推,大家考虑一下我们应该做多少条这样的语句就可以完成自然数一到一百求和呢? 显然是要做一百行啊,我们要写一百次这两条语句才能完成这个功能。 那在程序当中多次重复的书写这样相同的语句显然是非常不方便的啊,如果我们加的更多的话,那我们程序语句的条数会更多, 那 c 加加呢?非常的友好,他提供了循环结构啊,使用循环结构来提供重复处理的能力。 当一段代码啊需要重复执行的时候,他有了这样一个非常简变的表示方式,也就是用循环 啊,用循环只要写一次这样的被重复执行的语句,那么我们再用循环告知计算机啊,多次处理就可以了。 那 c 加幺的循环结构呢?它包括了这样三种啊,报语句 while 语句和 do while 语句都可以完成循环的功能。