文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>有了VB,VC,我为什么要选择AAuto语言

有了VB,VC,我为什么要选择AAuto语言

时间:2010-10-08  来源:快手人生

AAuto的核心稳定和成熟,实际上从快手AAuto第一个测试版发布到现在,几乎所有的BUG都是快手IDE上出现的,半年了没有发现几个BUG是AAuto导致的,这正是因为AAuto在漫长的开发过程中注重质量,保持了良好的概念一致性所导致的必然结果。

感谢众多的AAuto用户,SVN用户,他们都在为AAuto默默的付出,无偿的提供很棒的库,为AAuto扩展有趣的功能,以及优秀的示例,我觉得我们是一个很大很大的团队,从来没有感觉我是一个人。

AAuto是一个开放的平台,将复杂的软件需求分解为互不相关的模块化开发,每个人都可以参与进来写库,个人的力量必将汇聚为不可阻挡的洪流。



其实之前我发过很多有关的贴子,编程语言实在是太复杂的东西,不是对着键盘不加思索就能敲出一些象样的道理了,以后有时间我会总结一下思路,写一些相关的文章,我觉得事实胜于雄辩,懂了AAuto的人会真正理解他的好处,至于没有兴趣的,那就不必勉强了。假以时日,好的东西终究会被认可,不然口水喷的再多,也只是短期效应。

不得不说人有种弊病,国外出现一个新的语言,还没有搞清楚,也没有真正明白广告词的水份,不论是好是坏,就趋之若鹜,而国内的东西不鄙视一下,不能显出自已的水准,这个是很无奈的事。

编程是一个超常的消耗脑力的工作,实际上很多人无法承受这种工作,更不要说去享受他的乐趣了,不能享受其乐趣,也就不能真正深入一门编程语言去理解他,那么只是使用,产生似是而非的观点,看起来好象是,又好象不是那么回事,反正大多数人都搞不清楚。

首先谈一下你提到的几种语言,例如认为VB比VC好用,这只是自已在误导自已,你看上去好用的东西不一定真正好用,看上去不好用的东西不一定不好用,这就好象习武的人练打拳,入门时肯定让你处处不舒服,你才能达到收发自如的境界,成为高手,处处让你舒服,纵容你,最后用的不爽的还是你自已,先进的编程语言往往在入门的时候给你一些新的限制,以致于有时候让你无法理解与难以接受,编程语言的发展就是增加使用语言的限制,而实际上这些限制正是一代代有经验的程序员从自已犯下的沉重的错误中总结出来的防护网,他让你从处处受限到最终的运用自如。而目前不断的诞生新语言,他们总是在试图让程序员员获得最大的自由,这是一个被过度追捧的误区!

如果VB好用,微软也没有必要去抛弃他,VB的本机版本从VB6以后再也没有发行过升级版,我想将来也不会,至于VB.NET,这东西用来做网站是可以,做桌面工具还是免了吧。VB需要在系统里安装运行库,实际上VB真正做个象样的程序,仅仅是一个运行库还是不够的,可能还要安装一大堆控件,要命的是每个都有版本兼容的问题,还有他有个要命的缺陷,居然不支持多线程。

这就是你说的“大佬”开发的语言,同样有很多的缺陷。
《人月神话》上说,做软件人多是没有用的,做软件就象生孩子,一个妈生要十个月,十个妈帮忙还是要十个月,人多没有用。就是软件“大佬”也常常要去问一些个人开发者购买核心的技术。不要太迷信“大佬”!


你提到的VB\VC\DELPHI诞生的时候技术还很落后,而AAuto已经吸取了很多编程语言的经验和营养,去其糟粕取其精华,新的语言虽然还不成熟,但是却有着新的生命力,这就是先天的优势。VB\VC\DELPHI都是静态语言,而AAuto是动态语言,动态语言比静态语言易于使用,这是众所周知的一个道理,动态语言的限制更少,更加灵活,尤其适合新手、以及快速开发。我就不长篇大论的发挥了。

