`
ruilin215
  • 浏览: 1142924 次
  • 性别: Icon_minigender_2
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

房间收拾与软件架构

阅读更多

首先,请允许我做这样一个对比,毕竟,这两件事看上去太没有关系了。事实上,我捉摸房间收拾这个事情的时候,压根就没有想过和工作联系在一起。可是最后竟然走在了一起。

不是每一个人都需要收拾房间,但是每一个人都可以花点时间研究一下收拾房间的方法。我目前一个人住在北京的自己的房间里,女友偶尔来一下。大家可以想像得出,这种情况下,房间的状况如何。基本有两点:

  • 房间整洁程度较低
  • 房间保持能力较低

于是,女友每次来都很生气,我也知道后果比较严重。可是对我来说,改变这点非常难!必须要超人的毅力和决心不可。不幸的是,我却犯了重理论轻实践的错误。我开始关注女友是如何收拾房间的。

刚开始的时候,她告诉我,厨房必须保持干净,否则如何如何云云。可是每每发现就是不行。我也很头疼。后来,女友想到一些办法,在厨房进行功能区划分,告诉我什么东东应该放到什么位置。特别是那些篮子,盆子什么的。让我知道什么东西最后都放到什么地方就可以了。我发现这点要求,比要求我“保持干净”有用多了,至少我知道如何保持干净。

厨房还是简单的,关键在卧室,什么东西都乱扔。一开始也是一样的要求,可是我一样做不到。慢慢地,她开始发明一些宝贝。比如,零钱罐,以后所有硬币或零钱就放到里面,发票盒,脏衣处,杯子存取处等等。尽管我们还有很多地方需要改进,可是这些概念的提出,的确可以对房间收拾起到很大帮助。

如果我们看看我们的软件架构,也是一样。如果不思考一下,简单进行软件开发。就像我女友以前一样,把家里重新收拾一遍,过不了几天,我又会把房间搞乱了。软件也是如此。软件在版本开发完成之后,维护工作很有可能将软件带入一个可怕的境地。

所以我们需要软件架构。那么软件架构又是在做什么的呢?说简单点,就是解决问题,可是复杂就复杂在如何解决问题。首先是发现问题之所在,对症下药。其实对比一下房间收拾,基本上也就是两个问题:

  • 软件本身质量问题
  • 软件扩展维护能力

一个是当前的问题,一个是以后的问题。解决第一个问题,大家都顺其自然地比较得心应手。收拾一个房间,相对还是比较容易的,一般就是比较累的了。但是解决第二个问题,必须有相当的智慧。我们工作几年之后,往往都能积累一些经验,但是如果不知道总结和发明,做软件架构,往往也只是经验主义。不能在关键点上找到关键解决方案。

找到了问题的关键点,在我们软件架构中,就应该提出一个相应的方案来解决它。这和收拾房间一样,你提出的方案应该有几个特点,才方便这个方案在以后的软件维护中,生根发芽!

  1. 问题单一。不要让几件不同的事,混杂在一起处理。这样智慧让人困扰。
  2. 概念清晰。这样,知道什么问题,什么方案解决。一个复杂的概念只是会让人不知所云。
  3. 借口简单。至少,使用起来简单。也许内部结构比较复杂。但是不能因此就有吓倒以后的维护人员的理由。
  4. 模块独立。不需要单独维护。谁不喜欢呢?如果每一次需求变更,还需要让我来维护这个解决架构问题的扩展问题的话,我会很头疼的!因此本身的扩展性也一定要做好。

说到底,好的解决方案,不光是在软件架构的时候会有人提及,在软件维护的实践中,不断有人提到。当然不是因为麻烦,而是因为舒心!并且,由于问题单一、概念清晰,这些方案往往能够复用到其它项目中去。

总结一下,本文将房间收拾和软件架构进行了对比,重点是要描述软件架构中的解决方案本身的提出及实现的原则。软件架构包含很多领域,不过我们讨论的这个领域,具有超凡的创造性在里面。

一句话,软件需要智慧,软件需要借鉴!

分享到:
评论

相关推荐

    精品课程网站收拾收拾收拾收拾

    此外,我们可以推测【精品课程网站】可能采用了MVC(Model-View-Controller)架构模式。在ASP.NET框架下,MVC模式将应用分为三个主要部分:模型(Model)负责处理数据逻辑,视图(View)负责展示用户界面,控制器...

    “勇士”归来约战ARM收拾旧河山.pdf

    【“勇士”归来约战ARM】指的是Imagination Technologies公司发布的新产品MIPS Warrior I6400系列处理器,这是首款结合64位架构与硬件虚拟化技术的IP内核。这款处理器是在收购了MIPS处理器核心架构后,Imagination...

    iphone如vkk

    "收拾收拾收拾收拾收拾收拾收拾收拾收拾收拾收拾收拾身上所上市实施上述事实上" 这句话可能是对进行跨平台开发过程中,整理和整合技术资源以实现互通目标的隐喻。在实际开发中,我们需要理解各自平台的API,以及如何...

    2016年二年级语文下册我的房间随堂练习无答案沪教版.doc

    - 同时,学生需要积累一些词汇,如“收拾、功课、翅膀、墙壁、饼干、巧克力、司机、载、幻想”等。 2. **理解课文**: - 学生需要通过阅读课文理解小作者的四种愿望:房间有轮子、长翅膀、成为潜水艇和变成魔术屋...

    软件后台模板html

    通过这个模板,开发者可以快速搭建后台管理系统的基础架构,节省大量编写基础代码的时间,更专注于业务逻辑和功能实现。同时,由于模板已经过优化,可以提高系统的性能和可用性,降低维护成本。总的来说,“软件后台...

    幼儿教育电子资源“聚焦教与学转型难点”的信息化教学设计收拾整齐要牢记.pdf

    幼儿教育电子资源“聚焦教与学转型难点”的信息化教学设计收拾整齐要牢记.pdf

    收拾整理习惯问卷调查.doc

    4. 整理习惯的观察与评估:问卷中的问题设计旨在评估孩子在不同场景下的整理习惯,如叠被子、收拾文具、整理书包、归置玩具等,这为教师提供了孩子自理能力的具体信息,便于后续的个性化引导。 5. 家长的角色:家长...

    Ubuntu 16.04安装Calibre电子书管理软件.docx

    Ubuntu 16.04 安装 Calibre 电子书管理软件 Calibre 是一款功能强大、开源的电子书管理软件,为用户提供了一站式的电子书解决计划。用户可以利用 Calibre 对电子书进行格式转换、归类收拾、组织成属于自己的电子...

    中班优秀主题详案《我们给金丝熊收拾家》润新教育.txt

    中班优秀主题详案《我们给金丝熊收拾家》润新教育.txt

    酒店客房服务工作流程与标准.doc

    通过酒店管理软件系统,确保系统中的房态与实际房态一致,这是对房间状态的实时监控。房态核对分为三个时段:上午8:00、下午14:00和晚上18:00,对应不同时间段的房态变化。核对时,工作人员需记录入住、退房信息,并...

    fastgestures安装包,模拟mac的触控板收拾,两指代表右击, 三指拖拽

    FastGestures 是一款功能丰富的全局手势软件,它支持鼠标、触控板以及触摸屏。用户可以通过定义一组助记符来映射自定义的操作,如在不同软件之间切换、打开系统便签、记事本、执行复制粘贴等操作[^3^][^10^]。...

    用来测试 xml数据

    收拾收拾

    人教品德与社会三上我的责任PPT学习教案.pptx

    《我的责任》是针对小学三年级学生的一堂品德与社会课程,旨在培养孩子们的责任意识和自我管理能力。这堂课通过一系列的问题讨论和角色扮演,引导孩子们认识到在家庭、学校和社会中各自应承担的责任。 首先,课程从...

    唯美忧伤的女生伤感网名 散落的心事无从收拾.docx

    1. **网络文化与网名**:在互联网时代,网名是用户在网络空间中的一个重要标识,它反映了使用者的情绪、个性或者兴趣。女生选择“唯美忧伤”的网名可能是因为这种风格符合她们在社交平台上的自我表达,也可能反映出...

    新人教统编版四年级下册语文 范文2:我的乐园 教学课件.pptx

    4. **情感表达**:课件利用排比修辞,生动再现了作者与伙伴们在房间内玩耍的热闹场景,强调了乐园带来的快乐,即使需要收拾残局,也觉得值得,因为快乐无价。 5. **个人情感**:范文最后,作者表达了对房间的热爱和...

    安全风险管理工程师岗位职责.pdf

    3. 制定三电系统功能规范和架构,制定包含 BMS,MCU,VCU,OBC 等功能平安概念、平安等级和平安措施,执行功能平安分析(HARA,FMEA,FTA)。 4. 支持零部件开发,功能平安策略定义 ECU 硬件软件需求,参加供给商管理,...

    authorware

    有关于authorware的课件,说是施收拾收拾收拾收拾收拾收拾

    新五四制人教统编版四年级下册语文 范文2:我的乐园 教学课件.pptx

    尽管之后的收拾工作繁重,但主人公深感与朋友共度的快乐时光是无法用金钱衡量的,强调了友情和共享的乐趣。 通过这篇教学课件,教师可以引导四年级的学生学习如何描绘环境,表达个人情感,以及如何运用修辞手法增强...

    穷游网的”穷”局:有多少人收拾背包去远行.docx

    例如,强化与用户的互动,鼓励UGC内容的分享,以及与专业旅游服务提供商合作,提供更具竞争力的服务。此外,关注不同市场细分,如针对特定国家或类型的旅行者,推出定制化的产品和服务,可能也是穷游网未来发展的...

Global site tag (gtag.js) - Google Analytics