当我想到关于我们正在构建的应用程序的总体设计时,我在工作场所很孤单。我没有人讨论与不同的框架,技术,模式,分层等利弊。其他程序员或者不在乎或者认为“旧的方式”没有问题,这并不是因为这些应用程序很难维护,不可测试等。如何验证软件设计?
任何有关我如何能够找到志同道合的想法,申请审查或...?我宁愿不改变雇主,但不排除这一点。
当我想到关于我们正在构建的应用程序的总体设计时,我在工作场所很孤单。我没有人讨论与不同的框架,技术,模式,分层等利弊。其他程序员或者不在乎或者认为“旧的方式”没有问题,这并不是因为这些应用程序很难维护,不可测试等。如何验证软件设计?
任何有关我如何能够找到志同道合的想法,申请审查或...?我宁愿不改变雇主,但不排除这一点。
当其他程序员关心良好的软件设计时,这绝对让人难过。唯一的东西我可以建议做的是:
希望帮助本地用户组的好方法。
你可以与他们交谈,看他们是否愿意做Unit Testing。告诉他们,如果他们从测试驱动的开发角度来看它,这将帮助他们更快地发现错误 - 这是绝对正确的。
不幸的是,这是你需要与你的经理和其他程序员谈谈以找出最佳解决方案。许多地方不做任何测试,而且令人失望。
尽管如此,测试是您可以用来验证软件的最佳方法。
是否意识到学习新框架并适应它们确实需要时间才能完成项目。研究新语言是我经常看到程序员用自己的毛钱做的事情,或者他们忙于工作,他们没有精力在数小时后查看新的东西。
这是软件业务处处标准的情况。大多数工人没有资格,根本不在乎。那些通常会表现出冷漠,换工作或者最终开始自己的事情,然后只为薪水而做其他工作的人。
在大多数情况下,您无法做任何事情,因为您的兴趣与您的雇主不一致。你的:使软件完美。雇主:使软件带来收入并削减所有可能的开支。他们几乎从不见面,除了在单一情况下。你需要运气才能找到这样的地方。
我把你的问题分解成两部分:
1)一个是你正在与那些不关心或不理解设计的人一起提问或给出意见。如果人们不关心,那么你可以做的事情就不多了(除了找到一份不同的工作)。如果他们不明白,我会说,也许你可以把设计演示放在一起,让他们加快速度,所以你可以让这些“这是一个很好的设计”对话。
2)如果你正在寻找物理验证,我通常发现有帮助的是做prototyping。这通常会为您提供一个好主意,可以解决您设计中可能出现的任何无法预料的问题。
如果您无法让您的雇主了解V-model进行测试,那么这是该公司的失败原因。
我说:
每个地图的他们相软件开发生命周期,并且是验证软件设计的正确方向。如果可以的话,试着向高层解释这一点。他们可能会受到启发,如果你引入一些其他的公司这样做,谁知道。
有关V-model的更多信息。
首先我建议您参与您所在地区的编程社区。即使您的公司的开发人员在曲线背后,也有可能会遇到讨论软件开发的本地团队。例如,我去Spring用户组和英国计算机学会会议。与同龄人混合会让你接触到不同的技术和方法,并且如果你寻找机会,也有机会了解能帮助你的人。
其次,值得让外部顾问提供独立的代码或设计评审。这可能是一个棘手的问题,但是管理层从一个独立的外部来源听到事情比从一个更初级的开发人员说起来更容易。
我和你一模一样。
就在昨天晚上,我发现了一个网站,您可以在其中上传设计并获得该设计的反馈。
当涉及到使用框架,模式等最好的事情是这样的论坛。当有疑问时,请参阅其他建议和提问。
我从浏览不同的论坛/坐坐了解很多,但这很耗费时间。
试着找一些偶尔见面的小组,在啤酒上讨论这样的事情。我知道我的小镇有会议(虽然我没有时间参加)。