草庐IT

思维导读

全部标签

让泛型的思维扎根在脑海——深刻理解泛型

1.前言往往一些刚接触C#编程的初学者,对于泛型的认识就是直接跳到对泛型集合的使用上,虽然微软为我们提供了很多内置的泛型类型,但是如果我们只是片面的了解调用方式,这会导致我们对泛型盲目的使用。至于为什么要使用泛型,什么情况下定义属于自己的泛型,定义泛型又能为程序带来哪些好处。要理清这些问题,我们就必须深刻理解泛型的本质,形成泛型编程的思维方式。接下来我将基于一个基础示例,然后通过需求不断的演化示例,从而让泛型在关键时刻脱颖而出,以便让我们能够深刻体会泛型的作用。假设.NET没有为我们提供用于存储数据的集合,而我们需要一个能够用于存储string元素的集合,基于这个情况我们自定义了一个用于存储字

让泛型的思维扎根在脑海——深刻理解泛型

1.前言往往一些刚接触C#编程的初学者,对于泛型的认识就是直接跳到对泛型集合的使用上,虽然微软为我们提供了很多内置的泛型类型,但是如果我们只是片面的了解调用方式,这会导致我们对泛型盲目的使用。至于为什么要使用泛型,什么情况下定义属于自己的泛型,定义泛型又能为程序带来哪些好处。要理清这些问题,我们就必须深刻理解泛型的本质,形成泛型编程的思维方式。接下来我将基于一个基础示例,然后通过需求不断的演化示例,从而让泛型在关键时刻脱颖而出,以便让我们能够深刻体会泛型的作用。假设.NET没有为我们提供用于存储数据的集合,而我们需要一个能够用于存储string元素的集合,基于这个情况我们自定义了一个用于存储字

python数据分析与可视化【思维导图】

python数据分析与可视化常用库numpy+matplotlib+pandas思维导图图中难免有错误,后期随着学习与应用的深入,会不断修改更新。当前版本号:1.0numpy介绍NumPy是什么?NumPy是使用Python进行科学计算的基础软件包。除其他外,它包括:功能强大的N维数组对象。精密广播功能函数。集成C/C+和Fortran代码的工具。强大的线性代数、傅立叶变换和随机数功能。matplotlib介绍Matplotlib是什么?Matplotlib是一个Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。pandas介绍Pandas是什么?Pand

python数据分析与可视化【思维导图】

python数据分析与可视化常用库numpy+matplotlib+pandas思维导图图中难免有错误,后期随着学习与应用的深入,会不断修改更新。当前版本号:1.0numpy介绍NumPy是什么?NumPy是使用Python进行科学计算的基础软件包。除其他外,它包括:功能强大的N维数组对象。精密广播功能函数。集成C/C+和Fortran代码的工具。强大的线性代数、傅立叶变换和随机数功能。matplotlib介绍Matplotlib是什么?Matplotlib是一个Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。pandas介绍Pandas是什么?Pand

全球名校AI课程库(33)| MIT麻省理工 · 计算思维导论(Julia)课程『Introduction to Computational Thinking』

?课程学习中心|?计算机基础课程合辑|?课程主页|?中英字幕视频|?项目代码解析课程介绍MIT18.S191『IntroductiontoComputationalThinking:Mathfromcomputation,mathwithcomputation(Julia)』是全球顶级院校MIT麻省理工开设的计算机课程,创造性地将『ComputerScience计算机科学』『Mathematics数学』『Applications应用』三个领域的内容,融合进这门交互式编程课程。课程围绕计算科学及其应用,以Julia这门超热的新兴编程语言为实践依托,讲解了计算思维与数据计算科学方向的基础知识与建模

全球名校AI课程库(33)| MIT麻省理工 · 计算思维导论(Julia)课程『Introduction to Computational Thinking』

?课程学习中心|?计算机基础课程合辑|?课程主页|?中英字幕视频|?项目代码解析课程介绍MIT18.S191『IntroductiontoComputationalThinking:Mathfromcomputation,mathwithcomputation(Julia)』是全球顶级院校MIT麻省理工开设的计算机课程,创造性地将『ComputerScience计算机科学』『Mathematics数学』『Applications应用』三个领域的内容,融合进这门交互式编程课程。课程围绕计算科学及其应用,以Julia这门超热的新兴编程语言为实践依托,讲解了计算思维与数据计算科学方向的基础知识与建模

《分析模式 可复用的对象模型》导读

这是MartinFowler在《企业应用架构模式》之前出的一本二十多年前的书,中译本是2020年4月才出版,由与MartinFowler在同一家公司ThoughtWorks的钟敬翻译。我在团队内部向小伙伴们介绍架构方面知识时,提起ThoughtWorks这家公司,一直将其评价为软件界的圣殿。信息系统的架构,抛开单机模式不谈,从C/S模式到B/S模式的架构迁移,大致就是这二三十年间软件开发领域发展轨迹的一个总体轮廓。在这背后驱动的,很可能离不开以MartinFowler《企业应用架构模式》为代表提炼出来的三层架构和MVC模式等。(我画的一个整合模型图)而相对于ThoughtWorks这些专业软件

《分析模式 可复用的对象模型》导读

这是MartinFowler在《企业应用架构模式》之前出的一本二十多年前的书,中译本是2020年4月才出版,由与MartinFowler在同一家公司ThoughtWorks的钟敬翻译。我在团队内部向小伙伴们介绍架构方面知识时,提起ThoughtWorks这家公司,一直将其评价为软件界的圣殿。信息系统的架构,抛开单机模式不谈,从C/S模式到B/S模式的架构迁移,大致就是这二三十年间软件开发领域发展轨迹的一个总体轮廓。在这背后驱动的,很可能离不开以MartinFowler《企业应用架构模式》为代表提炼出来的三层架构和MVC模式等。(我画的一个整合模型图)而相对于ThoughtWorks这些专业软件

读函数式编程思维笔记01_演化的语言

1. 范式转变1.1. 学习一种全新的编程范式,困难并不在于掌握新的语言1.1.1. 真正考验人的,是怎么学会用另一种方式去思考1.2. 计算机科学的间歇式进步,好思路有时搁置数十年后才变成主流1.3. 第一种面向对象的语言Simula67是1967年发明的,可是直到1983年诞生的C++终于流行起来以后,面向对象才真正成为主流1.4. 早年Java总被认为太慢,内存耗费太高,不适合高性能的应用,如今硬件市场的变迁把它变成了极具吸引力的选择1.5. 命令式编程风格常常迫使我们出于性能考虑,把不同的任务交织起来,以便能够用一次循环来完成多个任务1.6. 函数式编程用map()、filter()这

读函数式编程思维笔记01_演化的语言

1. 范式转变1.1. 学习一种全新的编程范式,困难并不在于掌握新的语言1.1.1. 真正考验人的,是怎么学会用另一种方式去思考1.2. 计算机科学的间歇式进步,好思路有时搁置数十年后才变成主流1.3. 第一种面向对象的语言Simula67是1967年发明的,可是直到1983年诞生的C++终于流行起来以后,面向对象才真正成为主流1.4. 早年Java总被认为太慢,内存耗费太高,不适合高性能的应用,如今硬件市场的变迁把它变成了极具吸引力的选择1.5. 命令式编程风格常常迫使我们出于性能考虑,把不同的任务交织起来,以便能够用一次循环来完成多个任务1.6. 函数式编程用map()、filter()这