重构.NET(www.refactoring.net)建站构想

原创 2004年08月25日 11:34:00

重构.NET(www.refactoring.net)
--中国第一个以Refactoring为主题的网站。

主题:关注重构(Refactoring)、关注驱动测试开发(TDD)、关注设计模式(Disigh Patterns)。

目标:以重构为载体,通过推广重构的思想和技术,提供重构代码的交流平台,提高程序员的设计能力和写好代码的修养。推动把重构职业化的进程,进而培养中国第一批重构师。

形式:本站除具有介绍重构及相关技术的功能之外,还力争把它建设为类似于SourceForge那样的重构开源社区。兼有http://www.codeproject.com/特色,用文章+代码来说明重构等技术问题。

特色(初步想法):
1、Use your blog to speak!(用你的Blog说话)
   在程序设计上提倡面向接口编程,接口的作用就是封装了你内部的实现,这样可以使接口统一而实现却丰富多彩、给你更多的自由选择。我想我们的网站亦是如此。我们的网站从News到论坛全部采用“接口”实现,我们只对你所发表的标题进行引用(超连接),而不存储你所发表的内容。也就是说你要发表任何言论首先发表到你的blog上然后再把连接发到网站相应栏目下。这样的好处很明显:首先你若想发表自己的观点,先发布到自己的blog上,然后再把连接发到网站上,省去了你要重复发布多次的麻烦(实际上你把内容发布到网站上自己又在blog上留个备份显然属于重复设计,按照重构的法则来说应该尽量消除它!)同时如果有朋友回复你的帖子,直接在你的blog上回复就行了。这样即使有一天我们的网站不在了,你的资料却依然存在--这笔财富将会保存的更加持久。另外由于在你的blog上已经对你的文章或者问题进行了分类,所以以后查找起来将很方便,比如你可以在blog上建一个问题专栏,里面是你所有的关于重构的问题。它一方面被发表在网站的论坛上(只是超连接在网站上)便于后来者参与讨论,也方便了你组织整理自己的文档。这比技术论坛要好得多,你可以想一下一年前的csdn上你的问题现在到哪里去找呢?其次,这样做给你提供了很多的方便,你若是在网上看到了好的内容,直接连过来就行,还用的着转贴吗?另外还有很多好处我就不多说了,比如可以防止灌水、搂主可以对自己的“帖子”的回复进行修改--这都不是我们提供的便利,是blog提供的,瞧出来了吗?这就是接口的好处!

2、我们的开源项目侧重于改造!
   重构目标是使把既有代码修改的更面向对象、更易读、结构更完美!所以我们的开源项目是独特的,与其他项目不一样的。我们侧重于改造,而不是创造!我们的开源项目,并不是从功能需求方面出发强调他的实用性,我们的目的是通过改造现有项目来锻炼自己,提高自己的设计能力,为以后更好的创造打基础!比如,我们可以找一段外面看起来功能还行,内部却一团糟的代码来重构!在此过程中我们省去了需求分析--因为使得重构后的代码仍可运行就是我们唯一的需求。我们省去了大部分代码细节的实现--因为原代码已经实现了这些细节。这样我们就只剩下设计这个大头了--把它改造成什么样子才更加可爱呢!注意到了吗?当你一上来就把注意力放到设计上的时候,你就更容易精力集中,而且在实践的过程中不会被代码实现细节等琐事所干扰,使得锻炼设计能力的效果更好!再比如,如果你觉得改造别人的代码还是没有成就感,不能发挥我们的创造性!那也没关系,你有没有想把动网论坛重构成.NET实现!这就更好了,吸取别人的优点,又全方面的锻炼自己,最后写成的代码又有实际意义,多有成就感阿!这就好比把JUnit改造成NUnit一样具有成就感!如果你觉得还不过瘾的话,你完全可以把自己代码拿出来重构,这样的话你决不会没有收获,没有激情!因为你把自己吃饭的工作当成艺术来重做,日后带来的效益绝非完成后一时的成就感!2008年你的代码又需要功能拓展了,你再也不会像以前那样一个头两个大了!

先想到这里具体的实现形式,我脑子里面已经有了雏形,等我大体做出过个模型来在于大家讨论。

