#之道

《架构整洁之道》之函数式编程

函数式编程语言中的变量是不可变的。为什么不可变性是软件架构设计需要考虑的重点呢?为什么软件架构师要操心变量的可变性呢?答案显而易见:所有的竞争问题、死锁问题、并发更新问题都是由可变变量导致的。如果变量永远不会被更改,那就不可能产生竞争或者并发更新问题。如果锁状态是不可变的,那就永远不会产生死锁问题。换句话说,一切并发应...

《架构整洁之道》之面向对象编程

面向对象是封装、继承、多态三项的有机组成。通过采取封装特性,我们可以把一组相关联的数据和函数圈起来,使圈外面的代码只能看见部分函数,数据则完全不可见。譬如,在实际应用中,类中的公共函数和私有成员变量就是这样。继承的主要作用是让我们可以在某个作用域内对外部定义的某一组变量与函数进行覆盖。多态是函数指针的一种运用。综上,我...

《架构整洁之道》之结构化编程

Dijkstra很早就得出的结论是:编程是一项难度很大的活动。一段程序无论复杂与否,都包含了很多的细节信息。如果没有工具的帮助,这些细节的信息是远远超过一个程序员的认知能力范围的。而在一段程序中,哪怕仅仅是一个小细节的错误,也会造成整个程序出错。Dijkstra提出的解决方案是采用数学推导方法。他的想法是借鉴数学中的公...

《架构整洁之道》之两个价值维度

对于每个软件系统,我们都可以通过行为和架构两个维度来体现它的实际价值。软件研发人员应该确保自己的系统在两个维度上的实际价值都能长时间维持在很高的状态。不幸的是,他们往往只关注一个维度,而忽视了另外一个维度。更不幸的是,他们常常关注的还是错误的维度,这导致了系统的价值最终趋降为零。软件系统的行为是其最直观的价值维度。程序...

《架构整洁之道》之编程范式总览

结构化编程是第一个普遍被采用的编程范式(但是不是第一个被提出的),由EdsgerWybeDijkstra于1968年最先提出。与此同时,Dijkstra还论证了使用goto这样的无限制跳转语句将会损害程序的整体结构。结构化编程范式归纳:结构化编程对程序控制权的直接转移进行了限制和规范。编程领域中第二个被广泛采用的编程范...

《架构整洁之道》之设计与架构究竟是什么

二者没有任何区别。“架构”这个词往往使用于”高层级”的讨论中。这类讨论一般都把”底层”的实现细节排除在外。而”设计”一词,往往用来指代具体的系统底层组织结构和实现的细节。但是,从一个真正的系统架构师的日常工作来看,这样的区分是根本不成立的。举个例子说明:以给我设计新房子的建筑设计师要做的事情为例。新房子当然是存在着既定...

Js代码简洁之道

如果你关注代码本身和代码的编写方式,而不是只关心它是否能工作,那么你写代码是有一定的水准。专业开发人员将为未来的自己和“其他人”编写代码,而不仅仅只编写当前能工作就行的代码。在此基础上,简洁代码可以定义为自解释的、易于人理解的、易于更改或扩展的代码。以下列表一些好编写方式,仅供参考,当然,如果你有更好的方式,欢迎留言。...
代码星球 ·2020-12-24

Js代码整洁之道

一、前言最近在做一些项目重构的工作,看了不少脏乱差的代码,身心疲惫。本文将讨论如何编写整洁的代码,不求高效运行,只求可读性强,便于维护。 二、为什么要写简洁的代码作为一个合格的程序员,写出简洁的代码是基本的职业素养。相信绝大部分的程序员都不会故意写恶心代码的,无论是对自己或者对别人都没有任何好处。那么,是什么...
代码星球 ·2020-12-24

PHP 数组使用之道

https://laravel-china.org/articles/14159/the-way-to-use-the-php-array这个教程我将通过一些实用的实例和最佳实践的方式列举出PHP中常用的数组函数。每个PHP工程师都应该掌握它们的使用方法,以及如何通过组合使用来编写更精简且易读的代码。另外,我们提供了相...
代码星球 ·2020-11-21

Matlab代码优化之道

关于什么是“PerformanceAcceleration”请参阅matlab的帮助文件。1、只有使用以下数据类型,matlab才会对其加速:logical,char,int8,uint8,int16,uint16,int32,uint32,double而语句中如果使用了非以上的数据类型则不会加速,如numeric,c...
代码星球 ·2020-11-05

大数据处理之道(十分钟学会Python)

一:python简介(1)Python的由来Python(英语发音:/ˈpaɪθən/),是一种面向对象、解释型计算机程序设计语言,由GuidovanRossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制...

《程序员修炼之道:从小工到专家》读后感

  为了提高部门同事研发的整体能力与水平,按照公司规划拟定了"一周一本书"学习计划。这是推荐给同事的第一本书,学习周期:2020年4.4~4.11。  本书一共8章,主要是针对编程的实效进行一系列的阐述,它并不偏向于纯技术或者代码技术的实现,更没有详细介绍项目开发中程序员担当的角色。但是读完本书却丰富了自己对一名程序员...

跨域问题,解决之道

跨域问题,是由于JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象。换句话说,只有JavaScript存在跨域问题。不同源访问,就算是跨域了哟。那什么才算同源呢?一般来说,同源,即同一来源,包括主机名、协议和端口号。例如,http://blog.720ui.com 和 http:/...
代码星球 ·2020-08-01

Oracle数据库中心双活之道:ASM vs VPLEX

来源https://www.cnblogs.com/wenjiewang/p/7460212.html 双活方案对比:ASMvsV-PLEX作者:王文杰Oracle公司PrinciplesystemanalystOracle高级服务部Oracle数据库中心的灾备的演变,经历了多年的演变从最初的冷备份,到热备份...

克劳德·香农(信息论之父):天才的解决问题之道

克劳德·香农花了差不多10年,制定了一套完整的、具有开创性意义的信息理论。一开始在研究生院时,他只是想给当时的众多信息技术(如电话,收音机,电视机)建立一套通用的技术基础。直到1948年,他发表了一篇名为《通信的数学理论》的论文。他的重大贡献可不止这篇论文。当他还在MIT攻读硕士时,年仅21岁的他发表了一...
首页上一页123下一页尾页