加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

将ASP移植到Django或ASP.NET

发布时间:2020-12-16 07:28:04 所属栏目:asp.Net 来源:网络整理
导读:我们将Asp Classic与VBScript和SQL Server 2005结合使用.网站托管在 Windows Server上. 我已经设法用Python替换VBScript,这是一个很大的改进. 我想知道下一步可能是什么.最初的开发人员是微软产品的粉丝,但他对Python印象深刻.另一方面,我更倾向于开源. 如果
我们将Asp Classic与VBScript和SQL Server 2005结合使用.网站托管在 Windows Server上.

我已经设法用Python替换VBScript,这是一个很大的改进.

我想知道下一步可能是什么.最初的开发人员是微软产品的粉丝,但他对Python印象深刻.另一方面,我更倾向于开源.

如果我们希望以渐进方式转向.NET或Django,您会推荐哪个平台?在这方面,这些增量步骤可能是什么?例如,我目前在我的asp文件的开头有我的模型,在那里我创建了一组python对象.然后,我在文件的其余部分(视图)中使用这些对象.也许下一步是使用HTML模板来表示视图,如果这与asp兼容.

能够为新平台完全添加新页面会很不错.但是,客户端会话需要在asp和新平台之间共享.也许我可以包装asp-classic的Session对象.

还有其他建议吗?

谢谢,

巴里

解决方法

哇,这正是我们(作为一家公司)所经历的.

我们实际上仍然运行着一个很棒的经典ASP Web应用程序.我们已经通过使用WSC(Windows脚本组件或scriptlet)来解决普通的ASP代码可以通过使用WSC(Windows脚本组件或scriptlet)分离关注点这一事实,这实际上在经典ASP中很有用.我们现在有调试组件,国际化,3层架构,没有性能问题.

然而;作为开发者,我们想要“继续”可以这么说.我们尝试的第一件事是将部分vbscript代码实现到Python,至少在现代语言中工作,但是在WSC中实现Python的很多麻烦之后很明显,WSC和Python并不顺利.
My findings regarding Python and WSCs

尝试我们的下一个合乎逻辑的步骤是迁移到ASP.NET,因为这是Microsoft提出的路线图.我们开设了一个C#/ ASP.NET MVC课程,聘请了一位经验丰富的.NET开发人员,开始实施新项目并将现有代码移植到.NET. MVC是来自经典ASP的方式,它是微软在ASP.NET MVC面向应用程序开发人员之前使用的“webforms”抽象,是对无状态Web的可怕抽象.

我们发现,与流行的看法相反,没有简单的方法从经典ASP迁移到ASP.NET(至少如果你想做“正确”的事情,那就不行了).语言是不同的(VB.NET vs vbscript),事实上它完全是面向对象的,这需要很多人了解你之前从未做过OO的东西,框架是不同的(MVC),你会有要接受像lambda表达式这样的东西,即使与数据库交谈也是不同的(LINQ).你需要做的事情太多了,能够在一年内完成一个成功的项目.此外,我们聘请的开发人员是应用程序开发人员,并且指导我们进入ASP.NET不匹配.他知道C#语法,但不知道开发一个大型的Web项目.

与业内同行交谈后,很多人声称自己是.NET开发人员,但实际上他们缺乏经验. .NET是在学校教授的,但刚出校的人只知道基本的东西,需要经验丰富的开发人员培训,至少做几个项目才能变得有用.此外,很多人自己选择.NET,因为它是一个流行的框架,经过一两本书后,可以创建一个简单的网站或应用程序.每个工作现场也有很多这样的工作.事实上,事实证明,很少有真正优秀(甚至是中等优秀)的.NET开发人员可用.我们已经找了一年多的经验丰富的人.

大约在同一时间,我们发现该项目不会在.NET中出现,我们也偶然发现了一个python开发人员(同时寻找更多的.NET开发人员).我们决定放弃我们正在做的事情并再次研究Python.

我们目前正在Django中实现不同的项目,并且我们在过去4个月中取得了比在.NET编程一年中取得的更多进展.主要区别在于.NET / Visual Studio中有很多你“必须知道”的东西,某些文件的位置,做某些东西的工具,在代码中使用lambda表达式的地方,我不能给你确切的例子,因为我幸运地已经忘记了大部分内容.

在Python中也会有很多新东西,但你会喜欢:

>它是动态类型的事实,这很像vbscript.
>我发现编程Python我经常可以编写半个小时
没有运行我的代码,当我最终运行它时它工作
立即.这非常直观.
>它是跨平台的;你可以尝试使用linux作为服务器,如果需要,但IIS也可以工作(使用Helicon Zoo).
> Python开发人员似乎更严肃
关于他们的职业. .NET通常在学校教授,学习
Python是一种有意识的选择.
>您可以选择和选择webframeworks
和ORM,会话层或其他层等技术. Django是
在这方面相当严格,但像金字塔这样的框架非常
灵活.
> Python是OO,但不一定是.中的语言
一般是(可能不是语法上,但肯定是概念上的)a
更好地匹配vbscript.
>如果或当微软决定使用asp.net时
将被抛弃,就像他们使用经典ASP和(例如)
Silverlight,使用Python时不会有问题.

不要误解我的意思,你仍然需要学习很多来自经典ASP的新东西,但根据我们的经验,学习曲线不是迁移到Python而是迁移到ASP.NET,编程更有趣.

编辑:我还有另一个提示;我们现在可以使用memcached COM component在ASP和DJANGO站点之间交换信息.使用它可以从经典ASP访问memcached服务器.
Django可以使用memcached作为后端,因此可以在经典ASP和Django之间快速交换信息.

埃里克

编辑:在我们在Django的初始项目之后,我们目前正在开发Flask.对于经典ASP开发人员来说,Flask比Django更好. Django强加了很多约定,我们发现它限制了我们想要开发的用户界面类型.Django很好,如果你想要快速运行,但我们已经习惯在经典的asp中构建我们自己的表单/ datagrids /向导,而Flask在这方面给你更多的自由.从vbscript / IIS到Python / Flask的过渡是最容易掌握的恕我直言.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读