【发布时间】:2009-02-23 23:09:05
【问题描述】:
在我职业生涯的大部分时间里,我一直从事单线程业务逻辑/后端编程。我现在想学习 Web 编程,但想知道 Web 编程与非 GUI 编程有何不同(例如编写 API 或文件处理应用程序)。我不是在谈论 GUI 设计方面(有人已经问过这个问题 here),而是更多关于编程复杂性。
在我做web应用程序的少数场合,我觉得web应用程序相对来说更加不确定和不可预测(例如,由于web应用程序的事件驱动、多线程模型,有几个需要处理的事件和动作的排列和组合)。
您认为 Web 编程与非 GUI 应用程序有哪些不同的基本特征?后端开发人员在开发 Web 应用程序时可能会犯哪些陷阱/错误?
编辑 我对后端编程的定义是指非 GUI 应用程序,如 API 或文件处理批处理应用程序,它们解析大型数据文件、读取记录、对数据进行大量数字运算并将结果输出到另一个文件中或数据库。另一个示例可能是日期和时间实用程序库。
【问题讨论】:
-
我不明白您与“后端编程”的关系。您是否试图区分“桌面”和“网络”开发?
-
没有。我试图区分“非 GUI 编程”和“网络编程”。见编辑。
-
@Rahul,您是否认为控制台应用程序是“后端”,因为它们没有 GUI?
-
@Out Into Space,我会考虑诸如“前端”或 UI 之类的程序(我承认我错误地使用了 GUI 一词。我的意思是 UI)。正如其他人在回复中提到的那样,表示层将程序的复杂性增加了几个数量级。