天天好味道
没钱没权没户口,靠走靠吼靠小狗
随笔 - 66, 文章 - 1, 评论 - 504, 引用 - 5
导航
VC知识库BLOG
首页
新随笔
联系
登录
<
2008年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
留言簿(11)
给我留言
查看公开留言
查看私人留言
随笔分类
智能手机软件开发 (6)
(rss)
Web开发 (2)
(rss)
Lua (4)
(rss)
智力游戏 (2)
(rss)
Python&Toy (10)
(rss)
软件设计 (25)
(rss)
随笔档案
2008年1月 (1)
2007年10月 (2)
2007年9月 (1)
2007年8月 (1)
2007年7月 (6)
2007年6月 (3)
2007年5月 (4)
2007年2月 (3)
2007年1月 (3)
2006年12月 (2)
2006年11月 (4)
2006年10月 (1)
2006年9月 (1)
2006年8月 (8)
2006年7月 (9)
2006年6月 (2)
2006年5月 (6)
2006年4月 (4)
2006年3月 (5)
文章档案
2006年6月 (1)
我的链接
lostpencil
我的主页
搜索
最新评论
1. re: 一段Python程序和C程序的对比
对字符串,用那个B什么树也会比这个hash块,鄙视python
--?????????
2. re: 一段Python程序和C程序的对比
都是他妈的hash!就没有用 状态机的吗?!!你们写过/看过编译器没?编译器的符号表难道使用hash?!!hash重复了多次比较太慢了!hash不是这样用的!
--我
3. re: [S60] ARM平台独有问题 Writable Static Data in DLLs
--bondy
4. re: 一段Python程序和C程序的对比
造了一个3M多行的,比较楼上各位的方法,sort -u 最快,10秒,python也是10秒+,perl17秒,秃子的版本和hash的C++基本在30s~90s
内存占用200M+
鄙视一下自以为是的C++们
D:\>wc ee
3343517 3343517 80152619 ee
--a
5. re: 一段Python程序和C程序的对比
比啥呢?读写操作都不知道剔除,还比个P啊?
--a
6. fffff
--ffff
7. re: [S60] ARM平台独有问题 Writable Static Data in DLLs
--nike shoes
8. re: shttpd和Lua组合-提供嵌入式web服务
http://jason.rocklv.net/downloads/shttpd.lua.cgilua.zip
这个能给我发一份吗?谢谢。下载不了了。
--whuan
9. re: WinCE下的输入输出重定向
比较复杂,没整明白
--多模光纤
10. re: 想不到VIM竟然这么好用
我习惯用vim. 操作方便
--充电器
阅读排行榜
1. 一段Python程序和C程序的对比(11988)
2. Python绝对是最有前途的脚本语言! - 看到Python for S60有感(3280)
3. 郁闷的ACE for WinCE(2920)
4. 一道高中物理题,蛮有意思的。还记得高中物理的可以看看:)(2889)
5. PDF 文件格式描述(2870)
6. 五行写一个atoi(2856)
7. Lua 真是太帅了!(2747)
8. 抽象工厂模式的好处-to 晓寒(2678)
9. [S60] ARM平台独有问题 Writable Static Data in DLLs(2583)
10. 另一个Python和C程序的对比(2456)
评论排行榜
1. 一段Python程序和C程序的对比(166)
2. Python绝对是最有前途的脚本语言! - 看到Python for S60有感(18)
3. 再次崇拜C(16)
4. 郁闷的ACE for WinCE(15)
5. 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了(14)
6. 刚开始学习Web 开发的MVC模式 - CakePHP(13)
7. 想不到VIM竟然这么好用(13)
8. 一道高中物理题,蛮有意思的。还记得高中物理的可以看看:)(12)
9. 一小段Python程序(11)
10. 抽象工厂模式的好处-to 晓寒(11)
正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
这句话说得好。掌握一门脚本语言已经成为程序员必要的技能了。
强烈推荐Python。
posted on 2006-07-20 17:20 jzhang 阅读(1969)
评论(14)
编辑
收藏
评论
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
C/C++都没有学好,仅仅是会一点的阶段,你推荐学这些脚本语言吗?或者讲,什么层次的人应该学?
2006-07-20 17:52 |
zuilang
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
这个。。。
1 ,C++从未在企业开发领域占据主流
2,因为1,所以Java也没有在企业开发领域推倒C++
3,脚本和动态语言并不完全等同,虽然多数时候是这样。
4,脚本在相当多的领域,早就成为主流了,比如网站开发
。。。。。。
2006-07-20 17:56 |
pAnic
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
脚本语言绝对不可能成为主流,比如在游戏开发领域,以c/c++为主,脚本语言只是辅助的,象 python 和lua等
2006-07-20 21:32 |
fastzhao的冲洗店
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
脚本语言早就有了,如basic
2006-07-20 21:58 |
小明
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
首先就算是整个领域主流也不代表能取提!
对于脚本, 动态这些似乎大家没有一个统一的定义, 在GOOGLE上查了一下:
脚本语言:
在计算机程序中,一个脚本,通常的说,是一种计算机语言,可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本基准编辑程序中,用户可以使用脚本来把一些常用的操作组合成一组序列。主要用来书写这种脚本的语言叫做脚本语言。
Scripting programming languages (commonly called scripting languages or script languages) are computer programming languagesdesigned for "scripting" the operation of a computer. Early script languages were often called batch languages or job control languages.
动态语言:
In computer science, a dynamic programming language is a kind of programming language in which programs can change their structure as they run: functions may be introduced or removed, new classes of objects may be created, new modules may appear. As a side effect of this dynamism, most dynamic programming languages are dynamically typed, which static typing advocates consider a drawback (see also static typing). .
一般(C/C++, JAVA, C#, DELPHI)都为静态语言, 而(Python, lisp, Perl, php,Smalltalk)被视为动态语言. 置于脚本它并不能作为区分语言种类的条件, 因为按定义只要是一组指令基本就可以说它是脚本.
我个人认为动/静之分在于动者在源程序层面直接被解释执行, 而静者则紧是解释转换为其它形式编码.
下面是一编搜到的文章
Are Dynamic Languages Going to Replace Static Languages?
by Robert C. Martin
http://www.artima.com/weblogs/viewpost.jsp?thread=4639
2006-07-21 00:35 |
hpho
#
re pAnic
这话可能不够准确:
1. Java应该说是开创了企业开发领域,从而成为主流语言
2. 同样,经过长期的发展,脚本语言也将获得广阔的空间,成为主流
2006-07-21 08:39 |
jzhang
#
To hpho
脚本语言的定义的确比较模糊。传统的思维,认为脚本就代码那些,为了在某些领域达到最高的开发效率,或者为了将某些特性发挥到极致,而牺牲类型检查,效率等特性的语言。
举例:Basic是为了容易学习,他最初设计的时候几乎就是为了让人容易入门。效率很差
PHP则几乎就是为了开发网站而存在的,所以他提供强大的数据类型和动态特性,以及强大的字符串处理。但是很不好用来做其他开发
Logo也算一种吧,他的特点就更加明显了,就为了在屏幕上划几幅图
2006-07-21 10:18 |
jzhang
#
to zuilang
总的来讲,脚本语言目前还是处于一个配角的地位,虽然前景很光明。所以你可以用一种轻松的心态来学习一门脚本语言,他们暂时不会也不能代替C/C++,Java,C#等语言。但是掌握一门好的脚本语言,会给你的工作带来很大的效率提升。 比如Python,具有如下特点:
安装简便,使用简单
动态语言,数据类型及其丰富和强大
非常强大的库支持
我在工作中经常使用Python来完成一些事情,比如我前面提到的那个数据绑定的代码生成器,就是用Python写的。如果用C++,代码量可能要3倍以上。
2006-07-21 10:24 |
jzhang
#
to pAnic & hpho:
两位谁能给一个“计算机设计语言”的定义?
按照六七十年代的定义,包括Java都算不上语言,只是特定软件(假设为JVM)提供的复杂互动的用户接口而已。而且按照最初的蓝图,特定领域(比如 数值分析)当由通用语言的库或专用语言提供(显然,现今并没有违背当初的设想),而类似于jzhang大侠口中的“企业开发领域”在最初蓝图中连“库”都配不上,只能算一类软件而已。事实上我觉得如今的发展并没有丝毫脱离当初的蓝图,也不可能脱离,而关键问题在于“计算机设计语言”的定义被有意无意的篡改了。这一点容后讨论,先给出最初“计算机设计语言”定义下的蓝图:
计算机设计语言 --- \
计算机设计语言 --- 库 ------ 程序 --- 特定操作 --- 完成特定功能
库 --- /
可以看出,上图中“程序的特定操作”和“计算机设计语言”非常容易混淆,尤其是当这个“特定操作”变得越发复杂时。自从“HTML是计算机设计语言”这个笑话不再是笑话后,一切都变了:
汇编是计算机设计语言吧?肯定是,没有任何异议?
C/C++是计算机设计语言吧?肯定是,没有任何异议?
Java/HTML等是计算机设计语言吧?放在现在,也毫无异议,是。
在notepad.exe中打字是不是计算机设计语言???
仅从输入输出接口来看,应该是,notepad也需要用户输入,如果用户输入错误,结果就不是用户想要的,和语法正确但逻辑错误的计算机设计语言一样;而输出是.txt文本,.txt不是可执行文件,但没有人(据我理解)规定输出必须是可执行文件,起码java/HTML等语言的输出就不是可执行文件,和.txt一样,需要别的程序解释,不同的是解释程序不一样而已,一个命名为JVM,一个命名为notepad,在windows下,.txt也是直接关联到notepad的,双击同样运行。而目的更是一致,计算机设计语言下的程序解决了某个问题,notepad下的.txt也解决了某个问题:向用户显示出指定文字。这一点是不是像用GDI输出一段文字一样?^_^
从 程序=数据结构+算法 来看,notepad不是没有,只是更少更不重要而已,事实上很多语言,尤其是Shell语言,也不过就是一个功能组装而已。
我并不是在狡辩,虽然我举notepad这个例子有点可笑,现在我隆重请出AutoLisp,它不是Lisp,但和Lisp一样,包括有Lisp语言的所有元素,从这种意义上讲我一开始就可以称它为“AutoLisp语言”(当然包括AutoCAD都这么称呼它),但它又确确实实不是计算机设计语言,它只是AutoCAD软件中为完成某些工作提供的用户接口,这个用户接口定义得非常复杂,复杂得和Lisp语言一样,但和两三个按钮的用户接口的本质却还是一样。现在你说AutoLisp是不是语言,你说word中的basic宏是不是语言,你说word是不是语言?
反而是旁观者清,我第三次请出XX防疫站某同志当年问我的一个问题:“为什么有了word之后,你们还要写软件呀?”
按照现在的“计算机设计语言”的定义,word这个字处理软件当仁不让的属于计算机设计语言,且比C#/VB更容易上手。
--- 注一下,我个人并不反对HTML/notepad等进入“计算机设计语言”的范畴,概念这玩意儿就应该入乡随俗。
现在,因为“计算机设计语言”的定义在如今被有意无意篡改到无限大,HTML都已经是计算机设计语言了,所以鱼龙混杂,必然多事。越来越多的语言之间比较的文章,越来越多的语法发展方向上的指手画脚……,等于拿着米尺(计算机设计语言的定义就是刻度)去尺量粟米和小米的长度,当然乱扯一通都有理,但如果使用当初的计算机设计语言的严格定义,那么可以毫不客气的回答所有人:“你说得很有理,但与程序设计无关”
上一段我有意写得很晦涩,太直白容易伤到花花草草。我的基本观点是,如今的很多语言,并不在于专注领域的不同,也不在于等级层次的不同,而在于概念的不同,这个概念就是这个语言眼中的世界观,当然包括计算机设计语言的定义。所以无法拿过来比较。
--- 另外,to hpho:我不同意你刚才说的 ------ “我觉得这可能是C++协会的一个策略. 因为如果大家都做同一件事, 大部人会有先入为主的观念, 就算你做得再好, 他们仍然会觉第一个做这件事的人是最好的. 因此这种吃力不讨好的事C++标准协会觉得不做还可以省点力且能有个好名声. 再者真的做了又怎样能吸引或挽留部分用户!? 但这些用户可能又会因其它'利'而忘'义'的最后还是会流失, 一次不忠百次容. 语言需要有一些铁杆(通常这邦人都比较保守)支持当然要顺他们的意思了!” ------ 理由就在上一段,并不是某些东西“先入为主”,而是你本身不赞同C++的设计理念,也就是说 你定义的语言 和 C++定义的语言 在概念上就不等同。
学佛后,越来越觉得自己变得宽容起来了,嘿嘿,我觉得Java和C++是同一个东西,放在严格的计算机设计语言定义下,它必然就变身为C++,放在如今空洞的定义下它就一定是Java,所以我觉得Java和C++只是表象,问题还是在于“计算机设计语言”的定义是什么?不把这个问题搞清楚,就不知道什么才是软件开发,什么才是软件?
2006-07-21 14:39 |
周星星
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
Windows跟Unix的设计理念不同。
Unix的文化讲究把小事做好——一个程序专注一个点一个面,去做好,就可以了。这样就有千千万万的小程序,比如grep,比如make等等。如何将这些精致完美的小程序组合一起使用?于是就出现种种胶合语言,他们的目的不在于从根本上解决问题,而是在于最快速(人力快速)最高效(人力高效)的解决问题,他们采用的更多是组合现有成果的方式。碰巧Unix的管道,Unix的文本化输出也很好的支持了他们这么做。于是乎,胶合语言(动态语言)也就在Unix用户Unix程序员的生活中占有着越来越重要的地位。
Windows则不同。Windows讲究的是替用户做好一切事。从这方面说,软件开发人员作为软件开发工具的客户也吃着现成饭,在自立更生改善开发环境(自己给自己打环境做工具)上跟Unix开发人员没法比。另外,就是有心,也没有现成的精辟的小工具可以利用。就是有小工具,Windows也没有为他们之间的组合提供方便。(Windows的管道不好使,Windows的程序大多都是GUI界面类的,就是console的也不讲究输出格式——不统一)
python、perl在Linux上都是预装的,而在Windows上都是自己装的。一句话,就是你用python写个程序
送给别人,他未必乐意去装个python环境,他未必喜欢用。所以python在win上要靠你去推,推不起来,久而久之,没准你也放弃了。
所以,Windows开发人员不了解这些胶合语言,不愿意也没必要去了解。如果一件事务跟你没关,你非要说他好,你非要认同它比你熟悉喜欢的东东还好,那是不可能的。所以,扯这个话题实在是浪费时间——当你需要用真正用他时,你就意识到他价值了;当你天天都用他时,你就理解它存在的必要了
2006-07-22 00:04 |
一笑
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
没有C++等语言,哪来的Java虚拟机!
再说了,Java等解释性语言没有效率可言……
我也在学Java,感觉Java的可移植性决定了它不能成为一门高效的语言。
2006-07-22 09:30 |
一个咸蛋的唠叨
#
今天坐公交的时候我还想了想**的帖子
翻来覆去,从拔插电线,到纸带打孔,从Fortran到C,可是后来我一样,想这些有什么用啊?就作罢了,接着想设计模式的事情了,hoho
to 唠叨:你的观点还很初步,可以再看看。:)
2006-07-22 13:57 |
jzhang
#
胡乱参合一下
汉语,是一门语言,为很多人都能懂。
英语、法语、日语等等等,都是语言,也为很多人所懂。
c/c++是语言、Java也是语言。但asp不是。为什么?就如同汉语等一样,因为他们有一套语法、语意来维护和构成一套较完备的开放能力和需求,为大家能理解和接受。而asp没有自己的语法、语意,用的是vbscript和javascript来完成工作(就像,人类语言的交流和领悟)。
2006-07-22 21:13 |
清风雨
#
re: 正如java在企业开发领域推倒C++一样。脚本或称为动态语言成为主流的时刻不远了
健康的现象应该 是C/C++ 和 某些脚本语言同时成为 主流语言。两类语言相辅相成。
脚本语言的存在,即使功能不强大,却可能成千成万倍地拓展用C/C++写成的软件的功能和适应性! 最典型的例子就是 AutoLISP语言与 AutoCAD的相辅相成关系。 就语言方面来说, AutoLISP功能很弱,总共仅仅100多个内建函数,但是AutoCAD的成功,在很大程度上却是得益于其AutoLISP语言!!! 后来AutoCAD提供的其它开发语言则是起锦上添花作用。
2006-07-29 22:17 |
Ishou
标题
姓名
主页
验证码
*
内容
Remember Me?
登录
使用高级评论
Top
[使用Ctrl+Enter键可以直接提交]
Powered by:
Copyright © jzhang