粉丝6.1万获赞32.1万



在正规的拍摄项目开发中,需要创建拍摄的原代码文件,我们这次来看一下如何进行原代码文件的创建以及原代码文件的执行。 在目录中点击鼠标右键,选择新键文本文档,随后输入文件名称点 py, 千万记住,拍信程序的文件后缀统一都为 py。 于是我在这输入一个哈喽沃尔的 编写完成后进行保存,随后在命令行工具中直接输入拍摄,后面跟上文件名称,我们就可以得到我所需要的程序执行结果。做有态度的编程教育,我是李新华,关注我,学习更多编程知识!

我在饿了么 ui 的源码里啊,发现一个隐藏的指令特别好用,就这个颗粒。 call side, 顾名思义呢,就是它可以监听到某个元素以外的区域被点击。 使用起来也很简单啊,先把它导进来,然后呢,注册成指令就可以用了。像这样 we click outside 制定到一个方法,效果呢,就是这样,大家看我点击这个元素内部没有什么反应,然后点击这个元素以外的区域,大家看,只要是这个网页的任何区域,他都会被触发。

那我们来给大家讲一下这个组建的构建过程,组建,构建过程, ok, 那这里的话啊,又是会设计到一个 啊,我们的一个语法术的一个解析,对吧?语法术的一个解析啊,那我们想想啊,大家在整个的一个, 就整个这个配置文件里面,我们是不是可以把它变成一个语法?最顶层的是这个 configuration, configuration 里面有 map, map, map 里面也有 select, 对吧? select 里面有这个脚本啊,其实它就是采用这种树状的这个一个结构,对吧?好,那么这里的话,我们就把这个树状结构的话统一的给大家啊,用这个土给大家展示一下啊, 那我们直接给他放过来啊,好,那这个的话,我们可以看一下,我们的这个左边,就是我们的这个解析的这个配置文件的数,对吧?然后 这个右边,哎,那就是他这棵树啊,所最终啊转化成了一个配置的一个对象,对吧?配置的对象啊, 非常的清晰,对吧?首先我们的这个迈普康菲格迪 sm, 他最终会变成康菲格瑞森,对吧? 然后在 map 里面他会解析 x 秒和注解,对吧?那么分别对应的这个注解和 x 码,他们又会对应不同的指元数来进行解析,对吧?那我们的 slack up 啊,不对的这里面的 sound 啊,不对的注解,那么最终会变成我们的 map statement, 对啊, mapsadema 啊,那这个 mapsadema 的话,它其实非常非常非常非常的重要,对吧?但是的话,我们好像从来没有跟大家讲过这个 mapsadema 是干什么的,对吧?好,为什么呢?因为我默认大家已经 理解了,已经知道这个 map statement 是什么,对吧?好,那今天是最后一节课,我觉得再不讲的话就没机会讲了啊,那我还是跟大家讲一下所谓的 map statement 就是我们的 色口印色啊,色口印色,或者把它叫做色口色名,知道吧?在这里面就是对应的是我们的 slot 啊,不,对的,真山改茶, 这个,这个大家知道吧?啊,应该都知道,应该都知道啊,好, 还加课不?加了啊,加了,很多同学都急着上内体课了啊。好,那么除了这一个,这是当然,这是这两这几个比较主要的这个,呃,这个实力主要的之外,还有一些辅助的,辅助的,比如说像我们的缓存,还有包括我们的开启 pass 啊,这些都是做缓存的,那最后的话它会生成一个什么?它会生成一个缓存的一个空间,那缓存的空间对应的就是我们的 啊,一定要记住是我们的二级缓存,虽然说这个二级缓存和一级缓存的话,他们是用的同样的接口,对吧?好, 但是一定要注意啊,这里面所解析出来的就是我们的二级缓存,对吧?一个是声明缓存空间,一个是啊进行缓存空间的引用,对吧?那这里面的话有一个小小的坑啊,对吧?有小小的坑,大家还记不记得啊?我给大家讲过的, 看一下有没有同学记得啊?就是说如果说我在这个 xm 里面配置的这个 catch cash 啊,然后在这上面也配着这个 catchy names pace, 那么这个时候他会报一个错啊,或者怎么说呢?就说你两个,就说你两个 缓存使用了同一个空间啊,那么这个时候就不可以不允许这么配置,对吧? ok, 那么这个时候的话啊,你就不需要了,对吧?那你就只用,呃,只配置一个,比如说只配置这个 x 码里面的注解,你的 cash, 对吧? 那这个时候你这里面没有配置,但,但是我可以告诉大家,你在 xm 里面去啊,使用这个 xm 相关的一些查询的方法的时候,是访问不到这个缓存空间的, 知道吧?哎,这个大熊一句话把它讲完了啊?啊,没错啊,就说 x 秒和这个注解,他们两个的缓存空间啊,不是同一个啊,不是同一个, 你需要通过这种引用的方式啊,引用方式啊,其实我也搞不懂啊,就是为什么这个官方啊,就是 不认定他这是一个伴或者是一个问题的,对不对? 其实他可以改一下,对吧?很简 就改一下就可以了,为什么?因为这个缓冲空间的话,他本身是,呃,在我们的这个全局的配置里面,对不对?他明显是可以改的啊,明显是可以改的, 那待会的话我们也可以跟大家讲一下他们解析配置的时候的话,他为什么,呃,这两个值啊,他不能够啊,够用啊,这个原因。好,那么接下来的话啊,我们再来给大家讲一下这个 come figue rea 啊,他整个的一个解析过程啊,解析过程啊, 就说,哎,我们怎么从这个文件最后变成这些对象呢?那,那这个的话我们是通过一些,呃,持续图啊,持续图,那这个的话我们是用一个, 因为我们先来看这个康菲微选啊这个解析过程吧,康菲微选的一个构建过程,也是这个对象的过建构建的一个过程啊, 那这个的话我们就直接给大家看原版运动网了啊,因为原版运动网里面的话,我们其实是有呃,给大家准备这东西的, 打开圆满运动网,然后打开这个地图,我们这里面有一个出土画,在这里啊,在这里出土画, ok, 那我们把这个拉宽一点点,那首先的话我们是要有一个绘画工厂构建器,对吧? 那在这里的话他就会去调用我们的这个六的方法,这个六的方法他所依赖的就是我们的康飞哥 xml, 康飞哥六的啊,解析器好什么都没有啊,其实就是一一堆参数直接丢给这个解析器,那这个时候的话他就可以开始解析了啊, 解析,解析什么呢啊?解析我们的这些根结点以及我们的入口,那这里就会,对呢我们的属性配置别名插件 object factory 啊, object factory。 那这个 object factory 啊,是什么时候要用到 啊?是我们的对应的这个 mat object 啊。呃,要用到,那因为我们 matter object 去给他设置属性的时候,他会自动创建我们的对象,那如果说你想要对这些自动创建的对象进行自定义的话啊,那你就可以去设置这个 object factory, 那一般情况下我们是不会对他进行自定义的啊,也许一般情况下他默认就是采用这种啊反射的方式来创建我们的这个 factory 啊,这个这一点大家能理解吧,对吧?然后这个也是一样的啊,我们这个 这个包装器啊,工厂包装器,对吧?引用的一个工厂这三个都是用在这个 mate, 哦不,这个里面,对吧?但是这三个很少很少用,很少很少用啊,然后这个 c 停死,呃, element, 那就是去解析我们的这个 c 停死啊,全局的配置文件,对吧?全局的配置文件, 那要不要调试一下这个?这个好像也没啥好调试的啊。好,然后其他的就是我们的这个,呃,全局的 环境信息,还有我们的对的贝斯 id 啊,就是我们的数据库的一个名称,一般情况下这些都没有啊,只有跨数据原来是跨数据库的时候才会用到。那最重的还是在这个啊, map, element 在这里面,在这里面啊,他会有,呃,四种类型的参数。哪四种类型的参数呢?第一种是我们的 package 啊,那么他会 去扫描整个包,对吧?扫描整个包啊,他其实所谓的扫描整个包也是交给我们的这个注册器啊,来进行注册。然后还有一种是我们的这个 resource, resource 啊,第二种,第三种是我们的这个 url, 第四种就是我们的 class, 对吧?然后我们的这个 package 和我们的 class 啊,他们所对应的就是我们的注解的解析。 url 和 resource 所对应的就是我们的 xml 啊。呃, excel map 的一个解析, ok, x men map 的解析啊。好,那这个的话其实就是我们这个 configuration 对象的一个解析过程啊,那解析完了之后的话,那么它就会啊,会生成这个 configuration 对象啊, configuration 对象 啊,就在这里面 会最后解析完了之后啊,就是我们的这里, 就在这里啊,解析根据点,解析完了之后, 最后就是,呃, f 三,我们打开啊,在这里面我们就会,呃,帮我们生成一个啊,对应的这个对象 啊,就这个 retain configuration 啊,在这里面构建啊,解析生成。

