zoukankan      html  css  js  c++  java
  • 程序员为何不爱设计?

    大多数程序员,都是喜爱编码多过设计。遇到什么问题,首先就是想着上机“试一试",直到碰壁之后,才思考哪里出了问题。

    为何程序员不爱预先设计?

    我认为是缺乏设计工具造成的。虽然知道设计很重要,但是却缺乏行之有效的设计工具,只能见步行步。

    因此,我们不需要一而再再而三的强调设计的重要性,而需要总结一套行之有效的设计工具,以满足设计流程的需求。

    面向对象设计是一套工具,但是这套工具和编码环节很接近,属于比较后期的设计工具。

    在前期的设计工具就是收集资料,和分析整理资料,甚至是定下我们产品目标,这些内容很重要,而且应该在流程的初期去完成。你不可能说我用面向对象设计软件出来后,才去分析产品的定位。

    但是程序员的知识面相对比较狭窄,专业,而对于产品层次的东西往往缺少相应的知识和能动性,但实际上做软件并不是编码为目的,而是以产品为目的,这就要求我们要不就具备相应的产品开发知识,要不就要有相关的专业人员去负责。

     如果作为一个独立软件的程序员,应该从整个产品研发流程出发去设计软件。 

    可以的选择是: 

    一、模仿他人

    二、重新定位

     模仿永远是最有效的方法,但是如果对方的条件和你相差太大,模仿是低成效的。

     重新定位就要了解行业状况,知道当前产品的吸引力和不足在哪里,然后结合自身条件,才能从中找到切入点。

     考虑未来:

    产品从研发到生产,需要一段时间,这个时间差可能对产品的定位有很大的影响,需要将时间差考虑进去,为将来开发恰当的产品。

    产品的下一代研发也需要相应的时间,这段时间内就是现有产品必须要维持竞争力,因此也需要将这个因素考虑进去来进行产品定位。

    提高生产效率,降低成本:

    一个相同定位的产品,如果能够提高效率,降低成本,这就能获得更高的利润。在建立定位后,真正可做的不是擅改定位,把一些超酷的功能加进去;,而是保持目标的前提下,不断压缩成本,这是很多程序员不注意的地方,永远想着用最新最酷的工具去开发,而不在乎投入时间和精力,这是有害的。

    有些时候甚至不妨降低定位,以获得更低的成本。

     建立流程和设计工具:

    工具可以是学习得来的,也可以是经验得到的,如果生产者不注重工具和方法,不断以最原始的状态去摸索,必然是低成效的。很多设计工具并不是十分有效。无效的工具会让你大脑一片空白,踌躇不前,失去目标,而有效的工具会让你保持工作状态,不需要反反复复尝试新的方案和路线。 

    工具不是越多越好,也不是越强大越好,而是需要高的生产效率,低的维护和学习成本。一把小刀的事情不要借助电锯。把刀磨利,把流程总结起来,用可以预见的方式去尽心产品开发。

  • 相关阅读:
    Hz赫兹的定义
    NetCore 迅速接入微信支付+支付宝支付 payLink C# 交差并集
    C# 生产随机数 --几乎可以做到不重复
    Spark MLib完整基础入门教程
    (转)Scrapy 教程
    (转)python自顶向下设计步骤_python实现自顶向下,自底向上
    (转)scrapy架构图与执行流程
    (转)Python:字典(zip, dict)
    (转)APUE第13章 守护进程Deameon
    (转)Python开发指南
  • 原文地址:https://www.cnblogs.com/Nobel/p/2385106.html
Copyright © 2011-2022 走看看