使用管道代替循环
在《重构》这本书里提到了一个改善程序的方法,“以管道取代循环(Replace Loop with Pipeline)”。
12345const names=[];for(const i of input){ if(i.job==="programmer") names.push(i.name);}
1const names=input.filter(i => i.job==="programmer").map(i=>i.name);
12345const nums=[10,20,111,222,444,40,50];let total=nums.filter(n=>n<100).map(n=>n*2).reduce((pre,n)=>pre+n);console.log(total);------------------------------------------------------------------------240
集合管道(collection pipeline)允许 ...
颂歌
多年以后,当他躺在一张逼仄的床上,岁月的痕迹无情地刻在他的脸上,浑浊的老眼已经迷瞪地无法睁开的时候,他依然清楚地记得,在他三十三岁那年,他从一场噩梦中惊醒,回忆起很久以前的往事。
那时他睡的床还很大、很舒服,他的生活很考究,他的床单、被罩、床垫、枕巾无一不是最好、最贵的。他的客厅里焚着名贵的香料,这大概已经是古人所用的东西,但他却偏偏喜欢。在每晚睡前,他都会点上香料,他认为香料可以帮他入眠,他是一个严重的失眠者,尽管他每天都看起来精神饱满,面带着笑容。
但不可避免,淡淡的幽香总会使他联想到一切受阻的事情,但这种事情好像永远也无法同他联系起来。再过几天,一件也许是他命运中最重要的事情将会发生,他将成为公司里最为年轻的合伙人。这个每个具有理想的年轻人梦寐以求的事情,,在他这里仿佛是唾手可得。但他却并不十分高兴,在满屋氤氲的香气中,他甚至闻到了苦杏仁的味道。
那大概是很久很久以前的事情了,他大概已经把她的模样忘却了,但总有一根像是浸了水的绸带绑在他的心上,他愈是挣扎,这绸带便缚的愈紧,就同他的失眠一般,越是努力地想要入眠,却又偏偏更加心烦迷乱。
“你应当知道,这件事情已经永远无法更改了”, ...
深入理解Laravel
组件化开发与composer
composer
组件安装
自动加载
PSR-0和PSR-4标准
1234567{ "autoload":{ "psr-4":{"APP\\":"app/" "BPP\\":"bpp/" } }}
文件包含
include和require关键字
include和require关键字用于包含并运行指定文件。两者作用几乎一样,只是处理失败的方式不同,require在出错时会导致脚本程序运行终止,而include只是发出警告,而脚本程序会继续运行。
类的自动加载
类的自动加载可以通过魔术方法__autoload(string $class)实现,也可以通过函数spl_autoload_register注册一个自动加载方法,相应实例如下:
1234function __autoload($class){ require_once($class.&q ...
Docker学习笔记
Docker是什么
将程序、开发环境、配置打包放到一个容器中,不需要在部署时进行环境的配置。解决了运行环境和配置问题软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。
Docker是基于Go语言实现的云开源项目。
Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是对应用组件进行封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及其运行环境能够做到“一次封装,到处运行”。
Docker包含两方面技术:
镜像技术:“镜像即应用”,(运行文档、配置环境、运行环境、运行依赖包、操作系统发行版、内核)
Docker能做什么
之前的虚拟机技术:
虚拟机就是带环境安装的一种解决方案。
它可以在一种操作系统里面运行另一种操作系统,比如在Windows系统里面运行Linux系统。应用程序对此毫无感知,因为虚拟机看上去跟真实系统一模一样,而对于底层系统来说,虚拟机就是一个普通文件,不需要了就删掉,对其他部分毫无影响,这类虚拟机完美地运行了另一套系统,能够使应用程序,操作系统和硬件三者之间逻 ...
Nginx学习笔记
Nginx基本概念:
一个高性能HTTP和反向代理web服务器,专为性能优化而开发。
**反向代理:**我么只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
正向代理:把局域网外的Internet想象成一个巨大的资源库,则局域网中的客户端要访问Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。
负载均衡:单个服务器解决不了,我们增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是负载均衡。
**动静分离:**为了加快网站的解析速度,可以把动态页面和静态页面有不同的服务器来解析,加快解析速度,降低原来单个服务器的压力。
Nginx操作的常用命令:
**查看nginx版本号:**nginx -v
**启动nginx:**nginx
**关闭nginx:**nginx -s stop
**重新加载命令:**nginx -s r ...
1Q84
这几天看完了三册共近百万字的《1Q84》,说实话并没有怎么看懂,因为作者在其中有很多谜团都没有解释清楚。比如大川奈天吾十岁的女朋友为什么突然“丧失了”,中野亚由美的死因到底是意外死亡还是有人蓄意地谋杀,小小人和空气蛹到底是怎么样的存在,它们对这个世界想要做些什么。这些作者都没有给我们一个清楚的答案。
从书名可以看出本书是致敬乔治奥威尔的《1984》,但同《1984》的不同之处在于《1984》致力于构造一个外化的、政治色彩的反乌托邦世界,在那里“老大哥”扮演着政治首脑,他(们)致力于监视民众的行为,对民众的思想进行“净化”。而在本书里则更关心人的内心世界,它从表面上看和真实世界无异,只不过,它把很多原本内化于人心之中的东西变的更为具象了,比如小小人,空气蛹,天吾父亲的“意识”变成了NHK职员。
青豆本身以为自己是误入了1Q84世界,但后来在刺杀“先驱”领袖的时候被告知自己进入这个世界是必然的事情,后面又反复提到“这就像一个无限的悖论,自己的意识包含着世界,而这个世界又包含着自己的意识”。毫无疑问地是,在这个故事中好像每一个人都不是那么的快乐,青豆和天吾拥有着不幸的童年,青豆的父母都是证 ...
雪国与情书
在日本的浪漫文学中,“雪”的色彩占据了极大的比重。往往在故事的开头,都是在一片茫茫的白雪中,或是无人,或是人烟稀少,从未有过在一个繁华的都市中或是人眼麇集的闹市中的。在《雪国》的开头即是一个人人都可背诵的名段:
穿过县界长长的隧道,便是雪国。夜空下一片白茫茫。火车在信号所前停了下来。
在故事的开头,主人公岛村即在火车上遇上了一个美丽、纯粹得几乎不沾染任何人世间烟火的少女的叶子:
这当儿,姑娘的脸上闪现着灯光。镜中映像的清晰度并没有减弱窗外的灯光。灯光也没有把映像抹去。灯火就这样从她的脸上闪过,但并没有把她的脸照亮。这是一束从远方投来的寒光,模模糊糊地照亮了她眼睛的周围。她的眼睛同灯光重叠的那一瞬间,就像在夕阳的余晖里飞舞的夜火虫,妖艳而美丽。
故事讲述的是男主人公岛村三次来雪国与两个少女驹子与叶子所发生的故事,故事的开头正发生在岛村第二次来雪国的时候。随后,岛村望着自己的手指,思绪飘飞,于是时间线即一种偏意识流的方式流转在岛村三次来到雪国同少女驹子相识到熟识的过程。最终以叶子的死亡而结束。
《雪国》仅仅八万字,却是川端康成的集大成之作,在小说中渲染了”虚无“与”徒劳“的悲壮 ...
ARM Linux嵌入式系统
ARM指令集
算术运算指令
1.ADD指令
ADD{条件} {S} <dest>, <op_1>, <op_2>
12ADD R0, R1, R2 ; R0=R1+R2ADD R0, R1, $256 ; R0=R1+256
2.ADC指令
用于带进位的加法运算
ADC{条件}{S} <dest>, <op_1>, <op_2>
1ADCS R0,R2,R3 ;带进位加,结果保存在R0和R1寄存器
3.SUB命令
减法运算
SUB{条件}{S} <dest>, <op_1>, <op_2>
4.SBC指令
用于带借位的减法运算
SBC{条件}{S} <dest>, <op_1>, <op_2>
逻辑运算指令
1.AND指令
AND{条 ...
计算机系统基础大作业
Hey, password is required here.
bbb33902094af7525c68528baa48ee2fdd75b76f97b2937d6a21eecac1d64b276ed8fef864a91ad8bcd13bc871edb11dd0978c7cc596d2adf5fd9cbfd5155d2bfc2b692af6440b8f4a8ef7370788bbc63d270b6214299478ec5a0ec1f8cdc27dfb20c7f59397341bb6c7b946418314c085ea7642a7a64878d83e84bf87bedf7c3a8398b373b3ec32753ba474a556e61ee2d03c6a079c3d004344e6733c07d17ab8ac94e54bcff410150df3e6cbfee899a2c9ac2a683d583908fffc72ce8de7099c8291d630a003bc56a3c5e82a3f34df0ceab5dd56a227b5f9660c848256a04 ...
Cache Lab实验报告
CSAPP Cache Lab解题报告
任务A
实现代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160#include <stdio.h>#include <stdbool.h>#include "cachelab.h"#include < ...