兄弟们,我才发现科尔姆还有这个东西叫 log point, 我们都知道断点叫 break point, break 打断嘛?那 log point 顾名思义就是 日志点,它可以让我们在不修改原码的情况下,在控制台输出任何我们想要的东西哈。嗯,看过我视频的老粉可能都知道,我之前在调试第三方内裤的时候,如果想要去输出打印一些值,我只能去修改原码,在原码里加 condslog。 那现在不用了, 举个例子啊,我现在就想在他这个排序的方法里去输出一些值啊。首先我们先找到那个方法,因为我点击这个小箭头就可以排序,所以呢,我们先找到这个小箭头,看一下有什么线索。大家看他有一个类名叫 salt cat, 我们先找到这个类,然后呢, 我们去 network 里边重新加载一下这个网页,把所有的 g s 都抓到,大家看,然后我们用 option ctrl 加 f, windows 应该 ctrl shift 加 f, 然后我们粘贴过来啊,搜一下它还有两个地方,这个是 c s s, 肯定不是,我们看这个, 把这关掉,看看这有一个这个 lay, 然后呢 on click, 他调用了这个方法,我们来搜一下 handles out, click 在这里。然后呢我们就找到这个方法了,对吧?我们先试一下,他是打个断点 好点一下,注意他就停到这了,说明走这个方法没问题。然后呢往下我就想把这个断电线去掉,我就想在比如说在这想输出一下这个 a 变量的值,那正常点击是加断点,我们可以右键添加 这个 logpoint, 然后注意这块要选 logpoint。 然后呢我们在这输入我们想要打印的东西,比如说先随便加个足串,然后可以像看错 log 一样在这可以打印多个,比如 a 再加一个 o, 然后回车这样的话出现一个粉色的说明,加上了。注意这时候我们回到 ctrl, 我点一下再看他就有了这个变亮,然后这是那个 o 就可以了。
