Asp classic 经典ASP的推荐参考资料
我必须深入研究一大块遗留ASP代码。为了掌握该平台的最佳实践(面向对象、i18n的配置等),您建议阅读哪些资源?我经常参考Wrox的出版物。本质上,您的ASP页面只是VBScriptAsp classic 经典ASP的推荐参考资料,asp-classic,refactoring,Asp Classic,Refactoring,我必须深入研究一大块遗留ASP代码。为了掌握该平台的最佳实践(面向对象、i18n的配置等),您建议阅读哪些资源?我经常参考Wrox的出版物。本质上,您的ASP页面只是VBScript 如果你的网页上充斥着COM+代码,上帝保佑你。堆栈溢出不是当时发明的,但我建议您在这里花一点时间。经典asp有一点中断,这是真的,但仍然有许多大型网站使用它并取得了成功,我还在一些特定项目中使用它 以下是您感兴趣的一些资源: ,ASP3+原型+脚本包装器 我还在玩它,希望这将有助于首先,理解“经典ASP”
如果你的网页上充斥着COM+代码,上帝保佑你。堆栈溢出不是当时发明的,但我建议您在这里花一点时间。经典asp有一点中断,这是真的,但仍然有许多大型网站使用它并取得了成功,我还在一些特定项目中使用它 以下是您感兴趣的一些资源:
- ASP运行时和内部HTTP对象(请求、响应、服务器、会话、应用程序)
- 脚本引擎(通常是VBScript,但有些站点使用JScript或Perlscript)
- 允许您使用COM对象的COM主机
- ADO文档包含在
- 此外,我们还强烈建议您使用
别害怕。经典的ASP并没有那么糟糕。我随时都会在ASP.NET网络表单上使用它。:) 我会第一个承认VBScript/ASP远不是一个理想的平台,但它远没有一些评论所暗示的那么糟糕。它不是世界上最现代的语言,也有它的缺点,但是用VBScript编写好的、可靠的代码是完全可能的。这不一定是一种折磨;尽管该平台缺少许多使其他语言编程变得简单的工具(列表、继承、导入、合理的赋值语法、适当的构造函数),但大多数工具都可以替换、模拟或变通。VBScript为您提供了一个相当多的工作空间:
- 动态性
- 默认属性
块带有
- 可预测垃圾收集
- 高效响应缓冲器
function assign (byref var, val)
if isObject(val) then
set var = val
else
var = val
end if
end function
例如:
assign bar, foo
很明显,这是一种有纪律的技巧,但如果使用得当,则非常清晰
如果愿意使用VBScript,可以使用VBScript执行更多操作的示例:
myList.map getRef(lcase)
set myDict = DB.get_record "select * from Foo where id=?", Array(42)
import "MyLib"
printf "%s, %!s" Array("Hello", "<World>")
' => Hello, <World>'
with Form.define("User")
with .field("name")
.validate_nonempty
.validate getRef("userNameNotTaken"), "That user name is taken"
end with
with .field("email")
.validate_format emailRegex
end with
with .field("password")
.validate_length 6, null
.validate getRef("passwordIsComplex"), "Your password must contain…"
end with
end with
myList.map getRef(lcase)
设置myDict=DB.get_记录“从Foo中选择*,其中id=?”,数组(42)
导入“MyLib”
printf“%s,%!s”数组(“Hello”,“”)
“=>你好,世界”
使用Form.define(“用户”)
带.字段(“名称”)
.validate_非空
.validate getRef(“UsernameNotTake”),“该用户名已被采用”
以
带.field(“电子邮件”)
.validate_格式emailRegex
以
带.field(“密码”)
.validate_长度6,null
.validate getRef(“passwordIsComplex”),“您的密码必须包含…”
以
以
有句老话说你可以用任何语言写COBOL。这或多或少意味着,在生成好代码方面,语言的特性不如程序员重要。现在,您不能用VBScript编写ruby或python,但是您可以比您想象的更接近ruby或python
编辑:差点忘了。是VBScript的设计师之一,他的博客对于语言中的一些棘手部分来说是一个非常宝贵的资源。是的,你会想问很多问题,希望与摩西一起生活的人会有一些答案。ASP Classic没有那么老。我正在维护很多迁移没有商业意义的老站点。+1代表“经典ASP没那么糟糕”。我很少使用它,但它被恶意攻击得很厉害,事实上远没有人们想象的那么糟糕
myList.map getRef(lcase)
set myDict = DB.get_record "select * from Foo where id=?", Array(42)
import "MyLib"
printf "%s, %!s" Array("Hello", "<World>")
' => Hello, <World>'
with Form.define("User")
with .field("name")
.validate_nonempty
.validate getRef("userNameNotTaken"), "That user name is taken"
end with
with .field("email")
.validate_format emailRegex
end with
with .field("password")
.validate_length 6, null
.validate getRef("passwordIsComplex"), "Your password must contain…"
end with
end with