动态语言虽然好用,但是他不能较好的支持静态类型,所以他虽然好用,却啥都干不了,要想干点什么,最终还是要开动C++这些语言来写模块(所以懂C++也可以使用动态语言,认为用了VC++,就没有必要用动态语言,这个一点不客气的说,他可能对C++也没搞的很懂)
但是AAuto可以,AAuto是第一个走出纯脚本语言阴影的动态语言,可以完美的支持静态类型,使动态语言可以独立开发程序,这是一个巨大的突破,也是非常有趣的一件事,在编程的过程中可以体验到非常自由的一种乐趣,这在任何编程语言里你都做不到。

很多用AAuto写出程序的学习都不久,虽然语法文档也是最近几天才整理出来,可是大家依然做的很好。非常快的开发出了很多作品,例如dasan开发的聊天室服务端、客户端,lujjjh开发的仿360漏洞扫描,这些都难以想象的是依靠纯“脚本语言”实现的程序,开发速度非常快,运行速度同样快,AAuto整个GUI界面库都是用纯AAuto代码直接实现,代码简洁短小,大家接触AAuto的时间都很短,AAuto的正式文档出来才几天。其他语言的文档,书籍我相信大多可以堆积如山了,很多语言都是大力的鼓吹易用性,可是一个新手短时间能开发程序吗?例如C++你没有几年的时间可以用得熟练?VB你没有几个月的学习能运用自如,我想那是天才。

实际上AAuto的创新特性有很多,也不是这里能说得完的,例如:你可以用多种不同的编程语言的语法来写程序,这在其他编程语言里是不可能的。你能在C++里用PASCAL的语法吗,你能在VB里用C++的语法吗,不能,这在其他语言里是努力回避的,但是AAuto完全不一样,你用C式的语句块里嵌入PASCAL风格的语句块,代码会更清晰,但是从来没有人愿意这么去做,他们总是不断的创造新的、酷的语法,并宣称“很容易”学习。

你在AAuto里可以尝试其他多种编程语言里的东西,静态类型,动态类型,各种不同的语法风格,你开发的程序不需要在系统安装运行库,可以多线程,速度非常快,开发过程也很快。这都是其他语言所不能提供给你的。AAuto的学习成本小,而且有很好的兼容性,我曾经说过,学习一年的AAuto再去学习一年的C++,抵得上学习五年的C++.


AAUTO替代不了VB,VC,DELPHI,同样他们也替代不了AAUTO。
他们不是冲突对立的关系,而是互补的关系,虽然这些编程语言我都用过,但是我现在用得最多的就是AAuto,并不是说这个东西是我写的我就用,而是用AAuto写程序确有莫大的乐趣。我希望把这种乐趣带给更多的人。


下面是上次的一个贴子:


很高兴同您探讨这个问题,以下是我的看法:

VC,VB,Delphi是静态语言。静态语言有他的性能优势,
动态语言的优势就是学和使用都更为简单、也更加的方便。但是他的缺陷就是不能直接支持静态类型,很多时候要使用其他的语言去编写组件,就是说是一种胶水语言,享受他的易用性,却又做不了什么事,要做事的话就得用其他语言写DLL什么的。

而AAuto是动态语言,是以保持了良好的易用性,易于学习和使用,比较VB,VC,DELPHI来说更加简单。
而且他的运行速度虽然比不上纯静态的语言,但是在动态语言里来比较就非常快的。
而且他又完全的支持静态类型,是以不需要其他语言的辅助即可单独的完成需求。

其次,因为AAuto支持静态类型,他们又有非常多的相似的地方,有很多的知识点完全重叠。
例如win sdk,如果你把aauto的库看过一遍,看明白了,那么你用vc,vb都可以做一个自已的ui库了。
例如置顶的的那个取硬盘序列号的示例,是C++代码略加修改而来,基本上就是VC的代码非常之接近。

我觉得与VC,VB,DELPHI比较,首先是易于学习和使用。
其次是AAuto与这些语言又有非常多相通和重叠的知识点(一般其他新的语言在诞生时,他们都极力的避免这一点,并努力的制造另类的东西,做特色,这个在之前的贴子中我举了很多例子,而AAuto是求大同的原则)

