“编程基础”文章列表
Base 64 Encoding有什么用?举个简单的例子,你使用SMTP协议 (Simple Mail Transfer Protocol 简单邮件传输协议)来发送邮件。因为这个协议是基于文本的协议,所以如果邮件中包含一幅图片,我们知道图片的存储格式是二进制数据(binary data),而非文...
前两天一兄弟给我打电话,他的问题是自己想好好学习计算机编程技术,但是自己想学的东西太多,不知道从何学起,而且学到的东西也在工作中无法用到。这也是我曾经遇到过的问题,因为我也不是计算机专业出身,所以今天我就说一些我对这个问题的看法。 我认为认识一个事物,首先要去了解这个事物的整体,然后再去研究它...
这篇文章是一个非数学专业的自学心得。作者分享了自学中的一些个人的见解,或许对很多科班数学的朋友并不适用。作者的背景:吉林大学地球科学本科,陈省身数学所硕士,约翰霍普金斯大学博士。 在网上常看到朋友问很多有关于数学学习的问题,有数学系的,也有纯自学的,许多问题我都亲身经历过。在这里就简单说一下我...
H.264/MPEG-4 AVC(H.264)是1995年自MPEG-2视频压缩标准发布以后的最新、最有前途的视频压缩标准。H.264是由ITU-T和ISO/IEC的联合开发组共同开发的最新国际视频编码标准。通过该标准,在同等图象质量下的压缩效率比以前的标准提高了2倍以上,因此,H.264被普遍...
在C和C++语言开发中,指针、内存一直是学习的重点。因为C语言作为一种偏底层的中低级语言,提供了大量的内存直接操作的方法,这一方面使程序的灵活度最大化,同时也为bug埋下很多隐患。 因此,无论如何,我们都要对内存有一个清晰的理解。 一、对内的分配 32位操作系统支持4GB内存的连续访问,但...
通常,图像处理软件会提供"模糊"(blur)滤镜,使图片产生模糊的效果。 "模糊"的算法有很多种,其中有一种叫做"高斯模糊"(Gaussian Blur)。它将正态分布(又名"高斯分布")用于图像处理。 本文介绍"高斯模糊"的算法,你会看到这是一个非常简单易懂的算法。本质上,它是一种数据平滑...
英文原文:Cleaner, more elegant, and wrong 最近国外关于go 语言的讨论很多,其中有一个论题是关于 go 语言里采用的错误码的异常处理模式和 Java 里的 try-catch 的模式孰优孰劣的问题。今天的这篇文章就涉及到这两种模式的对比比较。 并不是因为你看...
英文原文:Mastering Linear Algebra in 10 Days: Astoundin 译者:MapleFlying最近,我的朋友斯考特·杨(Scott Young)成就了一个惊人的壮举:他在一年之内,完成了传说中的MIT计算机科学课程表的全部33门课,从线性代数到计算理论。最...
英文原文链接:Programming with closed eyes 你会花多少时间思考如何编写代码? 乍看这是一个引人思考的深层次问题,在编程专业中常有这样的误解,软件开发就是写代码。软件开发实为一门艺术,而代码仅仅是通往艺术之门的工具。好比燃料和画布是画家的工具一样,写代码的目的是实现...
做了开源以后,最大的感触就是:沟通增加了,信息来源增加了。提问的朋友很多,各种问题都会有,有时候在解答时也是很郁闷,这两天感觉适当总结一下自己以及周围朋友在制作 js 时爱犯的弱智错误,还是很有必要的。这些弱智错误经常会让我们抓狂——这么简单的东西怎么就是总出错呢?反复检查好几遍就是找不到错误,...
diff 是 Unix 系统的一个很重要的工具程序。 它用来比较两个文本文件的差异,是代码版本管理的基石之一。你在命令行下,输入:$ diff <变动前的文件> <变动后的文件> diff 就会告诉你,这两个文件有何差异。它的显示结果不太好懂,下面我就来说明,如何读懂 diff。 一、di...
“设计良好的函数往往比较小,而过大函数的设计往往一塌糊涂,或者存在很大的优化空间。” 也许你认为讨论函数的大小没有必要,原因是函数设计的本质是内聚,它的大小只是它的表现形式。而上面的原因有必要让我们讨论一下函数的大小问题。 我对函数的核心思路:我提出代码最小处理单元的概念:一个基本操作(赋值...
英文原文:The world’s two worst variable names 作为一个程序员,“起名字”是他们工作中非常重要的一部分。Phil Karlton就说过:“在计算机科学领域,有两大难题,如何让缓存失效(cache invalidation)和如何给各种东西命名。”虽然很难,但...
这几天正值一年一度的游戏盛会:E3。我从gamespot上下载了几大厂商的发布会视频看,基本上能无障碍的听进去这种没有字幕的东西了。 我是一个工作在外企的程序员。公司里上上下下哪个职位的人都要经常读写英文邮件、文档,都会遇到不得不面对老外叽哩呱啦对话的情况。英语也是入职笔试面试的一个考查项目。...
今天在知乎上被邀请回答这个问题,一不小心写了很多,算算已经可以当作一篇博客了,于是记录下来。 问题:作为一名程序员,虽说每天都在和英语打交道,但是当看到一篇英语文档或者英语技术文章的时候还是比较头疼,理解他们的意思也只能是20%。尤其是使用google搜索的时候,很多问题解决办法都是英文的,还...
首先,为什么要说突破雅思呢?因为个人经验而言,我感觉雅思(尤其通用类)是一个对于像我这样需要跟海外客户打交道的IT民工非常实用的考试。通过有目标、有系统的学习(当然不是背机经),可以在很短时间内有效提高与客户对话、邮件交流、海外出差生活等基本英语能力。毕竟澳洲移民局认为雅思(通用类)代表一个人在...
英文原文链接:“How much math do I need to know to program?” Not That Much, Actually. 下面是我在reddit的子论坛r/learnprogramming看到的几个帖子: ● “要成为一个优秀的程序员需要学习多少数学?” ...
英文原文:Understanding the Git Workflow 如果你不理解Git的设计动机,那你就会处处碰壁。知道足够多的命令和参数后,你就会强行让Git按你想的来工作,而不是按Git自己的方式来。这就像把螺丝刀当锤子用,也能把活干完,但肯定干的差极了,花费很长时间,还会弄坏螺丝刀。...
阅读目录Fiddler的基本介绍Fiddler的工作原理同类的其它工具Fiddler如何捕获Firefox的会话Fiddler如何捕获HTTPS会话Fiddler的基本界面Fiddler的统计视图QuickExec命令行的使用Fiddler中设置断点修改RequestFiddler中设置断点修改...
英文原文:Seven ideas for learning how to program 原文发布于 2010-11-4 中国古代思想家孔子(Confucius)功劳中包括对许多事物发表的见解, 从平凡的幸运饼消息(fortune cookie messages)到明显荒谬的笑话,如“Man...