关于栏目:
Refactoring News
Refactoring Books
Refactoring Tools
Refactoring Articles
Refactoring Source

Refactoring Practice
Refactoring Project

BlogForum


风格上力求简明 清新
参考:
http://www.cnuml.com/
http://www.refactoring.com/

栏目总体分两大类,文字性栏目和代码共享栏目。

A)文字性栏目

一、文字性栏目通用功能要求:

1、中英文分开

对于文字性的东西,最好能在标题后面注明英文还是汉语,并且点击相应的[英]可以对全部的英文资料进行分类阅读。
最好留有对英文资料后面加上翻译的相应连接,翻译文章亦有阅读原文的连接。

2、每一篇文章都允许评论。

由于发表的文章都连接到个人的blog上,用户可以在blog上直接加评论(feedback)。
同时在某些特定的技术文章标题后面,可以加上[评]按钮,用以发表相应的新评论(当然也只是加一个标题连接而已,用户需要在blog上发表再转载)

二、具体栏目说明

栏目1:What's new?

功能:将最新更新的内容放到上面,供浏览者第一时间察看。

样式:格式--题目+分类  点击分类可以进入相应的分类栏目列表。

 

栏目2:新闻(News)

功能:连接和发布一些关于重构、测试驱动开发、设计模式的新闻及资料文章。

运营模式:
     维护人员可从各大专业英文新闻转载过来,适当的对引子进行翻译,加上自己的评论。允许注册会员提供新闻线索,提交后经管理员审核后,方可显示,否则反馈不能发表原因。

管理:
   会员可以管理自己发表的文章,修改或删除。管理员可以管理所有文章,并具有处理提交文章的功能。当然是否考虑各专栏分管管理员的权限限制。总管理员具有一切权力,直接发表文章不受审核。

评论方式:对于News的评论只能发到blog的feedback上。不提供连接评论。

栏目3:重构书籍(Refactoring Books)

功能:介绍有关经典重构书籍,电子版下载,并提供读书笔记分享,书中例子个人分析,讨论书中的困惑等交互功能。

运营模式:
    介绍有关经典书籍,书皮价钱 相关评论等。可交互发表评论。
    电子版下载,搜集并整理。
    读书笔记分享,书中例子个人分析,讨论书中的困惑等交互功能
    ——提供在分类下添加连接。

管理:
   会员的书评直接发表不受审核,但推荐的新书需要审核。对于没有电子版下载的书,会员可以提交下载地址,管理员审核后将文件存到我们网站空间更新下载地址。管理员可以增加管理新书,为其增加电子版下载地址等维护,并具有处理提交推荐新书的功能。


栏目4:重构工具(Refactoring Tools)

功能:介绍有关重构的工具及使用技巧,提供软件下载、帮助电子版下载,并提供例子代码下载,即相关使用文档连接。

运营模式:
    会员提交,管理员审核更新。会员可以就该工具使用提问,并允许其他人回答。

管理:
   管理员可以增加管理新工具,为其增加下载地址等维护,并具有处理提交推荐新工具的功能。

附:重构工具下面还有测试工具等相关工具。

栏目5:技术文章(Refactoring Articles)

功能:介绍有关重构的工具及使用技巧,提供软件下载、帮助电子版下载,并提供例子代码下载,即相关使用文档连接。

运营模式:
    会员提交,管理员审核更新。

管理:
   管理员可以增加管理新工具,为其增加下载地址等维护,并具有处理提交推荐新工具的功能。

文章分类:
    重构
    设计模式
    测试驱动开发

栏目5:重构资源(Refactoring Source)

功能:提供各种重构的网上资源,包括网站、blog等

运营模式:
    会员提交,管理员审核更新。

管理:
   管理员可以增加管理新资源,为其增加下载地址等维护,并具有处理提交推荐新资源的功能。

资源分类:
    重构
    设计模式
    测试驱动开发

栏目6:论坛(BlogForum)

功能:答疑解惑,提问用的。我想首先考虑用blog来实现,主题是一个blog连接 回复也是blog连接 或者直接在blog上回复即可。我想这是我们的特色。可以把空间省下来放代码。

论坛板块待定。应该可以动态分配修改。

用户注册 用户注册时 需要填写blog地址,这样有一个blog列表,可以供大家互相认识访问。

