保存个地址, 顺便问个问题~

再更新两个地址:
http://programmersatwork.wordpress.com/john-warnock/
http://programmersatwork.wordpress.com/bill-gates-1986/

更新一个地址: http://www.infoq.com/articles/dsl-on-the-clr

地址: http://www.codersatwork.com/names.html?order=popularity

最后这个是个大牛列表 :)

问题:

具体点拿一堆图片的管理来说, 大多数系统, 都是有一个Picture表, 一个Category表, 一个链接表, 链接表就这两个字段: PictureID, CategoryID。

比如任何一个相册, 用户可能给一张图片一个分类, 但是也可能没给这张图片分类,这些没有分类的图片, 在咱们实现的时候, 是让他们属于“没有分类的图片(或默认分类)”这样一个分类呢?还是就让他们什么也不属于: 凡是用户没有指定分类的, 根本不在链接表内出现。

对应于数据库, 对于用户没有选择分类的情况,这两种做法区别在于在链接表内, 会不会有 {PictureID = 1 CategoryID = 默认分类ID值} 这样一行。

有默认分类的优势在于当用户查询“所有没有分类的图片(或默认分类的图片)”的时候,一句"Where CategoryID=默认分类ID"搞定了, 而且可以统一处理“没有分类,分类1, 分类2....”之间的区别。 劣势却仅仅是我的链接表里比不设立默认分类, 多出很多行。

我的想法是, 是否可以把设立默认分类当成一个最佳实践,无论建立什么系统时, 只要在实质上是一个分类的问题, 都可以采取这种实现; 因为这个问题普通到不再受其他条件的影响。 问题在于有没有不适合的反例,比如有默认分类在某种情况下更糟糕, 我想问的就是这个。

这个问题虽然简单, 不过从我第一次接触到现在7、8年来, 一直没有着急做出判断, 也是不敢轻易判断。 因为我无法判断从事情的本质来讲, 没有分类是不是就是一种分类; 这个问题和0到底是不是规划到自然数有点像; 所以对于我来说,这个问题的答案, 对我认识事物也许会造成连带的影响。

那么如果不说这些虚的, 光从实际出发, 设定一个叫做“没有分类”的分类来简化问题, 是否有存在着不适用的反例呢?

posted on   怪怪  阅读(5357)  评论(7编辑  收藏  举报

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器

导航

< 2008年5月 >
27 28 29 30 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
1 2 3 4 5 6 7
点击右上角即可分享
微信分享提示