那么AAuto的局限性在哪里呢?任何东西都有他的局限性,不能说没有。
AAuto他只适合开发小软件,你不太可能用他来做一个几百兆的企业管理系统,你更不能用他来做网站。 

我给AAuto的定位就是小型工具快速开发。
虽然我自已用C/C++,但是我很多的工作用AAuto完成,这个我以前在论坛的贴子也讲过很多。
因为他灵活,你会发现一些东西很轻易,例如你不需要声明接口,类型,动态的生成各种类型。
是以即使你熟练的使用VC,VB,DELPHI,AAuto也会成为你很好的助手,你会体会到很多的一些任务,你花上十分钟用AAuto可以完成,大可不必启动宠大的开发工具。杀鸡焉用牛刀!

无论如何,AAuto的全部发行包只有几兆,包含范例,手册等等,而最新的VC将近3000兆,在学习和运用上,AAuto是具有轻量的优势。但是他虽然非常小,支持的接口却非常的丰富。

我建议将AAuto作为一种入门的语言。
如果需要做大型的系统,可以更进一步了解其他的语言。
有了AAuto的基础,学习任何编程语言都会大大降低难度。

我强烈建议大家看入门视频,基本上可以了解AAuto

30分钟会编程(1):Hello world
http://www.ecranesoft.com/aauto/vod/primer/Hello world/Hello world.htm
30分钟会编程(2):AAuto语言快速入门
http://www.ecranesoft.com/aauto/vod/primer/AAuto%20Program/AAuto%20Program.htm
30分钟会编程(3):开发环境常用技巧
http://www.ecranesoft.com/aauto/vod/primer/IDE/IDE.htm 

crane 发表于 2010-7-8 22:29:00


有朋友喜爱编程,没事就啃大堆的VB,VC编程书,如此三五年,摸不到编程的边,仅仅看了AAuto一下午,忽然大悟,原来一直被书搞晕,用快手写软件是如此简单。

 

 

编译型语言就是编译的时候直接编译成机器可以执行的代码,不支持运行时编译。 例如:C/C++/Delphi 

  解释语言指编译为中间码,并支持运行时编译的语言 例如:JAVA/C# 

  动态语言,准确地说,是指程序可以运行时编译,仅在运行时进行类型检查,在运行时可以改变类型结构,类可以在运行时被创建或删除,可以在运行时创建或删除函数。 


  静态语言,类型判断是在编译时判断,静态类型语言需要类型声明、接口定义,而动态语言因为避免了大量类型、接口相关代码,易于理解和使用。 例如C#、C++都是静态语言。 

  注意:一些静态语言包含特殊的动态数据类型,但并不能说他们是动态语言,这种动态类型仍然会在编译时被转换为静态类型。只不过为了书写方便引入的一些关键字而已。


  脚本语言指不需要编译即可运行、并且依赖宿主应用程序运行。 
  通俗的说脚本语言本身就是不完整的语言,只能是一种胶水语言。不能独立的生成程序。

  解释语言并不等同于脚本语言,你不能说java,c#是脚本语言。 
  共同点是解释语言都要依赖框架、脚本语言需要依赖宿主应用程序,他们都不能生成真正意义上的独立应用程序。


    AAuto首先是动态语言的一种,但是他同时支持静态类型,AAuto程序需要编译才可运行,但AAuto可以在运行时编译,AAuto程序不需要外部的框架,更不需要宿主应用程序。可以生成真正意义上的独立应用程序。AAuto制作的程序不需要安装程序,也不需要释放DLL运行库,AAuto制作的程序都是绿色免安装程序。 

  AAuto不但具有传统静态编译语言的开发功能,解释语言、动态语言的特性,而且AAuto也可以实现脚本语言的功能,你可以把程序放在一个文本中,用loadcode即时加载,实时运行,可以作为配置性的脚本语言,关键在于,你可以用AAuto开发宿主程序,再用AAuto作为脚本语言来使用。

  AAuto兼具动态语言与静态语言的一些特性。也兼具独立开发语言与脚本语言的特性,是一种新的混合型编程语言。混合流行编程语言精华的一个微型浓缩版本。

原文地址:http://www.ecranesoft.com/bbs/showtopic-8532.aspx

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载