B)代码共享栏目。
是我们网站的重点,应该好好策划和钻研。设计思路参看2、我们的开源项目侧重于改造!

未完待续
Refactoring Practice
Refactoring Project

wildhope 08:52:06
昨天又想了几个点子 一 为了突出实用性 所有的技术文章最好都能配以代码小例子 二 可以搞一些重构的竞赛小题目以活跃气氛
参考:http://www.allaboutprogram.com/

wildhope 08:52:32
昨天我还总结了为什么学习重构的十大原因 

 

关于“人工智能面试”的构想

人工智能无疑是未来社会的一大趋势。前两天看了一本心理学经典书籍,看到面试心理学这块时突然引发思考 面试是广大求职者必须经过的一关,它决定求职者给面试官留下的印象,很大程度上决定求职者被录用与否,甚至...
  • NewITlearner
  • NewITlearner
  • 2016年06月24日 10:35
  • 1233

.NET重构—单元测试重构

重构已是老生常谈的话题,我们或多或少对它有所了解但是对它的深刻理解恐怕需要一段实践过后才能体会到;提到重构就不得不提为它保驾护航的大功臣单元测试,重构能有今天的风光影响力完全少不了单元测试的功劳;最近...
  • wangqingpei557
  • wangqingpei557
  • 2013年10月06日 20:12
  • 1145

国内免费(开源)CMS系统大全

国内免费(开源)CMS系统大全
  • u011798964
  • u011798964
  • 2016年01月12日 00:30
  • 1949

关于人工智能AI的设想

突发奇想,有一个关于人工智能的设想,内容牵扯到人工智能、程序思想、游戏理念等,不感兴趣的朋友就不用浪费您宝贵的时间了哈。 我们都知道,人有七情六欲,我们身为人在做种种选择判断的时候不是会根据自身心理...
  • u010047150
  • u010047150
  • 2017年03月29日 14:54
  • 136

使用ZeroNet搭建P2P全球网站

origin: http://www.williamlong.info/archives/4574.html?_t=t 区块链技术: ZeroNet是一个利用比特币加密和BT技术提供不受审查的网络与...
  • yazhouren
  • yazhouren
  • 2016年06月25日 09:18
  • 1027

关于A*的构想

一、原理及伪代码实现 A Star 算法的具体作用可以忽略不表了,基本上想用的都知道,不知道的基本上不在乎。 具体伪代码如下: void FindPath(Point[,] maps, P...
  • Cheng624
  • Cheng624
  • 2017年02月13日 15:11
  • 120

拖拽即可创建HTML5网站的建站平台

摘要: 随着移动热潮的兴起,Flash 逐渐没落,HTML5 崛起,Wix也顺势推出了支持HTML5的拖拽建站技术,完全不懂技术的人也可以利用 Wix 建造跨越手机和 PC 浏览器的网站和应用。 .....
  • zzzkk2009
  • zzzkk2009
  • 2013年06月06日 12:17
  • 1469

如何自己建网站,免费自助建站系统平台哪个最好?

如何自己建网站,免费自助建站系统平台哪个最好? 最在14年开始新非常流选自己建网站了,在自助建站及自助建站系统行业混了快7年了,深深感到些行业的竞争力了,如何自己建网站?...
  • simplehedy
  • simplehedy
  • 2016年07月31日 13:41
  • 7393

BoIIS -- 免费IIS批量建站工具箱

由于之前是开发给公司用的,所以一直在公司内部使用没有公开,现在放出来给需要的站长们使用。 适用版本:Windows 2000/XP/Server 2003 前些年公司的站群服务器都是用的Windo...
  • harryxlb
  • harryxlb
  • 2015年04月07日 00:59
  • 2319

54元阿里云上建站详细步骤

欢迎访问建立的新站icodes.ren 由来在之前的文章个人建站里,记录了在免费托管空间byethost里托管自己的网站。玩的稍微熟悉了点之后,发现这个网站访问还是比较慢的,而且控制面板什么的都是英文...
  • sunnyloves
  • sunnyloves
  • 2016年05月20日 21:08
  • 3379
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:重构.NET(www.refactoring.net)建站构想
举报原因:
原因补充:

(最多只允许输入30个字)