以图明志

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的实现比较感兴趣,下面做个实现小程序。

软件架构技术

什么样的应用才算是RESTful?

读 《REST in Practice》
尽管 REST 这个概念 2000 年就被提出来了,但到了2007 年才成为了一个热词,随后越来越多的服务都宣称自己是 RESTful 的,但是到底真么做才是真正的 REST 我从来没有自习学习过。由于 2007 年的时候 Ruby on Rails 也十分热门,所以我以为 Rails 风格的 CRUD API 就是 REST 了,同时对于外界关于「什么算是 REST 什么不算是 REST」的争论没怎么关心过。

Web设计理念

如何把Web缓存都充分利用上来?

充分利用缓存来提高网站性能
使用URLs时要确保一致性 浏览器基于URL来缓存资源。当URL改变后,浏览器从源服务器获该资源的新的版本。查询字符串参数的改变也被视为URL的改变。例如,"/default.aspx" 被缓存到浏览器,如果你请求了"/default.aspx?123",浏览器将从服务器获取新的版本。对于这个新URL的响应,如果你返回的是正确的缓存报头,它仍然会被缓存。

数据库技术

mongoDB入门需要了解的基本知识

来了解下红红火火的mongoDB
MongoDB是一个开源的,高性能,无模式(或者说是模式自由),使用C++语言编写的面向文档的数据库。正因为MongoDB是面向文档的,所以它可以管理类似JSON的文档集合。又因为数据可以被嵌套到复杂的体系中并保持可以查询可索引,这样一来,应用程序便可以以一种更加自然的方式来为数据建模。

Web设计理念

自己手动做一个社会化分享功能

社会化分享也慢慢开始热起来了
随着社会化应用的火爆,社会化分享也慢慢开始热起来了。从国外的AddThis,到国内的JiaThis,还有最近才出来的百度分享等等。现在我们经常在各种网站上可以看到“分享到”这种工具,该服务提供网页地址收藏、分享及发送的按钮工具,网站的浏览者可以方便的分享到微博和SNS网站,网站主只要添加一段JavaScript即可实现。

数据库技术

最常用的SQL排序、分组与统计的使用方法

Order by/Group by/having等的使用
以一种有意义的方式组织数据可能是一项挑战。有时你需要的可能是一个简单的排序,但是通常你需要做更多,你需要分组来进行分析和统计。幸运的是,SQL提供了大量语句和操作来进行排序,分组和摘要。下面的一些技巧将会帮助你识别什么时候排序,什么时候分组,什么时候以及如何统计。

软件架构技术

在系统设计中,如何控制层次的问题

设计的核心任务之一:层次的控制
对于软件而言,层次是让人又爱又恨的东西。很多问题是通过增加层次解决的,但另外一部分问题也是因为层次而导入的。通过加入层次解决问题的同时,新的问题也随之发生。在眼前蒙上一层薄纱可以防止眼睛被风沙所伤害,但如果蒙上十层,那更严重的后果将会出现——你看不到路了。

软件架构技术

软件系统架构中的分层思想

关于分层结构
众所周知,经典的三层结构包括数据访问层、业务逻辑层和表示层。当然,如果继续扩展下去,还可以分为4层、5层……我相信很多人都用过,很多人都写过,但是为什么要这么做,还是有一部分人是不能够说清楚的,这不是我猜想的,而是遇见过很多想分层但是分的乱七八糟的层次结构。

数据库技术

数据库架构的技术方案演变史

数据库架构的升级和变更
SQL Server2008在数据的高安全、高性能、高可用方面的技术已经比较成熟,这些技术和方案都是随着很多公司的业务和数据访问压力的增加而不断的升级和变迁的,同时经历了方方面面的考验,证明了它们都是成熟可靠的,下面就这方面的技术方案和变迁过程来做一些分析。
1 / 15 首页 < Prev 1 2 3 4 5 Next > 尾页 页码: