这是一个关于构建同时具有服务器端和客户端需求的应用程序的最佳方法的问题。原谅我的冗长——我试图尽可能清楚地回答我模糊的问题。
对于一个独立的非网络连接艺术项目,我正在创建一个简单的基于浏览器的应用程序。最好将其与华丽的半复杂计算器进行比较。
我希望该应用程序能够利用浏览器演示功能并在单个非重新加载页面中运行。虽然我有很多使用 perl、PHP 和 Python 编写服务器端应用程序的经验,但我对客户端编程比较陌生,并且是 JavaScript 的新手。
该应用程序将进行一些数学运算,在 Raspberry Pi 上进行一些 I/O 控制,以及大量显示控制。
我最初的想法(和舒适区)是用一些 JS 钩子用 Python 编写它,但我可能需要重新考虑这一点。我更愿意将逻辑层与表示层分开,但鉴于整个事情发生在一个非重新加载的 html 页面上,似乎 JavaScript 是我最合理的选择。
我将在 Raspberry Pi 上运行它,我需要访问 GPIO 端口以进行输入和输出。我知道 JavaScript 将无法直接执行 I/O,因此我需要转向执行 AJAX-ish 类型调用以接收和发送 IO 的东西,例如 nodejs 或 socket.io。
我的主要问题是——在这两种方法之间进行选择是否有明确的最佳实践:
用客户端 JavaScript 编写应用程序的主要逻辑并使用服务器端脚本进行 I/O,或
用 Python 等服务器端语言编写应用程序的逻辑,并调用客户端 Javascript 来管理表示层?
这两种方法都需要客户端和服务器端脚本之间的中介。什么是最简单的平台或图书馆可以做到这一点,并且不会对学习者造成过度杀伤或完全压倒性的服务?