0

我必须构建一个自动聊天应用程序,它将前端作为网站上的小部件和服务器上的后端逻辑。其主要目的是为客户提供一个界面,以便与坐在以服务器为通信点的位置的聊天人员解决他们的查询。如果没有可用的人,则应用程序将解析字符串并尝试通过检查数据库来给出一些答案。

我在 C++ 方面有很好的经验,在 Java 方面有一点经验。该应用程序的主要关注点是源代码安全性和最高效率。

我从服务器端面临的限制是我必须在 IIS 上运行它,并且唯一支持的脚本语言是 PHPv5、ASP、ASP.NET 和 FastCGI。

我不打算使用 PHP,因为我从谷歌搜索中发现可以对它进行逆向工程,而且我需要很多时间来学习一门新语言,所以严格来说不。

我更喜欢使用 FastCGI,因为它可以完全满足我的要求,但我无法找到在 Windows 上使用 C++ 或任何好的教程进行编译的方法。我在 google 上找到的大多数与 FastCGI 开发相关的结果都是关于 Linux 或 Perl for windows。我也无法找到如何在 Windows 平台上编译它的方法。

我现在被迫选择 ASP.NET,这将是我最后的选择,因为它是一种解释性语言,而解释性语言往往不利于逆向工程。

所以任何人都可以建议我如何去做。如果 FastCGI 没有出路,那么在给定的情况下,建议我在 MVC 和 WebForms 中哪个更好。我对他们俩都是新手,我需要在两周内完成申请。

4

2 回答 2

0

FastCGI/C++ 有更好的性能。如果您需要有关操作方法的链接:http ://cgi.sourceforge.net/以及更多使用谷歌搜索的链接。

于 2013-05-12T17:47:36.773 回答
0

第一件事。

  1. 一切都可以逆向工程。这仅取决于尝试对您的代码进行逆向工程的人的聪明程度。混淆不能替代保护您的代码。如果您的服务器端 PHP 安全地存放在您的服务器上,并配置了所有正确的安全参数,那么您无需担心。但是,如果您还不了解 PHP,那么就足够公平了。

  2. ASP.NET 只是部分解释。用于服务器端代码的 C# 或 Visual Basic 已编译。IS 解释的是直接在页面上的代码。请记住,尽管您的大部分逻辑并没有发生在那里......它发生在编译的代码页中,并且页面代码主要用于显示您已经计算的内容。但是不要忘记,当页面提供给用户时,您在页面上的 HTML 中放入的任何服务器端标签都会被解析并删除。如果您有标签 <%: ViewData["value"] %>,则用户在查看您的源代码时只会看到“value”的值,而不是实际的服务器端标签。

  3. 您将很难在两周内学习 ASP.NET 并完成您的应用程序。我个人喜欢 ASP.NET MVC,但如果你没有太多的 Web 编程背景,那么与 Web 窗体相比,它可能不是最容易学习的东西。话虽如此...

  4. 我不是 PHP 的粉丝,但它被广泛使用并且是快速设置简单项目的好语言。那里也有大量示例,它是人们学习的第一种网络语言(部分原因是这些原因)。如果您有两周的时间来学习一门语言并建立一个项目,那就选择 PHP。即使有 C 背景,Web 编程也不仅仅是了解一种服务器端语言,因此最好使用一种快速而肮脏的语言,以最小的努力完成你想要完成的事情。也就是说,PHP。

于 2012-08-04T06:52:54.127 回答