以图明志

数据库技术

数据库SQL SELECT查询的工作原理

SELECT了那么久,你了解它吗
我并非专业DBA,但作为B/S架构的开发人员,总是离不开数据库。一般开发员只会应用SQL的四条经典语句:select,insert,delete,update。但是我从来没有研究过它们的工作原理,这篇我想说一说select在数据库中的工作原理。

Web设计理念

不再以讹传讹,GET和POST的真正区别

网上的多数答案都是错的
前几天有人问我这个问题。我说GET是用于获取数据的,POST,一般用于将数据发给服务器之用。这个答案好像并不是他想要的。于是他继续追问有没有别的区别?我说这就是个名字而已,如果服务器支持,他完全可以把GET改个名字叫GET2。他反问道,那就是单纯的名字上的区别喽?

软件架构技术

谈谈对一些软件架构设计箴言的理解

对软件的过早地优化是万恶的根源
在做项目的时候,有些同事总是提前考虑性能优化,需求变更又是一大堆的重写,让我想起了Donald Knuth 提到的:对软件的过早地优化是万恶的根源。这里就简单的说几条重要的软件名人哲学。在软件开发过程中需求是不停的变化的,随着客户对系统的认识,和现有开发功能和软件的认识,也许一开始他提出的需求就是背离的。

Web设计理念

前端与页面开发的水有多深

Stay Hungry, Stay Foolish
但凡从事互联网的人基本都会写几行html,用过Word的人用Dreamweaver也能做出规整的页面,所以大部分人会很自然地认为“页面的开发没什么技术含量,很简单”。不仅有这种普遍的认知,对从业者来说也有很多疑惑:做页面前端实现,没问题;兼容性,小case;图片集成,一直都在用……还能有什么问题?瓶颈啊、天花板啊、转型啊、出路啊就在从业者中广泛讨论。

软件架构技术

开发人员练就百般武艺为了啥?

业务领域,是软件的核心价值所在
无论是买成型的软件产品,还是出资开发项目,客户投资的是软件的业务价值。项目经理直接为这个目标负责,尽量少的成本,尽量短的时间,生产出高业务价值的软件产品。架构师则是跨越单个项目,长期为这个目标负责。项目经理与架构师是天生的敌人,短期看这是对的,长期来看,他们是真正的朋友,是战略朋友。没有项目经理项目会死得很快;还而没有架构师,公司会死得很惨。

Web设计理念

产品三俗:瀑布流、动态流、奖章

盲目跟风?醒醒,还来得及
瀑布流的鼻祖是Pinterest,Pinterest的用户97.9%是女性。有种说法是,洋妞们从小就有收集剪报的习惯,Pinterest将这个习惯移植到了网络上,故快速引爆流行。听上去挺有道理。从交互角度来分析,瀑布流最大的好处有两个,第一是提高了“发现好图”的效率,第二是图片列表页极强的视觉感染力。

软件架构技术

Google的分布式计算模型Map Reduce

map函数将输入分割成key/value对
计算机的早期阶段,程序都是serial(连续的),类似于批处理程序。并行计算的程序中,进程将一个任务分割成多个部分parts,每个“部分“都是能够并行处理的,每个“部分”可以同时运行在不同的cpu上,这些cpus可以是同一台机器上,也可以是通过网络运行在不同机器的cpu上。

软件架构技术

大规模分布式数据处理平台Hadoop的介绍

一种可靠、高效、可伸缩的处理方案
Hadoop原来是Apache Lucene下的一个子项目,它最初是从Nutch项目中分离出来的专门负责分布式存储以及分布式运算的项目。简单地说来,Hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。

Web设计理念

自己模拟实现一下Google的赛马Doodle

赛马Doodle的实现原理
今天的Google Doodle是个动态的,是一个骑马的动态Doodle,是谷歌纪念英国实验摄影师埃德沃德·迈布里奇182周年诞辰,埃德沃德·迈布里奇是运动摄影的开创者,所以谷歌涂鸦以一个运动的摄影作为背景创作的。我对这个doodle的实现比较感兴趣,下面做个实现小程序。

数据库技术

MySQL如何复制表中的一条记录并插入

数据库常见操作
先把需求说一下吧。从 MSSQL 中导出一个文章表,需要插入到 PHPCMS 中的内容表 phpcms_content 去,需要做到文章可以发布到不同的栏目中去。也就是说,需要复制一条记录,并修改其 catid,再插入到表尾的位置上。大致为:insert into a SELECT id+1, ...(其它字段) FROM a ;

Web设计理念

用无数完美的瞬间拼凑完美的用户体验

良好的用户体验在于完美的瞬间
在第一个瞬间,也就是当一位用户从Google搜索结果页面跳转到某个网站的时候,他此刻可能就是想看看这个网站的名字及功能;而下一个瞬间可能就开始琢磨如何使用页面中的播放器来观看某个视频介绍。再然后可能寻找从哪里注册,或者看看商品是否打折,勤学尝试联系这个公司。

软件架构技术

软件项目开发没规划好就注定会失败

软件项目开发与管理的一些原则
软件项目的开发与管理是一门复杂的学问,不是简单地需求来了就动手编码,编码完了就算项目完工那么简单。一个项目如果没有好好规划,那么就很容易会失败。同样,我们在做一个软件项目的时候,需要注意的东西很多,下面总结一下一些容易视而不见但又非常重要的软件开发指导原则。

Web设计理念

StackOverflow不仅仅是一个问答网站

很多网站抄袭不到它的精髓
今天看到了一个网站的模仿StackOverflow的问答应用,有点儿感慨:是不是设计这个模仿应用的人,真的认为,StackOverflow真的就是提供提问和解答服务的?StackOverflow 的精髓,首先在于其声望(Reputation)系统,这才是去解答的人要的,可是这个模仿的应用,居然都不显示用户的声望值。

数据库技术

MySQL 主键与索引的联系与区别

主键与索引是什么?
所谓主键就是能够唯一标识表中某一行的属性或属性组,一个表只能有一个主键,但可以有多个候选索引。因为主键可以唯一标识某一行记录,所以可以确保执行数据更新、删除的时候不会出现张冠李戴的错误。主键除了上述作用外,常常与外键构成参照完整性约束,防止出现数据不一致。数据库在设计时,主键起到了很重要的作用。

软件架构技术

系统架构39问

架构视角面面观
架构一个系统不是一件简单的事,需要考虑到的事情也特别的多。下面我列举一些常见的问题,以抛砖引玉。是否在不断的学习新技术、新名词、生怕落伍?(WCF、WF、WPF、MVC、EF、WebApi、Spring、Castle、Unity、Autofac、NInject、AOP等)

Web设计理念

cookie与session的运作机制讲解

详细了解这两种机制
具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的,但实际上它还有其他选择。
2 / 16 首页 < Prev 1 2 3 4 5 Next > 尾页 页码: