o***r 发帖数: 81 | 1 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project)
教课的老师说可以随便用任何编程语言。
去年这门课的5个assignment是
vacuum planner,theorem prover,general planner,reinforcement learning,
classifier
我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下:
1.Ocaml
这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。
看过一点Berkeley的scheme教学视频,觉得很震撼很强大。
2.Java
以前看过一点,而且从C/C++转也容易点。下学期同时上一门数据库的课程要用Java。
3.Python
看同学用过,很方便很强大,也能做functional programming. |
g*****g 发帖数: 34805 | 2 Go with a simple language so you don't bust your time on language
itself. I'd say Java or Python.
【在 o***r 的大作中提到】 : 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project) : 教课的老师说可以随便用任何编程语言。 : 去年这门课的5个assignment是 : vacuum planner,theorem prover,general planner,reinforcement learning, : classifier : 我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下: : 1.Ocaml : 这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。 : 看过一点Berkeley的scheme教学视频,觉得很震撼很强大。 : 2.Java
|
o***r 发帖数: 81 | 3 有道理。我先把java学学再考虑别的,保命要紧。
不过放过一个用Ocaml的老师不跟着学有点可惜呀。
【在 g*****g 的大作中提到】 : Go with a simple language so you don't bust your time on language : itself. I'd say Java or Python.
|
w***g 发帖数: 5958 | 4 C++ 加上boost应该够用了。如果想再学一个的话对于machine learning(带点统计的)
来说最好就是matlab。java比起C++来说在course project上没有明显的优势。函数式语
言如果你不是搞programming language的话以后没什么大用处。
我自己比较喜欢C++。
【在 o***r 的大作中提到】 : 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project) : 教课的老师说可以随便用任何编程语言。 : 去年这门课的5个assignment是 : vacuum planner,theorem prover,general planner,reinforcement learning, : classifier : 我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下: : 1.Ocaml : 这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。 : 看过一点Berkeley的scheme教学视频,觉得很震撼很强大。 : 2.Java
|
g*****g 发帖数: 34805 | 5
的)
式语
这个优势很大,写java程序无论开发还是debug都快得多。
【在 w***g 的大作中提到】 : C++ 加上boost应该够用了。如果想再学一个的话对于machine learning(带点统计的) : 来说最好就是matlab。java比起C++来说在course project上没有明显的优势。函数式语 : 言如果你不是搞programming language的话以后没什么大用处。 : 我自己比较喜欢C++。
|
b******n 发帖数: 592 | 6 there are many ai package for python as well..it is easy to use.
【在 o***r 的大作中提到】 : 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project) : 教课的老师说可以随便用任何编程语言。 : 去年这门课的5个assignment是 : vacuum planner,theorem prover,general planner,reinforcement learning, : classifier : 我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下: : 1.Ocaml : 这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。 : 看过一点Berkeley的scheme教学视频,觉得很震撼很强大。 : 2.Java
|
m****t 发帖数: 37 | 7 我发现我们这边很多C++ er都很猥琐
用VC调试,写完了扔到linux下面跑
【在 g*****g 的大作中提到】 : : 的) : 式语 : 这个优势很大,写java程序无论开发还是debug都快得多。
|
t****t 发帖数: 6806 | 8 我怎么觉得linux下调试要容易太多
【在 m****t 的大作中提到】 : 我发现我们这边很多C++ er都很猥琐 : 用VC调试,写完了扔到linux下面跑
|
T*******i 发帖数: 4992 | 9 vs还是很强滴
【在 t****t 的大作中提到】 : 我怎么觉得linux下调试要容易太多
|
m****t 发帖数: 37 | 10 gdb?
我觉得还是难调。。。
【在 t****t 的大作中提到】 : 我怎么觉得linux下调试要容易太多
|
|
|
T*******i 发帖数: 4992 | 11 有啥问题?
【在 m****t 的大作中提到】 : 我发现我们这边很多C++ er都很猥琐 : 用VC调试,写完了扔到linux下面跑
|
T*******i 发帖数: 4992 | 12 nod. of course, python
【在 b******n 的大作中提到】 : there are many ai package for python as well..it is easy to use.
|
m****t 发帖数: 37 | 13 如果不怎么调用posix的syscall差别不大
【在 T*******i 的大作中提到】 : 有啥问题?
|
T*******i 发帖数: 4992 | 14 有syscall的单独做个库,最好和windows对应,还能跨平台
【在 m****t 的大作中提到】 : 如果不怎么调用posix的syscall差别不大
|
m****t 发帖数: 37 | 15 晕
工作量太大了。。。
【在 T*******i 的大作中提到】 : 有syscall的单独做个库,最好和windows对应,还能跨平台
|
T*******i 发帖数: 4992 | 16 直接用macro开关调用windows api也行
挺简单的
【在 m****t 的大作中提到】 : 晕 : 工作量太大了。。。
|
t****t 发帖数: 6806 | 17 别的不说, core dump以后用core file调用gdb就比VS强10倍了, VS只能在出错以后立
刻进入debug才行
另外valgrind在windows上根本没有.
设断点慢慢跟踪这种糙活我好久不干了.
【在 m****t 的大作中提到】 : gdb? : 我觉得还是难调。。。
|
s***e 发帖数: 122 | 18 你已经会C/C++了,学Java会比较快,而且Java的工作也比较多一些。
【在 o***r 的大作中提到】 : 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project) : 教课的老师说可以随便用任何编程语言。 : 去年这门课的5个assignment是 : vacuum planner,theorem prover,general planner,reinforcement learning, : classifier : 我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下: : 1.Ocaml : 这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。 : 看过一点Berkeley的scheme教学视频,觉得很震撼很强大。 : 2.Java
|
T*******i 发帖数: 4992 | 19 boundchecker, insure++都挺好的
vs作为ide,还是很不错的
【在 t****t 的大作中提到】 : 别的不说, core dump以后用core file调用gdb就比VS强10倍了, VS只能在出错以后立 : 刻进入debug才行 : 另外valgrind在windows上根本没有. : 设断点慢慢跟踪这种糙活我好久不干了.
|
s***e 发帖数: 122 | 20 那只是调试而已,从开发环境来说,有一个好的IDE肯定会提高很多效率。
【在 t****t 的大作中提到】 : 别的不说, core dump以后用core file调用gdb就比VS强10倍了, VS只能在出错以后立 : 刻进入debug才行 : 另外valgrind在windows上根本没有. : 设断点慢慢跟踪这种糙活我好久不干了.
|
|
|
T*****9 发帖数: 2484 | 21 我在国内的时候有一个室友热衷于使用KDeveloper...
【在 s***e 的大作中提到】 : 那只是调试而已,从开发环境来说,有一个好的IDE肯定会提高很多效率。
|
s***e 发帖数: 122 | 22 我个人很喜欢eclipse+CDT,现在把valgrind挂到external tools里面去了。可惜速度
慢了点,但是功能多还是补偿了不少。
【在 T*****9 的大作中提到】 : 我在国内的时候有一个室友热衷于使用KDeveloper...
|
t****t 发帖数: 6806 | 23 boundschecker应该是不错, 不过不是free的
insure++没听说过, 谁做的?
IDE是另一回事. 作为IDE, VS当然很好, 但是刚才说WS的那位说的是调试.
而且你要把程序拿到linux上跑, 必然不能用windows的库, 那IDE作用就很有限了.
【在 T*******i 的大作中提到】 : boundchecker, insure++都挺好的 : vs作为ide,还是很不错的
|
T*******i 发帖数: 4992 | 24 windows上搞就不要讲究钱了,反正是公司出
parasoft
可以做unit test么
【在 t****t 的大作中提到】 : boundschecker应该是不错, 不过不是free的 : insure++没听说过, 谁做的? : IDE是另一回事. 作为IDE, VS当然很好, 但是刚才说WS的那位说的是调试. : 而且你要把程序拿到linux上跑, 必然不能用windows的库, 那IDE作用就很有限了.
|
s***e 发帖数: 122 | 25 IDE至少有几个好处,智能编辑,错误检查,还有模板文件生成,写程序的时候比用普
通编辑程序写起来快得不是一般的多。所以我写程序的时候一定用IDE,速度快啊。
【在 t****t 的大作中提到】 : boundschecker应该是不错, 不过不是free的 : insure++没听说过, 谁做的? : IDE是另一回事. 作为IDE, VS当然很好, 但是刚才说WS的那位说的是调试. : 而且你要把程序拿到linux上跑, 必然不能用windows的库, 那IDE作用就很有限了.
|
y*******g 发帖数: 6599 | 26 java工作大部分要求j2ee的, 学起来也不快
【在 s***e 的大作中提到】 : 你已经会C/C++了,学Java会比较快,而且Java的工作也比较多一些。
|
t****t 发帖数: 6806 | 27 呵呵, 我又不是没有用过IDE.
【在 s***e 的大作中提到】 : IDE至少有几个好处,智能编辑,错误检查,还有模板文件生成,写程序的时候比用普 : 通编辑程序写起来快得不是一般的多。所以我写程序的时候一定用IDE,速度快啊。
|
t****t 发帖数: 6806 | 28 况且你还可以在windows上编辑, 在linux上调试. 反正我觉得调试linux比windows强太
多了.
我前一阵要调一个硬件, 只能在windows上干, 把我难受坏了.
【在 s***e 的大作中提到】 : IDE至少有几个好处,智能编辑,错误检查,还有模板文件生成,写程序的时候比用普 : 通编辑程序写起来快得不是一般的多。所以我写程序的时候一定用IDE,速度快啊。
|
t****t 发帖数: 6806 | 29 一般公司哪里会给你装这个. 你要申请什么的, 还得费老鼻子劲, 当然这个跟IT的效率
有关. 象我们做硬件的公司, 就想都不要想了.
况且OP不是说的是学校么.
【在 T*******i 的大作中提到】 : windows上搞就不要讲究钱了,反正是公司出 : parasoft : 可以做unit test么
|
s***e 发帖数: 122 | 30 恩,我是都用平台上各自的工具,windows上我就用VS,VS.NET功能确实强大,linux上
就用eclipse加插件,都很爽。看了一下前面的帖子,那个说WS的,呵呵,那么做确实
有些不负责。
【在 t****t 的大作中提到】 : 况且你还可以在windows上编辑, 在linux上调试. 反正我觉得调试linux比windows强太 : 多了. : 我前一阵要调一个硬件, 只能在windows上干, 把我难受坏了.
|
|
|
m****t 发帖数: 37 | 31 还有code自动填充!
用普
【在 t****t 的大作中提到】 : 呵呵, 我又不是没有用过IDE.
|
r*********r 发帖数: 3195 | 32 kdeveloper 臭虫一大堆,程序没垮自己就先垮了。
用ide 编辑怎么比得上用 emacs 快。。。 |
t****t 发帖数: 6806 | 33 emacs难道不是IDE么.
【在 r*********r 的大作中提到】 : kdeveloper 臭虫一大堆,程序没垮自己就先垮了。 : 用ide 编辑怎么比得上用 emacs 快。。。
|
p*******n 发帖数: 4824 | |
o***r 发帖数: 81 | 35 如果逼急了我肯定就得用C/C++来写了。。。
matlab如果可能的话我也想用一下看看(尤其是写classifier的时候)不过
我们作业代码交上去之后要用linux下面“比较标准”的东西测试,matlab好像不在列
关于函数式语言……
John Langford在blog上评论Programming Languages for Machine Learning
Implementations(http://hunch.net/?p=230)的时候说他通常用高层次语言(比如Ocaml)来测测想法,如果可行的话,就用低层次语言(比如C或C++)来写运行得快的程序。
……
的)
式语
【在 w***g 的大作中提到】 : C++ 加上boost应该够用了。如果想再学一个的话对于machine learning(带点统计的) : 来说最好就是matlab。java比起C++来说在course project上没有明显的优势。函数式语 : 言如果你不是搞programming language的话以后没什么大用处。 : 我自己比较喜欢C++。
|
n******t 发帖数: 4406 | 36 编程,打字永远不是速控步。。。
所以作用有限。。。
【在 m****t 的大作中提到】 : 还有code自动填充! : : 用普
|
n******t 发帖数: 4406 | 37 这种人应该是C技术没过关,然后就上C++的。
【在 m****t 的大作中提到】 : 我发现我们这边很多C++ er都很猥琐 : 用VC调试,写完了扔到linux下面跑
|
m****t 发帖数: 37 | 38 没说过C++er一定要会C啊
【在 n******t 的大作中提到】 : 这种人应该是C技术没过关,然后就上C++的。
|
r****t 发帖数: 10904 | 39 这个是啥意思?
【在 p*******n 的大作中提到】 : 人工智能难道不用matlab?
|
n******t 发帖数: 4406 | 40 是没这么说,但是常常就会出现你说的这种情况。。。
还把VS那些个给初学者handy的功能拿来当救命稻草。
【在 m****t 的大作中提到】 : 没说过C++er一定要会C啊
|
|
|
m****t 发帖数: 37 | 41 matlab
如果你不是做research的话,有什么用。。。
【在 o***r 的大作中提到】 : 如果逼急了我肯定就得用C/C++来写了。。。 : matlab如果可能的话我也想用一下看看(尤其是写classifier的时候)不过 : 我们作业代码交上去之后要用linux下面“比较标准”的东西测试,matlab好像不在列 : 关于函数式语言…… : John Langford在blog上评论Programming Languages for Machine Learning : Implementations(http://hunch.net/?p=230)的时候说他通常用高层次语言(比如Ocaml)来测测想法,如果可行的话,就用低层次语言(比如C或C++)来写运行得快的程序。 : …… : : 的) : 式语
|
o***r 发帖数: 81 | 42 这样啊…… Java我肯定要学的,Python也这么有诱惑力……
【在 b******n 的大作中提到】 : there are many ai package for python as well..it is easy to use.
|
o***r 发帖数: 81 | 43 的确……
【在 m****t 的大作中提到】 : matlab : 如果你不是做research的话,有什么用。。。
|
o***r 发帖数: 81 | 44 这个有道理。Java总之是要学的,因为另一门课要用。
【在 s***e 的大作中提到】 : 你已经会C/C++了,学Java会比较快,而且Java的工作也比较多一些。
|
N********n 发帖数: 8363 | 45
It's requires much more hassle to produce quality code in C++. At the
end of the day the ROI doesn't look good.
【在 m****t 的大作中提到】 : 我发现我们这边很多C++ er都很猥琐 : 用VC调试,写完了扔到linux下面跑
|
k*******d 发帖数: 707 | 46 Python. I am working in finance, always regret that I didn't go with Python+
c/c++, instead c# .net |
k*******d 发帖数: 707 | 47 Python. I am working in finance, always regret that I didn't go with Python+
c/c++, instead c# .net |
k***r 发帖数: 4260 | 48 展开说说
Python+
【在 k*******d 的大作中提到】 : Python. I am working in finance, always regret that I didn't go with Python+ : c/c++, instead c# .net
|
f*****Q 发帖数: 1912 | 49 没错,java会语言跟不会一样。把j2ee整明白了不仅仅是个语言问题。
【在 y*******g 的大作中提到】 : java工作大部分要求j2ee的, 学起来也不快
|
o***r 发帖数: 81 | 50 这个是因为开发和运行的效率问题么?
Python+
【在 k*******d 的大作中提到】 : Python. I am working in finance, always regret that I didn't go with Python+ : c/c++, instead c# .net
|
|
|
w***g 发帖数: 5958 | 51 据说公司里写程序的速度其实不重要,因为维护代码的时间amortize到每行代码上比写
这行代码的时间要长得多。
【在 s***e 的大作中提到】 : IDE至少有几个好处,智能编辑,错误检查,还有模板文件生成,写程序的时候比用普 : 通编辑程序写起来快得不是一般的多。所以我写程序的时候一定用IDE,速度快啊。
|
o***r 发帖数: 81 | 52 哦,j2ee开发效率和其他语言比起来怎么样呀。
听说yahoo store的前身Viaweb是用lisp写的,其中一个作者说lisp写web程序很快……
( 参见 Beating the averages
http://www.paulgraham.com/avg.html )
【在 y*******g 的大作中提到】 : java工作大部分要求j2ee的, 学起来也不快
|
g*****g 发帖数: 34805 | 53 这话不错,但是IDE还是很有用,比如用来debug,读代码。code complete事实上
也减少了出错的可能,对于那些scripting language更是重要。
【在 w***g 的大作中提到】 : 据说公司里写程序的速度其实不重要,因为维护代码的时间amortize到每行代码上比写 : 这行代码的时间要长得多。
|
g*****g 发帖数: 34805 | 54 Jee is good for mid-large scale projects that will last
several years for its life cycle. For simple CRUD project,
PHP and RoR will serve the quick and dirty purpose better.
【在 o***r 的大作中提到】 : 哦,j2ee开发效率和其他语言比起来怎么样呀。 : 听说yahoo store的前身Viaweb是用lisp写的,其中一个作者说lisp写web程序很快…… : ( 参见 Beating the averages : http://www.paulgraham.com/avg.html )
|
s***e 发帖数: 122 | 55 恩,我倒也不是强调非要写的多快。但是有一个IDE在那里帮你处理掉lower level的问
题,你可以把自己的头脑集中在high level的事情上。
另外不管是写代码还是维护代码,有个IDE都可以给你不少帮助:
我看见代码分了颜色就觉得清晰。有本书不是叫做UML in Color吗,说采用不同的颜色
有助于人分辨不同类别的元素,我觉得代码也一样。
那个代码智能提示,对我这种懒人来说超级好使(以前的一个同事最爱跟我说,这就是
皇帝的ba3ba3--。。。)。
还有模板文件自动生成,对我这种还是懒人也是好使的很。
文本自动格式化,我没事就用一下,就图看着舒服。
。。。其它我也一时想不起来了,呵呵。
【在 w***g 的大作中提到】 : 据说公司里写程序的速度其实不重要,因为维护代码的时间amortize到每行代码上比写 : 这行代码的时间要长得多。
|
o***r 发帖数: 81 | 56 汗,感谢给我科普…… 我总感觉我软件工程课好像没上过一样……
【在 g*****g 的大作中提到】 : Jee is good for mid-large scale projects that will last : several years for its life cycle. For simple CRUD project, : PHP and RoR will serve the quick and dirty purpose better.
|
t****t 发帖数: 6806 | 57 除了代码"智能"提示以外, 你说的东西现在vim都可以做
其实vim是有autocomplete的,但是太简单了一点, 毕竟不能理解语义
我估计emacs可以做, 它背后的lisp还是很强的
如果你说的IDE就是这么点用处, 那我看有没有也差不多...
【在 s***e 的大作中提到】 : 恩,我倒也不是强调非要写的多快。但是有一个IDE在那里帮你处理掉lower level的问 : 题,你可以把自己的头脑集中在high level的事情上。 : 另外不管是写代码还是维护代码,有个IDE都可以给你不少帮助: : 我看见代码分了颜色就觉得清晰。有本书不是叫做UML in Color吗,说采用不同的颜色 : 有助于人分辨不同类别的元素,我觉得代码也一样。 : 那个代码智能提示,对我这种懒人来说超级好使(以前的一个同事最爱跟我说,这就是 : 皇帝的ba3ba3--。。。)。 : 还有模板文件自动生成,对我这种还是懒人也是好使的很。 : 文本自动格式化,我没事就用一下,就图看着舒服。 : 。。。其它我也一时想不起来了,呵呵。
|
s***e 发帖数: 122 | 58 非要较劲就没有意思了。
这么说吧,你也承认auto complete本身就是一个强大的功能。我就冲这个一个功能也
得用IDE。
vim可以做很多用处,你也知道它是vi + m,不是本来的vi,它为什么要加上我所说的
这些功能?因为这些功能大家需要,最开始只有一些IDE有这些功能,因为好用才延伸
到其它的工具。
IDE还有其它的功能,比如你可以很容易的看清楚整个程序的结构。整合其它的工具也
非常容易,比如eclipse上整合的ant可以说是非常成功的一个例子。
我不能把IDE的好处都说出来,不代表IDE就没有其它的好处。
不过说到底,各花入各眼,自己喜欢用啥就用啥。
【在 t****t 的大作中提到】 : 除了代码"智能"提示以外, 你说的东西现在vim都可以做 : 其实vim是有autocomplete的,但是太简单了一点, 毕竟不能理解语义 : 我估计emacs可以做, 它背后的lisp还是很强的 : 如果你说的IDE就是这么点用处, 那我看有没有也差不多...
|
g*****g 发帖数: 34805 | 59 IDE可以很强大,比如Eclipse的jboss plugin可以从DB schema直接
产生一个CRUD的网站。类似这样的plugin很多。vim/emacs要想做一个
这样的extension,那就得吐血了。
【在 t****t 的大作中提到】 : 除了代码"智能"提示以外, 你说的东西现在vim都可以做 : 其实vim是有autocomplete的,但是太简单了一点, 毕竟不能理解语义 : 我估计emacs可以做, 它背后的lisp还是很强的 : 如果你说的IDE就是这么点用处, 那我看有没有也差不多...
|
P*****f 发帖数: 2272 | 60 eclipse的 refactor比如函数改名啥的还是很方便.
的问
颜色
就是
【在 t****t 的大作中提到】 : 除了代码"智能"提示以外, 你说的东西现在vim都可以做 : 其实vim是有autocomplete的,但是太简单了一点, 毕竟不能理解语义 : 我估计emacs可以做, 它背后的lisp还是很强的 : 如果你说的IDE就是这么点用处, 那我看有没有也差不多...
|
|
|
r*********r 发帖数: 3195 | 61 我比较喜欢 eclipse 里的 outline ,
对代码的结构分析很清楚. 用来读代码很方便.
vs 和 xcode 好像没有做得这么好. |
T*******i 发帖数: 4992 | 62 vs里面,你试试^+m, ^+l
【在 r*********r 的大作中提到】 : 我比较喜欢 eclipse 里的 outline , : 对代码的结构分析很清楚. 用来读代码很方便. : vs 和 xcode 好像没有做得这么好.
|
w***g 发帖数: 5958 | 63 IDE的坏处是把人吊死在一棵树上。用vi/emacs的好处则是可以同时编辑各种语言。我一
般搞一个东西的时候需要用到很多不同的工具,包括bash, awk, gnuplot, c++,latex
,不同的任务用不同的工具解决,然后用Makefile来管理各个任务的运行,从产生数据
到生成图片到更新文档,用IDE远远不如vi方便。
另外,其实unix下那套文本处理的工具,包括cut paste sort join grep awk sed,结
合起来用功能非常强大,用bash glue一下可以胜任大多数文本处理的任务,并不需要用
python。
【在 s***e 的大作中提到】 : 恩,我倒也不是强调非要写的多快。但是有一个IDE在那里帮你处理掉lower level的问 : 题,你可以把自己的头脑集中在high level的事情上。 : 另外不管是写代码还是维护代码,有个IDE都可以给你不少帮助: : 我看见代码分了颜色就觉得清晰。有本书不是叫做UML in Color吗,说采用不同的颜色 : 有助于人分辨不同类别的元素,我觉得代码也一样。 : 那个代码智能提示,对我这种懒人来说超级好使(以前的一个同事最爱跟我说,这就是 : 皇帝的ba3ba3--。。。)。 : 还有模板文件自动生成,对我这种还是懒人也是好使的很。 : 文本自动格式化,我没事就用一下,就图看着舒服。 : 。。。其它我也一时想不起来了,呵呵。
|
g*****g 发帖数: 34805 | 64 有hierachy view吗?
【在 T*******i 的大作中提到】 : vs里面,你试试^+m, ^+l
|
T*******i 发帖数: 4992 | 65 指啥?
【在 g*****g 的大作中提到】 : 有hierachy view吗?
|
r*********r 发帖数: 3195 | 66 不是一回事...
vs 里的 outlining 是 code folding.
eclipse 的 outline 是对函数和类型的结构分析.
【在 T*******i 的大作中提到】 : vs里面,你试试^+m, ^+l
|
T*******i 发帖数: 4992 | 67 caller graph?
【在 r*********r 的大作中提到】 : 不是一回事... : vs 里的 outlining 是 code folding. : eclipse 的 outline 是对函数和类型的结构分析.
|
r****y 发帖数: 26819 | 68 VS里也有这个分析啊
【在 r*********r 的大作中提到】 : 不是一回事... : vs 里的 outlining 是 code folding. : eclipse 的 outline 是对函数和类型的结构分析.
|
r****y 发帖数: 26819 | 69 就是class view
【在 T*******i 的大作中提到】 : caller graph?
|
T*******i 发帖数: 4992 | 70 class view在vs6里面就有了
【在 r****y 的大作中提到】 : 就是class view
|
|
|
T*******i 发帖数: 4992 | 71 土。compiler, linker都可以自己设置的
我一
latex
要用
【在 w***g 的大作中提到】 : IDE的坏处是把人吊死在一棵树上。用vi/emacs的好处则是可以同时编辑各种语言。我一 : 般搞一个东西的时候需要用到很多不同的工具,包括bash, awk, gnuplot, c++,latex : ,不同的任务用不同的工具解决,然后用Makefile来管理各个任务的运行,从产生数据 : 到生成图片到更新文档,用IDE远远不如vi方便。 : 另外,其实unix下那套文本处理的工具,包括cut paste sort join grep awk sed,结 : 合起来用功能非常强大,用bash glue一下可以胜任大多数文本处理的任务,并不需要用 : python。
|
r*********r 发帖数: 3195 | 72 caller graph 是动态的.
outline 只是把 namespace, class, member 的 signature 用 hierarchical view 显
示出来.
vs 的 class view 有点类似, 但不够清楚. |
T*******i 发帖数: 4992 | 73 你说的这些class view都有呀
另外,08里面class diagram也相当好用
【在 r*********r 的大作中提到】 : caller graph 是动态的. : outline 只是把 namespace, class, member 的 signature 用 hierarchical view 显 : 示出来. : vs 的 class view 有点类似, 但不够清楚.
|
g*****g 发帖数: 34805 | 74 Last time I check, eclipse is used for C/C++, PHP, COBOL, Ruby
already, and the list is still growing.
我一
latex
要用
【在 w***g 的大作中提到】 : IDE的坏处是把人吊死在一棵树上。用vi/emacs的好处则是可以同时编辑各种语言。我一 : 般搞一个东西的时候需要用到很多不同的工具,包括bash, awk, gnuplot, c++,latex : ,不同的任务用不同的工具解决,然后用Makefile来管理各个任务的运行,从产生数据 : 到生成图片到更新文档,用IDE远远不如vi方便。 : 另外,其实unix下那套文本处理的工具,包括cut paste sort join grep awk sed,结 : 合起来用功能非常强大,用bash glue一下可以胜任大多数文本处理的任务,并不需要用 : python。
|
g*****g 发帖数: 34805 | 75 eclipse的refactor相当强, VS似乎没有那么方便。
【在 T*******i 的大作中提到】 : 你说的这些class view都有呀 : 另外,08里面class diagram也相当好用
|
w***g 发帖数: 5958 | 76 Yes, but Eclipse for Java (85MB) and Eclipse for C/C++ (68MB) are two differ
ent packages.
I'll consider using eclipse when I need to to build a website.
【在 g*****g 的大作中提到】 : Last time I check, eclipse is used for C/C++, PHP, COBOL, Ruby : already, and the list is still growing. : : 我一 : latex : 要用
|
t****t 发帖数: 6806 | 77 我不是跟你较劲, 我是说IDE的主要用处不在这里. 你说的这些, 都是一个好一点的编
辑器就应该有的功能. 你总不能说vim是个IDE吧. 另外autocomplete我倒是没觉得有什
么强大的.
后面说的refactor, class view等等, 才是IDE主要的用处.
【在 s***e 的大作中提到】 : 非要较劲就没有意思了。 : 这么说吧,你也承认auto complete本身就是一个强大的功能。我就冲这个一个功能也 : 得用IDE。 : vim可以做很多用处,你也知道它是vi + m,不是本来的vi,它为什么要加上我所说的 : 这些功能?因为这些功能大家需要,最开始只有一些IDE有这些功能,因为好用才延伸 : 到其它的工具。 : IDE还有其它的功能,比如你可以很容易的看清楚整个程序的结构。整合其它的工具也 : 非常容易,比如eclipse上整合的ant可以说是非常成功的一个例子。 : 我不能把IDE的好处都说出来,不代表IDE就没有其它的好处。 : 不过说到底,各花入各眼,自己喜欢用啥就用啥。
|
T*******i 发帖数: 4992 | 78 更强
【在 g*****g 的大作中提到】 : eclipse的refactor相当强, VS似乎没有那么方便。
|
g*****g 发帖数: 34805 | 79 VS至少没有那么多plugin,呵呵,M$不可能面面俱到。
【在 T*******i 的大作中提到】 : 更强
|
g*****g 发帖数: 34805 | 80 No, CDT is a plugin, you can, for example. Get a basic Eclipse, which works
for
Java, then install CDT plugin, which works for C/C++.
Most people just want different ready packages and eclipse site provides
them.
differ
【在 w***g 的大作中提到】 : Yes, but Eclipse for Java (85MB) and Eclipse for C/C++ (68MB) are two differ : ent packages. : I'll consider using eclipse when I need to to build a website.
|
|
|
w***g 发帖数: 5958 | 81 对于初学者来说,IDE并不是一个好的选择,因为IDE隐藏了很多细节是人不知所以然。
我用visual studio 6.0那阵很多人都是不知道C++编译器叫c1。
对于在公司里的,其实也没什么选择的余地。
我一
latex
要用
【在 w***g 的大作中提到】 : IDE的坏处是把人吊死在一棵树上。用vi/emacs的好处则是可以同时编辑各种语言。我一 : 般搞一个东西的时候需要用到很多不同的工具,包括bash, awk, gnuplot, c++,latex : ,不同的任务用不同的工具解决,然后用Makefile来管理各个任务的运行,从产生数据 : 到生成图片到更新文档,用IDE远远不如vi方便。 : 另外,其实unix下那套文本处理的工具,包括cut paste sort join grep awk sed,结 : 合起来用功能非常强大,用bash glue一下可以胜任大多数文本处理的任务,并不需要用 : python。
|
T*******i 发帖数: 4992 | 82 分特,plug-in更不少呀。
msdn的user base那么大,会少么
【在 g*****g 的大作中提到】 : VS至少没有那么多plugin,呵呵,M$不可能面面俱到。
|
g*****g 发帖数: 34805 | 83 微软的东西崇尚you should do it in my way, 想来不需要很多plugin.
VS不太接触不敢说,想给IE搞个plugin跟FF难度不是一个档次。
【在 T*******i 的大作中提到】 : 分特,plug-in更不少呀。 : msdn的user base那么大,会少么
|
T*******i 发帖数: 4992 | 84 分特,你都说了,还说不敢说。
ie那个是没竞争,没改进的烂产品,即便这样ie add-ons还是有些的
【在 g*****g 的大作中提到】 : 微软的东西崇尚you should do it in my way, 想来不需要很多plugin. : VS不太接触不敢说,想给IE搞个plugin跟FF难度不是一个档次。
|
T*******i 发帖数: 4992 | 85 自己土也能怪工具呀
【在 w***g 的大作中提到】 : 对于初学者来说,IDE并不是一个好的选择,因为IDE隐藏了很多细节是人不知所以然。 : 我用visual studio 6.0那阵很多人都是不知道C++编译器叫c1。 : 对于在公司里的,其实也没什么选择的余地。 : : 我一 : latex : 要用
|
n******t 发帖数: 4406 | 86 那应该是教得不好。
我倒是觉得IDE对新手还是有用的。
我遇到不少已开始就用命令行写C/C++的,被指针错误弄得抓狂,
最后干脆放弃了。而用VC的debugger,一步步调试,一会就通了,
以后慢慢不犯低级错误了,换成命令行也容易。
【在 w***g 的大作中提到】 : 对于初学者来说,IDE并不是一个好的选择,因为IDE隐藏了很多细节是人不知所以然。 : 我用visual studio 6.0那阵很多人都是不知道C++编译器叫c1。 : 对于在公司里的,其实也没什么选择的余地。 : : 我一 : latex : 要用
|
r*********r 发帖数: 3195 | 87 vs 的 class view 缺省是把 project 里的文件分析一遍, 把所有的 class 都列出来.
eclipse 的做法是只分析当前打开的文件. 即使当前文件不属于 project.
【在 T*******i 的大作中提到】 : 你说的这些class view都有呀 : 另外,08里面class diagram也相当好用
|
s***e 发帖数: 122 | 88 这就是各花入各眼吧,auto complete对我非常有用,因为我经常要用第三方库,你要
是让我每次调用一次api都去查一下帮助,那不累死也烦死了。你要说refactor, class
view(也就是我说的看project的结构,而且还不止这一种view而已)也是IDE的重要用
处,我同意,而且我还得说这还不止,只是那些自己用得多的就印象最深了。vim就算
不说是IDE,它实现的那些功能不也是从成功的IDE学来的吗?
【在 t****t 的大作中提到】 : 我不是跟你较劲, 我是说IDE的主要用处不在这里. 你说的这些, 都是一个好一点的编 : 辑器就应该有的功能. 你总不能说vim是个IDE吧. 另外autocomplete我倒是没觉得有什 : 么强大的. : 后面说的refactor, class view等等, 才是IDE主要的用处.
|
T*******i 发帖数: 4992 | 89 那样意义不大吧,因为c/c++有头文件,不像java都包在一起。
实在要,就把该文件加入project,再remove掉就行了
来.
【在 r*********r 的大作中提到】 : vs 的 class view 缺省是把 project 里的文件分析一遍, 把所有的 class 都列出来. : eclipse 的做法是只分析当前打开的文件. 即使当前文件不属于 project.
|
n******t 发帖数: 4406 | 90 vim就是一个编辑器,没觉得从ide学过什么东西,也没看出来
it打算从ide学什么东西。
class
【在 s***e 的大作中提到】 : 这就是各花入各眼吧,auto complete对我非常有用,因为我经常要用第三方库,你要 : 是让我每次调用一次api都去查一下帮助,那不累死也烦死了。你要说refactor, class : view(也就是我说的看project的结构,而且还不止这一种view而已)也是IDE的重要用 : 处,我同意,而且我还得说这还不止,只是那些自己用得多的就印象最深了。vim就算 : 不说是IDE,它实现的那些功能不也是从成功的IDE学来的吗?
|
|
|
r*********r 发帖数: 3195 | 91 学校里很少教 debugging. 碰到过很多教授只用linux, 都不知道怎么用 vs.
【在 n******t 的大作中提到】 : 那应该是教得不好。 : 我倒是觉得IDE对新手还是有用的。 : 我遇到不少已开始就用命令行写C/C++的,被指针错误弄得抓狂, : 最后干脆放弃了。而用VC的debugger,一步步调试,一会就通了, : 以后慢慢不犯低级错误了,换成命令行也容易。
|
s***e 发帖数: 122 | 92 它要对某种编程语言的文件进行颜色显示,它得做语法分析么?
【在 n******t 的大作中提到】 : vim就是一个编辑器,没觉得从ide学过什么东西,也没看出来 : it打算从ide学什么东西。 : : class
|
t****t 发帖数: 6806 | 93 不是完整的语法分析, 就是简单的pattern matching with context
也就是基本上是token based
(其实我认为IDE的也是)
【在 s***e 的大作中提到】 : 它要对某种编程语言的文件进行颜色显示,它得做语法分析么?
|
T*******i 发帖数: 4992 | 94 ide不是的
比如,vs里面c/c++的code可以根据macro开关变灰
ie:
#ifdef XXX
....
#endif
如果没有定义xxx,其中的code是灰的
这个显然是基于语法分析的
【在 t****t 的大作中提到】 : 不是完整的语法分析, 就是简单的pattern matching with context : 也就是基本上是token based : (其实我认为IDE的也是)
|
w***g 发帖数: 5958 | 95 这和debugging有什么关系。那些教授在unix下debug的时候还没有vs呢。
其实用什么系统跟自己开始学的环境很有关系。我们系里不少教授用solaris,
像我这种在linux时代成长起来的人就受不了solaris。
【在 r*********r 的大作中提到】 : 学校里很少教 debugging. 碰到过很多教授只用linux, 都不知道怎么用 vs.
|
s***e 发帖数: 122 | 96 退回到用与不用IDE的问题吧。要不然又得去查这个颜色显示到底是IDE先有还是vim先
有了。
vi ==> vim ==> IDE
看一下上面这张图,如果有vim你会用vi吗?我自己会对IDE和vim之间的比较问一个同
样的问题。个人喜好而已,我喜欢功能更强大一些的工具,你可能喜欢功能差不多就行
的工具。我喜欢IDE,你可能不是很喜欢。
【在 t****t 的大作中提到】 : 不是完整的语法分析, 就是简单的pattern matching with context : 也就是基本上是token based : (其实我认为IDE的也是)
|
T*******i 发帖数: 4992 | 97 vim也挺好的
俺经常用
【在 s***e 的大作中提到】 : 退回到用与不用IDE的问题吧。要不然又得去查这个颜色显示到底是IDE先有还是vim先 : 有了。 : vi ==> vim ==> IDE : 看一下上面这张图,如果有vim你会用vi吗?我自己会对IDE和vim之间的比较问一个同 : 样的问题。个人喜好而已,我喜欢功能更强大一些的工具,你可能喜欢功能差不多就行 : 的工具。我喜欢IDE,你可能不是很喜欢。
|
s***e 发帖数: 122 | 98 我也用,但就用来改改配置文件什么,写个一个文件的小程序什么的。
但你要我用它来写一个大程序,我还真不愿意这么做。
【在 T*******i 的大作中提到】 : vim也挺好的 : 俺经常用
|
n******t 发帖数: 4406 | 99 不会把,solaris的编程环境非常爽,尤其是manual page, 实在是比
linux号太多了。
【在 w***g 的大作中提到】 : 这和debugging有什么关系。那些教授在unix下debug的时候还没有vs呢。 : 其实用什么系统跟自己开始学的环境很有关系。我们系里不少教授用solaris, : 像我这种在linux时代成长起来的人就受不了solaris。
|
n******t 发帖数: 4406 | 100 vim是在编辑器上面增强。但也不是ide。
而且ide的功能和并不包含vim。就编辑功能,大部分ide的编辑器功能
基本上比起vim还非常小儿科。
【在 s***e 的大作中提到】 : 退回到用与不用IDE的问题吧。要不然又得去查这个颜色显示到底是IDE先有还是vim先 : 有了。 : vi ==> vim ==> IDE : 看一下上面这张图,如果有vim你会用vi吗?我自己会对IDE和vim之间的比较问一个同 : 样的问题。个人喜好而已,我喜欢功能更强大一些的工具,你可能喜欢功能差不多就行 : 的工具。我喜欢IDE,你可能不是很喜欢。
|
|
|
g*****g 发帖数: 34805 | 101 当然不是了,比如我在eclipse经常用的就是列出所有引用,
同名的非引用是不会列出来的。
【在 t****t 的大作中提到】 : 不是完整的语法分析, 就是简单的pattern matching with context : 也就是基本上是token based : (其实我认为IDE的也是)
|
d******a 发帖数: 238 | 102
我觉得一种语言,还是一个工具,一般人只用一部分功能就行了。
其实用vim写程序,用不了记很多操作就够用了。
【在 s***e 的大作中提到】 : 退回到用与不用IDE的问题吧。要不然又得去查这个颜色显示到底是IDE先有还是vim先 : 有了。 : vi ==> vim ==> IDE : 看一下上面这张图,如果有vim你会用vi吗?我自己会对IDE和vim之间的比较问一个同 : 样的问题。个人喜好而已,我喜欢功能更强大一些的工具,你可能喜欢功能差不多就行 : 的工具。我喜欢IDE,你可能不是很喜欢。
|
t****t 发帖数: 6806 | 103 就单指syntax highlighting而言
不过刚才有人说VS对#ifdef有分析, 那我大概搞错了
【在 g*****g 的大作中提到】 : 当然不是了,比如我在eclipse经常用的就是列出所有引用, : 同名的非引用是不会列出来的。
|
n******t 发帖数: 4406 | 104 VS的syntax highlighting貌似很原始。。。
【在 t****t 的大作中提到】 : 就单指syntax highlighting而言 : 不过刚才有人说VS对#ifdef有分析, 那我大概搞错了
|
t****t 发帖数: 6806 | 105 如果有语法分析, 那应该是很强的
但是我估计不能定制, 这就不好用了
【在 n******t 的大作中提到】 : VS的syntax highlighting貌似很原始。。。
|
m****t 发帖数: 37 | 106 eclipse这点就很强
【在 t****t 的大作中提到】 : 如果有语法分析, 那应该是很强的 : 但是我估计不能定制, 这就不好用了
|
s******n 发帖数: 876 | 107 当然是学点新东西了, 现在不学以后不会再有机会的.
【在 o***r 的大作中提到】 : 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project) : 教课的老师说可以随便用任何编程语言。 : 去年这门课的5个assignment是 : vacuum planner,theorem prover,general planner,reinforcement learning, : classifier : 我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下: : 1.Ocaml : 这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。 : 看过一点Berkeley的scheme教学视频,觉得很震撼很强大。 : 2.Java
|
p***o 发帖数: 44 | 108 反正你都得学会一种语言的话,当然用OCaml了。其实挺容易学的。
【在 o***r 的大作中提到】 : 有道理。我先把java学学再考虑别的,保命要紧。 : 不过放过一个用Ocaml的老师不跟着学有点可惜呀。
|
p***o 发帖数: 44 | 109 又想了一下,如果不习惯functional programming, ocaml可能有点难
还是python算了。呵呵
【在 p***o 的大作中提到】 : 反正你都得学会一种语言的话,当然用OCaml了。其实挺容易学的。
|
s******n 发帖数: 876 | 110 可能算法就是基于lambda calculus的, 用imperative language做作业可能更麻烦
【在 p***o 的大作中提到】 : 又想了一下,如果不习惯functional programming, ocaml可能有点难 : 还是python算了。呵呵
|
|
|
c****e 发帖数: 1453 | 111 那么多讨论debugging的帖子都没有提到windbg的.难道大家在windows上debug都是VS?
windows和gdb相比较的是windbg,超级强大. VS完全是另外一个路子的, 虽然code base
开始是一样的. 当然manage code debugger那一套还是VS方便. windbg超多extension,
一点不比gdb弱. tracing还有基于trace的checker windows也有很多方案, 不比
valgrind差, 不光是memory leak, registry, file, concurrency都可以check. |
s******n 发帖数: 876 | 112 理论上不可能? 还是太困难? 举个例子.
【在 N********n 的大作中提到】 : : It's requires much more hassle to produce quality code in C++. At the : end of the day the ROI doesn't look good.
|
N********n 发帖数: 8363 | 113
看了这么多发现都没说到点上,一个IDE能否强大取决于其支持的语言而不是
这个IDE本身。C++大把DIRECTIVES的特性在理论上就是不能REFACTOR,无法
和JAVA,C#比,不是IDE做不出来。
【在 t****t 的大作中提到】 : 我不是跟你较劲, 我是说IDE的主要用处不在这里. 你说的这些, 都是一个好一点的编 : 辑器就应该有的功能. 你总不能说vim是个IDE吧. 另外autocomplete我倒是没觉得有什 : 么强大的. : 后面说的refactor, class view等等, 才是IDE主要的用处.
|
t****t 发帖数: 6806 | 114 我相信windbg走的和valgrind不是同一个路子, 功能也不能相比
valgrind基本上是个模拟器, boundschecker还比较接近
可能因为我做硬件, 对模拟器比较熟-_-
?
base
extension,
【在 c****e 的大作中提到】 : 那么多讨论debugging的帖子都没有提到windbg的.难道大家在windows上debug都是VS? : windows和gdb相比较的是windbg,超级强大. VS完全是另外一个路子的, 虽然code base : 开始是一样的. 当然manage code debugger那一套还是VS方便. windbg超多extension, : 一点不比gdb弱. tracing还有基于trace的checker windows也有很多方案, 不比 : valgrind差, 不光是memory leak, registry, file, concurrency都可以check.
|
T*****9 发帖数: 2484 | 115 我只会用 valgrind测试memory check...
都不知道有啥别的用
对了,你做硬件,怎么用C++不用C呢?
VS
【在 t****t 的大作中提到】 : 我相信windbg走的和valgrind不是同一个路子, 功能也不能相比 : valgrind基本上是个模拟器, boundschecker还比较接近 : 可能因为我做硬件, 对模拟器比较熟-_- : : ? : base : extension,
|
s***e 发帖数: 122 | 116 VS.NET和eclipse CDT都有对C++程序refactor的功能。连对python这种弱类型语言都有
refactor的,工具实现的困难程度不一样而已,但是没有不可能的说法。
【在 N********n 的大作中提到】 : : 看了这么多发现都没说到点上,一个IDE能否强大取决于其支持的语言而不是 : 这个IDE本身。C++大把DIRECTIVES的特性在理论上就是不能REFACTOR,无法 : 和JAVA,C#比,不是IDE做不出来。
|
g*****g 发帖数: 34805 | 117 有难度也有程度的区别,C++的宏使得一些refactor难以进行。
【在 s***e 的大作中提到】 : VS.NET和eclipse CDT都有对C++程序refactor的功能。连对python这种弱类型语言都有 : refactor的,工具实现的困难程度不一样而已,但是没有不可能的说法。
|
t****t 发帖数: 6806 | 118 memory check当然是最基本的, 包括非法内存操作(能告诉你哪块内存向前或向后多少
位置), 依赖未初始化值的转移或输出, 内存未释放或内存泄漏
cachegrind, 指出哪里cache miss最多以便优化
helgrind, 找出多线程操作可能的data race
我现在程序写完, 必然拿valgrind对小数据运行一遍
唯一的缺点就是太慢太慢了, 不过全世界所有的模拟器都慢
【在 T*****9 的大作中提到】 : 我只会用 valgrind测试memory check... : 都不知道有啥别的用 : 对了,你做硬件,怎么用C++不用C呢? : : VS
|
c****e 发帖数: 1453 | 119 en.可能我没说清楚.windbg就是debugger.valgrind是个emulator.valgrind有个缺点是
纯粹runtime的,不能take a trace然后在trace file上做。我还是两年前用过,不知
道现在怎么样。
发信人: thrust (祝阳阳早日康复), 信区: Programming
标 题: Re: Re: 编程语言选择问题
发信站: BBS 未名空间站 (Thu Jan 8 03:01:27 2009), 转信
我相信windbg走的和valgrind不是同一个路子, 功能也不能相比
valgrind基本上是个模拟器, boundschecker还比较接近
可能因为我做硬件, 对模拟器比较熟-_- |
c****e 发帖数: 1453 | 120 10-15X的慢大部分程序还是可以忍的,呵呵。Valgrind的JIT可能还不够优化,所以觉
得特别慢。
【在 t****t 的大作中提到】 : memory check当然是最基本的, 包括非法内存操作(能告诉你哪块内存向前或向后多少 : 位置), 依赖未初始化值的转移或输出, 内存未释放或内存泄漏 : cachegrind, 指出哪里cache miss最多以便优化 : helgrind, 找出多线程操作可能的data race : 我现在程序写完, 必然拿valgrind对小数据运行一遍 : 唯一的缺点就是太慢太慢了, 不过全世界所有的模拟器都慢
|
|
|
r****t 发帖数: 10904 | 121 你们说的都很高深,但是我要提醒一下 python 是强类型的,perl 才是弱类型的。你这个
说法不知道是哪里听来的。而且我同意对弱类型的搞 refactor 不现实。
【在 s***e 的大作中提到】 : VS.NET和eclipse CDT都有对C++程序refactor的功能。连对python这种弱类型语言都有 : refactor的,工具实现的困难程度不一样而已,但是没有不可能的说法。
|
b******n 发帖数: 592 | 122 I call it "editor", even with those smart plugins..
【在 t****t 的大作中提到】 : emacs难道不是IDE么.
|
b******n 发帖数: 592 | 123 Personally, Python is more a lab language. .Net is a production language. I
can't believe you don't like C#. Well, now you can use IronPython.
Python+
【在 k*******d 的大作中提到】 : Python. I am working in finance, always regret that I didn't go with Python+ : c/c++, instead c# .net
|
B********e 发帖数: 1062 | 124 A language is good not because it has a fancy interface.
I
【在 b******n 的大作中提到】 : Personally, Python is more a lab language. .Net is a production language. I : can't believe you don't like C#. Well, now you can use IronPython. : : Python+
|
s***e 发帖数: 122 | 125 谢谢指出错误。我一直以为python是弱类型的,原来其实是隐式类型,但是依然是强类
型。
你这个
【在 r****t 的大作中提到】 : 你们说的都很高深,但是我要提醒一下 python 是强类型的,perl 才是弱类型的。你这个 : 说法不知道是哪里听来的。而且我同意对弱类型的搞 refactor 不现实。
|
l**t 发帖数: 64 | 126 .net是一个平台,并不是一个语言
python很适合大型项目的开发,并不是你认为的lab language,它的历史可比C#长得多
得多了,只不过用户集中在linux,unix平台上。很多C/C++库都提供了python接口,使
用起来很方便。
Ironpython现在还不成熟,玩一玩可以,它的命运要看微软以后是否大力支持,否则跟
JPython落一样的下场。微软现在支持.net上的python,ruby等,目的不外乎大力推广.
net,等以后.net一统天下了,说不定就过河拆桥。
C#之于.net 跟 java之于J2EE 差不多,照你观点,似乎学java也不比C#差到哪里去
学计算机的,除了汇编,C/C++是必备的,另外还应该掌握一门脚本语言(python,perl)
,研究一门函式语言。不同类型的语言思想是有差异的,乘着年轻应该多接触些新思想
,不应过早把自己绑到某个平台上而使眼光狭隘、思想僵化。
I
【在 b******n 的大作中提到】 : Personally, Python is more a lab language. .Net is a production language. I : can't believe you don't like C#. Well, now you can use IronPython. : : Python+
|
l**t 发帖数: 64 | 127 专业点应该说python是动态类型
静态类型、动态类型 与 强类型、弱类型 是不同的分类方法,可以交叉搭配
【在 s***e 的大作中提到】 : 谢谢指出错误。我一直以为python是弱类型的,原来其实是隐式类型,但是依然是强类 : 型。 : : 你这个
|
z***e 发帖数: 5393 | 128 i think you should be able to do this with windbg.
same the core dump, then load with windbg; it has time tracing as well.
【在 t****t 的大作中提到】 : 别的不说, core dump以后用core file调用gdb就比VS强10倍了, VS只能在出错以后立 : 刻进入debug才行 : 另外valgrind在windows上根本没有. : 设断点慢慢跟踪这种糙活我好久不干了.
|
t****t 发帖数: 6806 | 129 we talked about VS, not windbg, right?
btw, how to create a core file in windows?
【在 z***e 的大作中提到】 : i think you should be able to do this with windbg. : same the core dump, then load with windbg; it has time tracing as well.
|
k***r 发帖数: 4260 | 130 scripting language 做大项目还是有些问题。虽然快,typing error之类的
太难避免了,所以不得不格外小心,写非常多的unit test。
Jython很好吧。应该比ironpython成熟,现在正在做2.5
广.
perl)
【在 l**t 的大作中提到】 : .net是一个平台,并不是一个语言 : python很适合大型项目的开发,并不是你认为的lab language,它的历史可比C#长得多 : 得多了,只不过用户集中在linux,unix平台上。很多C/C++库都提供了python接口,使 : 用起来很方便。 : Ironpython现在还不成熟,玩一玩可以,它的命运要看微软以后是否大力支持,否则跟 : JPython落一样的下场。微软现在支持.net上的python,ruby等,目的不外乎大力推广. : net,等以后.net一统天下了,说不定就过河拆桥。 : C#之于.net 跟 java之于J2EE 差不多,照你观点,似乎学java也不比C#差到哪里去 : 学计算机的,除了汇编,C/C++是必备的,另外还应该掌握一门脚本语言(python,perl) : ,研究一门函式语言。不同类型的语言思想是有差异的,乘着年轻应该多接触些新思想
|
|
|
z***e 发帖数: 5393 | 131 eh...still has to use windbg ^_^. attach to kernel, then you should be able
to use the command .dump to create a kernel dump or full memory dump.
【在 t****t 的大作中提到】 : we talked about VS, not windbg, right? : btw, how to create a core file in windows?
|
n******t 发帖数: 4406 | 132 This is much less convenient than UNIX.
You need to run the program under the debugger.
able
【在 z***e 的大作中提到】 : eh...still has to use windbg ^_^. attach to kernel, then you should be able : to use the command .dump to create a kernel dump or full memory dump.
|
t****t 发帖数: 6806 | 133 原来是这样啊, 那有什么用处
core dump的好处就在于, 不管什么程序, 拿什么运行, 都可以core dump, 换句话说,
运行和调试可以分开. 甚至不等出错就可以发一个signal abort强制它dump(除非trap
了abort信号). 当然, 调试器也可以attach to process, 但是比如说beta版, 用户没
有代码, 这时可以把core送给开发者调试.
如果需要调试器才能core dump, 那还要dump干嘛?? core file就是给调试器看的, 如
果已经有了调试器, 就不要core了
able
【在 z***e 的大作中提到】 : eh...still has to use windbg ^_^. attach to kernel, then you should be able : to use the command .dump to create a kernel dump or full memory dump.
|
z***e 发帖数: 5393 | 134 我没说非要运行什么程序才能dump啊。
当然你要运行windbg才能dump---ok,实际上不用运行也可以,但是就要两台机器了。
一台机器,就算linux也需要有个process来dump core吧?
其实windows单机也可以的,用debug mode启动,然后修改什么注册表,可以定义按什
么key然后就自动crash生成core dump,不过我就不知道怎么改了,你可以refer一下 http://www.solsem.com/lab-setup.html
,
trap
【在 t****t 的大作中提到】 : 原来是这样啊, 那有什么用处 : core dump的好处就在于, 不管什么程序, 拿什么运行, 都可以core dump, 换句话说, : 运行和调试可以分开. 甚至不等出错就可以发一个signal abort强制它dump(除非trap : 了abort信号). 当然, 调试器也可以attach to process, 但是比如说beta版, 用户没 : 有代码, 这时可以把core送给开发者调试. : 如果需要调试器才能core dump, 那还要dump干嘛?? core file就是给调试器看的, 如 : 果已经有了调试器, 就不要core了 : : able
|
b******n 发帖数: 592 | 135 我觉得倒是很多项目都提供了python的接口,因为python容易使用一些吧。大型项目(
除了网站)倒不知道多少,不过很多用了python的网站最终还是转到了php上。c#觉得比
python的项目多一些。我在使用python的过程中觉得小东西的话,算是比较好用,过大
的程序,运行两天以后发现一个typo,实在很讨厌。我觉得最不适合大型项目开发的方
面在于变量虽然是强类型,但是定义的时候并没有类型,如果A=classB(), 当你用A.的
时候,编辑器根本没法帮你找出A的有的方法。你开发的时候,必须要有一个厚厚的本子
去查。大型项目就太难了
广.
perl)
【在 l**t 的大作中提到】 : .net是一个平台,并不是一个语言 : python很适合大型项目的开发,并不是你认为的lab language,它的历史可比C#长得多 : 得多了,只不过用户集中在linux,unix平台上。很多C/C++库都提供了python接口,使 : 用起来很方便。 : Ironpython现在还不成熟,玩一玩可以,它的命运要看微软以后是否大力支持,否则跟 : JPython落一样的下场。微软现在支持.net上的python,ruby等,目的不外乎大力推广. : net,等以后.net一统天下了,说不定就过河拆桥。 : C#之于.net 跟 java之于J2EE 差不多,照你观点,似乎学java也不比C#差到哪里去 : 学计算机的,除了汇编,C/C++是必备的,另外还应该掌握一门脚本语言(python,perl) : ,研究一门函式语言。不同类型的语言思想是有差异的,乘着年轻应该多接触些新思想
|
t****t 发帖数: 6806 | 136 你在说什么乱七八糟的, 用过unix吗?
core dump就是core dump, 是unix核心支持的功能, 不管哪个process都可以, 不需要
任何外部程序的支持
windows必须要用windbg或者什么别的调试器才能dump, 是这么回事吧?
还要两台机器什么的, 大动干戈啊
http://www.solsem.com/lab-setup.html
【在 z***e 的大作中提到】 : 我没说非要运行什么程序才能dump啊。 : 当然你要运行windbg才能dump---ok,实际上不用运行也可以,但是就要两台机器了。 : 一台机器,就算linux也需要有个process来dump core吧? : 其实windows单机也可以的,用debug mode启动,然后修改什么注册表,可以定义按什 : 么key然后就自动crash生成core dump,不过我就不知道怎么改了,你可以refer一下 http://www.solsem.com/lab-setup.html : : , : trap
|
z***e 发帖数: 5393 | 137 呃,直接支持和额外程序支持,也没那么大差别吧?Firefox都靠插件支持,大家还不
是同样很赞...
【在 t****t 的大作中提到】 : 你在说什么乱七八糟的, 用过unix吗? : core dump就是core dump, 是unix核心支持的功能, 不管哪个process都可以, 不需要 : 任何外部程序的支持 : windows必须要用windbg或者什么别的调试器才能dump, 是这么回事吧? : 还要两台机器什么的, 大动干戈啊 : : http://www.solsem.com/lab-setup.html
|
t****t 发帖数: 6806 | 138 当然不一样
我已经说得很清楚了, core dump的目的在于把运行和调试分离
最简单的例子, beta版给别人试用, 一旦出现core dump, 就可以把core送回给开发者
进行调试, 出错的地方和当时的内存映象都在
而且core是给调试器的输入, 如果有调试器, 就不要core了
【在 z***e 的大作中提到】 : 呃,直接支持和额外程序支持,也没那么大差别吧?Firefox都靠插件支持,大家还不 : 是同样很赞...
|
k*****l 发帖数: 177 | 139 一直想试一试这个程序, 主要是写的程序小,简单,一直没有试用valgrind
今天终于试了一把,效果很好。
出错信息很详细:
==29368== Memcheck, a memory error detector.
==29368== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==29368== Using LibVEX rev 1854, a library for dynamic binary translation.
==29368== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==29368== Using valgrind-3.3.1-Debian, a dynamic binary instrumentation
framework.
==29368== Copyright (C) 2000-2007, and GNU GPL'd, by Julian |
s******n 发帖数: 21 | 140 可以用windows minidump. 对unix/linux 不熟, 但应该和core dump 的功能差不多.
【在 t****t 的大作中提到】 : 当然不一样 : 我已经说得很清楚了, core dump的目的在于把运行和调试分离 : 最简单的例子, beta版给别人试用, 一旦出现core dump, 就可以把core送回给开发者 : 进行调试, 出错的地方和当时的内存映象都在 : 而且core是给调试器的输入, 如果有调试器, 就不要core了
|
|
|
t****t 发帖数: 6806 | 141 I am not familiar with that. some simple google tells me, it needs a dbghelp
.dll.
It's provided with OS, alright, so I can consider it a part of OS. However,
it's a DLL, so it seems you need to have some functions to call it to do the
minidump, read the minidump, and analyze it. In other word, you need to
have another program to get the minidump file. Correct me if I am wrong.
If I was correct, then what's the advantage of minidump program over the
previous method, i.e. use the windbg to run th
【在 s******n 的大作中提到】 : 可以用windows minidump. 对unix/linux 不熟, 但应该和core dump 的功能差不多.
|
T*****9 发帖数: 2484 | 142 没用过unix。。。
linux有core dump么。。。
了。
按什
【在 t****t 的大作中提到】 : 你在说什么乱七八糟的, 用过unix吗? : core dump就是core dump, 是unix核心支持的功能, 不管哪个process都可以, 不需要 : 任何外部程序的支持 : windows必须要用windbg或者什么别的调试器才能dump, 是这么回事吧? : 还要两台机器什么的, 大动干戈啊 : : http://www.solsem.com/lab-setup.html
|
T*****9 发帖数: 2484 | 143 这个是valgrind 不是core dump。。。
const
>
std:
std:
so
const
>
std:
std:
so
const
多少
【在 k*****l 的大作中提到】 : 一直想试一试这个程序, 主要是写的程序小,简单,一直没有试用valgrind : 今天终于试了一把,效果很好。 : 出错信息很详细: : ==29368== Memcheck, a memory error detector. : ==29368== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. : ==29368== Using LibVEX rev 1854, a library for dynamic binary translation. : ==29368== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. : ==29368== Using valgrind-3.3.1-Debian, a dynamic binary instrumentation : framework. : ==29368== Copyright (C) 2000-2007, and GNU GPL'd, by Julian
|
T*****9 发帖数: 2484 | 144 我明白了,你说的这个core dump是得改core file limit才行的
类似于我去年写那个小操作系统用bt看的那个东西
dbghelp
,
the
多.
【在 t****t 的大作中提到】 : I am not familiar with that. some simple google tells me, it needs a dbghelp : .dll. : It's provided with OS, alright, so I can consider it a part of OS. However, : it's a DLL, so it seems you need to have some functions to call it to do the : minidump, read the minidump, and analyze it. In other word, you need to : have another program to get the minidump file. Correct me if I am wrong. : If I was correct, then what's the advantage of minidump program over the : previous method, i.e. use the windbg to run th
|
t****t 发帖数: 6806 | 145 这个当然, 就是一个命令设置一下, 所有的shell几乎都有这个设置
【在 T*****9 的大作中提到】 : 我明白了,你说的这个core dump是得改core file limit才行的 : 类似于我去年写那个小操作系统用bt看的那个东西 : : dbghelp : , : the : 多.
|
r*********r 发帖数: 3195 | 146 都一样. 我用 mac os x 都可以用 core dump, 不过文件格式不一样.
valgrind 也 port 到苹果上了.
unix 的很多东西现在好像失传了... 变成了 black magic.
【在 T*****9 的大作中提到】 : 没用过unix。。。 : linux有core dump么。。。 : : 了。 : 按什
|
s******n 发帖数: 21 | 147 minidump is mainly used for Post-Mortem debugging. So, if you porgram
crashed at a customer site(no debugger installed), you can get the minidump
file and start VS or windbg to debug it(assuming that you have correct pdb
files).The downside is that you have to add extra code to your program to
generate the dump. I am not sure linux/unix needs that.
dbghelp
,
the
【在 t****t 的大作中提到】 : I am not familiar with that. some simple google tells me, it needs a dbghelp : .dll. : It's provided with OS, alright, so I can consider it a part of OS. However, : it's a DLL, so it seems you need to have some functions to call it to do the : minidump, read the minidump, and analyze it. In other word, you need to : have another program to get the minidump file. Correct me if I am wrong. : If I was correct, then what's the advantage of minidump program over the : previous method, i.e. use the windbg to run th
|
t****t 发帖数: 6806 | 148 i see, so the program to be debugged need to load a library beforehand.
*nix don't need that.
minidump
【在 s******n 的大作中提到】 : minidump is mainly used for Post-Mortem debugging. So, if you porgram : crashed at a customer site(no debugger installed), you can get the minidump : file and start VS or windbg to debug it(assuming that you have correct pdb : files).The downside is that you have to add extra code to your program to : generate the dump. I am not sure linux/unix needs that. : : dbghelp : , : the
|
x******c 发帖数: 13 | 149 Ocaml
Functional programming may never become main stream, but learning a very
different language will certainly broad your vision and teach you a new way
of
thinking, that is much much more important than how familiar you are with a
certain language.
If you want to be a bit more 'practical', i.e., learn sth that you may use
later, then python.
Yes, Java is main stream, but it's also the least interesting one.
【在 o***r 的大作中提到】 : 我下学期要学人工智能的课,编程量挺大(50% assignment+30%project) : 教课的老师说可以随便用任何编程语言。 : 去年这门课的5个assignment是 : vacuum planner,theorem prover,general planner,reinforcement learning, : classifier : 我只会C/C++,目前考虑捡一门语言上课用,希望大家帮我出出主意。备选如下: : 1.Ocaml : 这个是任课老师用的语言。而且我也一直想学一门能函数式编程的lisp类的语言。 : 看过一点Berkeley的scheme教学视频,觉得很震撼很强大。 : 2.Java
|