有了VB,VC,我为什么要选择AAuto语言
AAuto的核心稳定和成熟,实际上从快手AAuto第一个测试版发布到现在,几乎所有的BUG都是快手IDE上出现的,半年了没有发现几个BUG是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写程序确有莫大的乐趣。我希望把这种乐趣带给更多的人。
下面是上次的一个贴子:
|
有朋友喜爱编程,没事就啃大堆的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兼具动态语言与静态语言的一些特性。也兼具独立开发语言与脚本语言的特性,是一种新的混合型编程语言。混合流行编程语言精华的一个微型浓缩版本。