共有3914页,39138篇文章。

代码

Js代码简洁之道

简介 如果你关注代码本身和代码的编写方式,而不是只关心它是否能工作,那么你写代码是有一定的水准。专业开发人员将为未来的自己和“其他人”编写代码,而不仅仅只编写当前能工作就行的代码。 在此基础上,简洁代码可以定义为自解释的、易于人理解的、易于更改或扩展的代码。 以下列表一些好编写方式,仅供参考,当然,如果你有更好的方式,欢迎留言。 1. 强类型检查 用===代替 == // 如果处理不当,它会极大地影响程序逻辑。这就像,你想向左走,但由于某种原因,你向右走 0 == false // true 0 === false // false 2 == "2" // true 2 === "2" //...

阅读该文章
go语言杂谈

golang server epoll client 使用连接池 15万+ qps

epoll 加连接池 前几天看了epoll 使用,今天写了一个测试脚本,测试一下epoll加连接池的性能 50万个请求,连接池使用2000连接,发送 "test" 服务端接受后 转成大写返回,处理完所有的请求耗时3.731506996s,性能很强大(注意:需要在linux环境下测试) 为什么要使用连接池? 拿数据库举例,频繁的建立、关闭连接,会极大的降低mysql的性能,因为建立连接,释放连接引起的大量性能开销。 连接池技术带来的优势: 1、资源重用 由于tcp得到重用,避免了频繁创建、释放连接引起的大量性能开销。在减少系统消耗的基础上,另一方面也增进了...

阅读该文章
视频

Web视频格式

网络视频一直都很火。虽然在页面上嵌入 Instagram 和 Youtube 视频非常简单,但是有越来越多的需求 —— 比如许多电子商务的场景 —— 要求定制的视频传输方法。在设置视频处理和传输管道时,首先要考虑的是要服务的视频格式。 用户体验、支持(浏览器和系统)、压缩效率或编码速度等方面可能与此项选择相关。 容器和编解码器 与通常的图像格式相比,意识到容器和编码标准之间的区别是非常重要的。文件扩展名只能告诉我们它属于哪个容器,而不是使用哪个编解码器。所遵循的编码标准决定了浏览器或系统是否支持它。 例如,虽然 Web 视频格式一般都用了 mp4 容器和 H264 标准进行编码,但并非每个 ...

阅读该文章
go语言杂谈

论一个自毁倾向社区的形成

有关自学的公开秘密 俗话说:“开始回忆过去才标志进入老年” 对应断言则是:“人类的进步根源在 — 一向没从历史中学到什么教训” 结合起来理解, 应该就是: 经验其实并没什么用? 但历史故事却总是很有市场,那么俺就专注说说故事吧,私人的…… 每个好故事都必须狗血开篇 从 Pascal 到 Python 90 年代,大家如果看穿越小说就知道,那是中国开始腾飞的年代,计算机专业最火的年代。 俺也无法逃避历史规律, 又因为是第一批宅文化受洗者,从海南摄影美术出版社开始,深度沉迷在日本漫画/动画中,并且,在广州无意间看到深夜转播香港电视台的...

阅读该文章
区别

Js插件、 组件、类库、框架的区别

框架和类库等概念的出现都是源于人们对复用的渴望。“不要重复发明轮子”,成了软件界的一句经典名言。从最初的单个函数源代码的复用,到面向对象中类的复用(通常以类库的形式体现),再到基于组件编程中二进制组件的复用,人们复用软件的抽象层次越来越高。现在,框架复用是抽象层次的又一提升,框架的复用不仅仅是功能的复用,更是设计的复用。     类库: 提供了一些真实项目开发中常用的方法,这些方法做了一些完善处理,比如兼容处理、细节优化等,方便我们开发和维护。常用的类库有:JQuery、Zepto 插件: 把项目中某一部分进行插件分装,具备具体的业务逻辑,有针对性。如果项目中有...

阅读该文章
go语言杂谈

LeetCode-5-最长回文子串

题目描述 最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 思路 如果把一个字符串反转,反转后的字符串与原来相同,则该字符串是回文串 使用暴力法,搜索上做了一些优化 Code Golang func longestPalindrome(s string...

阅读该文章
技巧

实用的 git 小技巧

前些月,写了一个关于 git 的表格,叫Git Cheat Sheet,现分享一些有用的小技巧,更多内容请移步,另有一个非常不错的关于 git 小技巧的项目 git-tips。 是谁动了我的代码 谁动了我的代码? 谁的 bug 指到了我的头上? 团队合作时,经常会出现这样的问题。这时候可以使用 git blame <file> 来定位代码的最后一次修改。但是,有一个问题,这并不能看出本行代码以前的修改。比如项目组中某人对全部代码进行了格式化,git blame 就失去了作用。此时,可以与另一个有用的命令 git log -p &l...

阅读该文章
go语言杂谈

用golang实现的单向链表

复习一下数据结构,用golang来实现单向链表 package main import "fmt" type Object interface{} type Node struct { Data Object next *Node } type List struct { size uint64 head *Node tail *Node } func (list *List) Init() { (*list).size = 0 (*list).head = nil (*list)...

阅读该文章
title

聊聊 Vue 中 title 的动态修改

由于之前的 Vue 项目打包成果物一直是嵌入集成平台中,所以一直没有关注过项目的 title。直到最近,突然有个需求,要求点击按钮在集成平台外新开一个页面,此时我才发现,原来我的项目的 title 一直是万年不变的 vue-project。理所应当的,这个问题被测试爸爸提了一个大大的缺陷。 犯了错的我赶紧解决这个问题,但是经过一段时间的摸索,我却发现,这一个小小的问题,却有着很多不同的解法。 首先,毫无疑问的是,我们应该使用 document.title 方法通过 DOM 操作来修改 title 的值。此时,距离解决问题还差两步: 如何传递 title? 何时修...

阅读该文章
go语言杂谈

go get golang.org/x/text 问题

首先在你的项目路径src里新建golang.org/x文件目录,如果有就不用了 目录 打开cmd,输入git clone https://github.com/golang/text.git,clone在golang.org/x目录下,或者可以到https://github.com/golang/text 下载压缩包,放到golang.org/x目录解压 在src目录下,go install -x golang.org/x/text,会在pkg目录下生成一个text.a的包文件,就成功,可以import了 &#...

阅读该文章

推荐图集: