linux - Python 诅咒接口(interface)

标签 linux python-3.x design-patterns ncurses curses

我已经使用curses开发了一个程序,到目前为止一切都很酷,但我想知道是否有一个好的模式可以将程序的不同 View /面板分割成可由我的主循环调用的较小块?

更多信息:

该程序是一个相当小的自动化工具/向导,旨在为需要本地安装的客户简化我们的应用程序。

此向导分为 3 个步骤,用于根据所选架构从客户安装需求中获取信息。

第一步是要求客户向我们提供其身份信息,例如契约(Contract)号、公司名称、许可证号和首选联系方式。

第二步是要求客户向我们提供有关他想要独立安装(一体式安装)还是 N 层安装的信息,以及所需的信息,例如请求的自定义 SSL VHostName 或 Tiers IP/凭据。

第三步也是最后一步是向客户显示进度条以及所需服务(MySQL/HTTPd/HAProxy/PHP-FPM)和我们的应用程序的信息。

我知道我并不特别需要为这样的程序使用 curses 库,但我们的 UX 团队要求使用它,因为这是我们解决方案的客户体验的一部分。

最佳答案

您可以查看Forms library.它是 ncurses 的一个很好的扩展,可以让您更好地管理像您这样的输入表单。它提供了一个简单的函数接口(interface)来读取字段、更改其属性等,以及许多不同的字段类型(包括正则表达式验证的字段)。在您的情况下,您只需创建三个表单,然后连续发布/取消发布它们。

关于linux - Python 诅咒接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37864819/

相关文章:

linux - 为什么在 Linux 上以 64 位模式构建的可执行文件显示机器类型为 AMD x86 64?

python - 导入从同一目录导入的模块

scala - 解析命令行参数并在 scala 中执行函数

design-patterns - 我如何替换这个单例?

linux - 生成唯一的 IV header

linux - 片上系统 (SOC) 的设备驱动程序

linux - 如何在加密之前在 tcpdump 中查看传出的 ESP 数据包

python - 统一码编码错误 : 'ascii' codec can't encode characters in position 90-96: ordinal not in range(128)

python - 检查每个用户在 python 3 pandas 数据框中是否有连续的日期

java - 安卓 : Dealing with multiple font files - Correct way