ICode9

精准搜索请尝试: 精确搜索
  • 《程序员的修炼之道》阅读笔记32022-06-10 08:33:25

    第26节 解耦与得墨忒(tei)耳法则 1、把你的代码组织成最小单位(模块),并限制他们之间的交互。如果随后必须替换某个模块,其他模块仍能够继续工作。 2、应使耦合减至最少。对象间直接的横贯关系,有可能很快带来依赖关系的组合爆炸。比如对某个模块的“简单”改动会传遍系统中的一些无关模

  • 关于重写,重载,重构2022-06-02 22:03:12

    重写 就是在子类中将父类的成员方法的名称保留,重写成员方法的实现内容。 重写成员方法的实现内容,更改成员方法的存储权限或是修改成员方法的返回值类型。 重构 在继承中还有一种特殊的重写方式,子类与父类成员方法的返回值类型,方法名称,参数类型及个数完全相同,唯一的而不同就是方法

  • swift - 代码段的重构2022-06-01 10:02:41

      最近发现旧工程很多代码段书写的问题, 查找列举一些常见的代码常识解读知识以提供参考,如何使用Swift提高代码质量。 Swift特性 富有表现力 Swift提供更多的编程范式和特性支持,可以编写更少的代码,而且易于阅读和维护。 基础类型 - 元组、Enum关联类型 方法 - 方法

  • NO.2 - 图形推理2022-05-20 00:01:24

      数量规律                   线数量     端点也是奇点                                                                         空间重构                                      

  • 可持久化2022-05-18 20:32:35

    乱写一气。 可持久化线段树 P3402 可持久化并查集 按秩合并,将并查集的 \(\mathrm{fa}\) 和 \(\mathrm{size}\) 数组可持久化。时间 \(\mathcal{O}(n+m\log^2 n)\)。 P3293 [SCOI2016] 美味 从高位到低位确定答案,对每一位都在可持久化线段树上二分一下。时间 \(\mathcal{O}(n\log n

  • 爬虫 - 解决 Executable path has been deprecated please pass in a Service object in Selenium Python 问题2022-05-01 11:31:34

    # 1. 错误描述 # 2. 错误原因 出现 DeprecationWarning 警告的类型错误:该类型的警告大多属于版本更新时,所使用的方法过时的原因,他在当前版本被重构,还可以传入参数,但是在之后的某个版本会被删除. 查询当前版本重构后的函数,是之前的 executable_path 被重构到了 Service 函数里,如

  • 重构代码架构使具有良好扩展性2022-04-28 23:01:40

    以前觉得大部分公司都需要高并发、高可用,这些才是主要发展方向。项目已经上线一年了,最近因业务原因需要快速迭代上线,带着几个开发三天一起接入了一个WMS系统,并将流程并入我们现有流程当中,涉及到计算库存、库龄、资方借贷等很多节点,突然感觉代码的可维护性变的比较差,虽说有业务需求

  • 如何解决过长函数问题呢?2022-04-24 01:34:29

    坏味道:Long Method(过长函数)重构的手段很简单:Extract Method,积极抽取函数或方法,隐藏细节保持职责单一。 如果较短的注释不能覆盖方法的含义,可能是这个方法职责不单一,可以考虑重构这个方法。方法、变量的命名尽量见名知意,避免用注释再解释一遍。   如何解决夸夸其谈未来性这种代码

  • 2022.17 技术人书单2022-04-23 19:33:02

    读书是投资自我性价比最高的方式,是开阔自己视野、提升自己认知的最快捷方式,今天是第26个世界读书日,就推荐一些个人看过或最近想看的技术书吧。从网上找了几个书单,发现目前想说的书都已有了,就从他们的书单中摘录一下,点击链接可以看到原作者更多的推荐介绍。重构 改善既有代码

  • Linux驱动开发三.驱动框架重构2022-04-11 00:03:10

    通过前面两章内容我们先后做了个虚拟设备驱动,还成功共过驱动文件操作GPIO的点亮了LED,但是那个驱动的架构是有些问题的: 需要自己设定主次设备号,并且要在去驱动中定义好设备号。移植性差,在A机子开发的驱动放在B设备上可能设备号被占用,需要重新i修改驱动,并且要手动查询哪些设备号可

  • NOIP 2013 提高组 洛谷P1967 货车运输 (Kruskal重构树)2022-04-04 19:33:51

    题目: A 国有 nn 座城市,编号从 11 到 nn,城市之间有 mm 条双向道路。每一条道路对车辆都有重量限制,简称限重。 现在有 qq 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。     对于每一组询问,相当于求点x到点y中所有路径中最小边权的

  • 《机器与人》(读至第一章)2022-03-31 07:31:56

    《机器与人》 埃森哲与人工智能 我们在人工智能时代扮演什么角色? 从机械模式到有机模式 所谓的人工智能就是通过感知、理解、行动和学习来扩展人类能力的系统。 机器实现的传统工序自动化是流水线操作,逐步完成,顺序相连,符合标准,具有可重复和可测量性,并且多年来已经通过各种“工时与

  • 深度学习中的互信息:无监督提取特征2022-03-26 01:02:14

    1 自编码器   特征提取是无监督学习中很重要且很基本的一项任务,常见形式是训练一个编码器将原始数据集编码为一个固定长度的向量。自然地,我们对这个编码器的基本要求是:保留原始数据的(尽可能多的)重要信息。   那么我们怎么知道编码向量保留了重要信息呢?一个很自然的想法是这个

  • 【软件】重构与架构2022-03-19 13:36:31

    什么是重构 重构是指在不改变代码行为的前提下,重写代码,使其更加简洁,易于服用 这是核心技能,并且经常我们在自己没有意识到的情况下使用 什么是软件架构 就像生物一样,软件系统通常由很多较小的部件组成,每个部件擅长做一件事。将这些部件组合起来,一起工作,可形成更大的软件系统。术语

  • 【网络重构】理解与实现基于线性模型的图重构2022-03-08 20:01:00

    什么是网络重构 本文省略大量复杂网络、图重构预备知识,并以极简化的方式介绍基于网络博弈产生的动力学数据进行线性图重构的过程。 网络重构的意义 大数据中有一类数据是由复杂网络代表的实际动力学系统产生的。 由拓扑结构中各部分生成的这部分数据可以被测量,但对产生此类数据

  • 如何在开源项目中做重构?2022-03-02 18:04:40

    作者: xuanwo@Datafuse-Labs 最近完成了 Databend 存储模块的大重构,在不阻塞现有功能开发的前提下,基本无痛的完成了功能的实现。本文总结了我个人的一些经验,期望能够带来一些启发。 做重构不易,尤其是在一个相当活跃的 codebase 上。Databend 现在每周有 40+ PR 被 merge,在过去的一

  • python 代码规范2022-03-02 16:02:20

    python的import顺序 按照如下优先级顺序来import模块: import标准库 import三方库 import cv系列 import torch系列 import torchvision系列 import deepvac系列 import 本项目 >>> import this The Zen of DeepVAC, by Gemfield 1.漂亮胜于一切; 2.可读性很重要; 3.变量名即

  • 如何解决代码中if…else 过多的问题,kotlin常量2022-03-02 00:00:35

    适用场景 适合条件分支很多多,对程序扩展性和易用性均有较高要求的场景。通常是某个系统中经常遇到新需求的核心功能。 实现与示例 很多框架中都能看到这种模式的使用,比如常见的 Spring MVC。因为这些框架很常用,demo 随处可见,所以这里不再上具体的演示代码了。 这个模式的重点

  • 重构思维系列-如何写出好代码12022-03-01 23:03:30

    package service.alarmClock; import javax.sound.sampled.*; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Calendar; public class AlarmClock { /** * 闹钟提醒-功能介绍: * 每当早上、中午、晚上

  • 我来告诉你代码重构有什么好处2022-03-01 10:00:40

    在本指南中,您将了解重构源代码的所有内容:好处、挑战、工具和最佳实践,以及重构和技术债务之间的区别。 一个人在他的笔记本电脑上工作A man working on his laptop computer 我们都在寻找清理代码、降低复杂性和改进功能的方法。重构提供了前进的道路。 本指南将涵盖以下主题: 什

  • 数字重构2022-02-27 11:31:42

    数字重构 给定两个正整数 $a$ 和 $b$,均不含前导 $0$。 现在,请你对 $a$ 进行重构,重新排列其各位数字顺序,得到一个不含前导 $0$ 的新正整数。 要求新正整数在不超过 $b$ 的前提下,尽可能大。 输出新正整数。 注意,我们允许新正整数等于 $a$,即保持原样不变。 输入格式 第一行包含一个正

  • 重构二叉树2022-02-19 10:35:02

    根据后序中序重构二叉树,并输出层次遍历模板 1 /**\ 2 input: 3 7 4 2 3 1 5 7 6 4 5 1 2 3 4 5 6 7 6 7 output: 8 4 1 6 3 5 7 2 9 \**/ 10 #include <bits/stdc++.h> 11 12 using namespace std; 13 14 const int N = 40; 15 16 int a[N], b[N];//后序 中序 17 1

  • 代码重构之道(二)2022-02-02 11:59:37

    过长参数列 太长的参数列难以理解,太多的参数会造成前后不一致、不容易使用,而且一旦你需要更多数据,就不得不修改它。如果将对象传递给函数,大多数修改都将没有必要。 发散式变化 如果某个类经常因为不同的原因在不同的方向上发生变化,那么此时也许将这个对象分成两个会更好,这么

  • 代码重构之道(三)2022-02-02 11:58:55

    夸夸其谈未来性 企图以各种各样的钩子和特殊情况来处理一些非必要的事情,这种坏味道就出现了。如果用到了那就值得去做,如果用不到那就不值得,只会挡你的路,所以把它挪开吧。 如果你的某个抽象类其实没有起到太大的作用,函数上的某些参数未被使用…可以移除它们了。 概念: 钩子就是

  • 代码重构之道(一)2022-02-01 17:32:40

    重构原则 何为重构 对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。 另一种解释是:使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。 重构不止是代码整理,它提供了一种高效且受控的代码整理技术 也就是在不改变代

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有