Deployment 部署友好代码

Deployment 部署友好代码,deployment,Deployment,对于程序员来说,编写部署友好的代码被认为是一种好的美德吗 如果是,那么在编码时要记住哪些一般注意事项,以便以后部署相同的代码不会成为噩梦?部署的最大改进是尽量减少手动干预和手动步骤。如果您必须键入配置值或手动浏览配置屏幕,则部署中将出现错误。如果您的代码需要“呼叫总部”,请确保用户了解原因,并在必要时关闭该功能。只有在编写要部署在公司网络上的现成软件时,这才可能是一件大事 让您的程序不依赖太多环境因素而无法正常运行也很好。为了解决这个问题,我喜欢用我自己的bin等和其他文件夹定义一个目录结构,这

对于程序员来说,编写部署友好的代码被认为是一种好的美德吗


如果是,那么在编码时要记住哪些一般注意事项,以便以后部署相同的代码不会成为噩梦?

部署的最大改进是尽量减少手动干预和手动步骤。如果您必须键入配置值或手动浏览配置屏幕,则部署中将出现错误。

如果您的代码需要“呼叫总部”,请确保用户了解原因,并在必要时关闭该功能。只有在编写要部署在公司网络上的现成软件时,这才可能是一件大事


让您的程序不依赖太多环境因素而无法正常运行也很好。为了解决这个问题,我喜欢用我自己的bin等和其他文件夹定义一个目录结构,这样所有内容都可以自包含。

我不完全确定“部署友好代码”是什么意思。你在部署什么?“部署”是什么意思


如果你的意思是你的代码应该可以在计算机之间传输,我想最好的办法是尽量减少对外部库的不必要的依赖(使用“不必要的”的给定定义),并很好地记录您所依赖的库。

整个部署过程应该自动化,以最大限度地减少人为错误。软件不应受到环境的影响。任何新的部署都应该很容易回滚,以防出现任何问题。编码时,不应硬编码配置值,因为每个环境可能不同。配置的方式应能根据环境轻松实现自动化。

客户机还是服务器

通常,部署友好意味着您在完成一个小故事/工作单元时完成并验证部署。它来自于持续的质量保证,而不是风格。如果您等到最后一分钟才构建和验证部署,那么最干净的代码永远不会友好


所有其他部署,桌面或服务器,都遵循早期验证。如果您能够尽早解决这些依赖项的交付问题,那么您可以添加您想要的所有古怪的依赖项。一些非常方便的桌面部署机制会导致沙盒/部分受信任的应用程序。最好尽早发现您无法完成某些操作(例如,将日志写入c:\log.txt),而不是晚些时候发现您的客户无法安装

这取决于您是将应用程序部署到少数内部用户、网站还是跨平台商业产品。更加具体可能会得到更好的答案。