海边沫沫
相濡以沫,不如相忘于江湖
posts - 9, comments - 113, trackbacks - 0, articles - 0
C++博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
Visual Studio 2008推出后,我的一些感想
Posted on 2007-11-23 12:40
海边沫沫
阅读(7571)
评论(20)
编辑
收藏
引用
所属分类:
高起点C++学习之路
前一段时间我还写道:“微软的东西搞着搞着就会心烦,我关注的是更具一般性的东西。”然而,这次微软一推出Visual Studio 2008,我还是屁颠屁颠地跑去下载,这是典型的自己扇自己耳光了。扇就扇吧,新东西还是要体验一下的。不过这新东西一出,总是搞得人心里乱乱的。
首先是一个学习的问题,旧的东西还没用好就又要学新的东西,前面有人领跑,我们就在后面追,跑得气喘吁吁却越落越远,感觉脑袋越来越不够用了。我常想,长期这样下去,会不会把人折磨成神经病。其次就是一个阵营选择的问题,每次一有新的东西出来,我们都要斟酌一次究竟哪个阵营的产品效率更高、使用更方便、学习更简单。这次也一样,又要去考虑是选择Java还是.net,是选择JavaFX还是WPF/E,是选择MFC还是Qt、wxWidgets或者其它的?头疼啊!
后来我又想了一下,要想不这么累,也不是完全没有办法。办法就是认准目标、勇往直前,不要管外面吹的什么东南西北风。有些时候,我发现越是无知,活得越是轻松。比如说,我要解决桌面编程的问题,那还是选择MFC好了,也不要管外面说什么MFC封装得不好,也不要管外面说MFC不能够跨平台,也不要管MFC写出来的程序外观丑陋、是一个模子里面印出来的。同理,使用Qt、wxWidgets的高手们,也没有必要转到MFC这里来。还有一个Java阵营的SWT/JFace,我也稍微花时间学习了一下,在条件允许的时候,也不是不可以用它来开发桌面程序,而且它的界面更加能够给长期见惯Windows默认界面的用户带来一定的新意。另外一个要解决的是Web开发的问题,我想我还是继续选择Java吧,也不要管外面说什么ASP.net怎么怎么好、C#怎么怎么优雅、ADO.net怎么怎么强大,总之,要想自己不把自己逼疯,就一定不能够见异思迁,Java你都搞通了吗?MVC、IOC、AOP、SOA你都搞通了吗?JSF、JavaFX都用好了吗?还有那么多的中间件、应用服务器,你都弄通了吗?当然,在ASP.net方面有深厚造诣的高手们,就继续深造下去吧。
还有一个问题,那就是WPF和SilverLight,在它们刚出现的时候,我没有动,是因为懒得在Visual Studio 2005中安这个扩展那个扩展,麻烦。现在Visual Studio 2008和.net Framework 3.5来了,只需要一次就可以一步安装到位了,我应该激动吗?我激动过,因为我早就明白AJAX是不足的,需要有SilverLight来改善浏览器应用程序的用户体验。但是很快,这股激情就被磨灭了,因为《程序员》上的一篇文章说使用XML定义界面,解析器实现起来简单,但是让程序员自己编写XML就太不人道了,而JavaFX使用专用的界面定义语言,则要优雅得多。我也知道有些人将XAML翻译成“折磨”。《程序员》上又有一篇文章说Visual Studio 2008对Vista外观的支持并不是它的重点。那么,对WPF,我还有什么值得激动的呢?
因此,对于桌面应用,我选择Visual C++ 2008 和 MFC,看中的是Native;对于Web应用,我选择Java,看中的是Java社区丰富的开源软件,虽然我从未对开源社区做任何贡献,但是有好的开源软件,我还是要用的,也懒得再在.net上再多花一倍的学习时间;对于浏览器中的富客户端应用,那还是等JavaFX吧。
我下载了Visual Studio 2008,不过是Express版,因为不想下载90天试用版,免得90天后用不了了又要重新安装。Express版还是给我带来了一些失望:Visual C++ 2008 Express竟然不包含MFC,太过分了。虽然Visual C# 2008 Express对WPF支持非常好,但是刚才的分析已经说了,我对WPF已经不感冒了。
在Visual C++ Express 2008中,还有一个我关注的问题这里也提一下,那就是它没有走在C++ 0x标准的前面,它没有包含tr1标准库,它的hash_map、hash_set依然没有更名为unordered_map、unordered_set。与此对应的是,GCC 4.2版已经包含了大部分的tr1库,看来,在C++ 0x标准推出之后,GCC在标准的方面可能要比VC++领先一步吧。
Visual C++ 2008提供了for each语法,那是要关注一下的,网上有人猜测VC++ 2008提供for each语法是为了能更好的和.net一起工作,MSDN中对for each的示例也是用的CLI。那么,在Native代码中能使用for each吗?结果是能的,下面是我的测试代码:
#include
<
vector
>
#include
<
string
>
#include
<
iostream
>
int
main()
{
std::vector
<
std::string
>
v_s;
v_s.push_back(
"
abc
"
);
v_s.push_back(
"
def
"
);
v_s.push_back(
"
bcdefg
"
);
for
each(std::string s in v_s)
{
std::cout
<<
s
<<
std::endl;
}
return
0
;
}
它可以正常工作。只是我把for each(std::string s in v_s)修改为for each(std::string & s in v_s)之后,编译通不过了。我有点想不明白,为什么不能用引用呢?把对象放到容器中要发生一次复制操作,难道遍历容器中的元素也要发生一次复制操作吗?这很显然不爽。
好了,就写到这了。Visual Studio2008 Express我下载后时间还短,再加上看问题的水平也很有限。错误的地方,欢迎大家指正。
Feedback
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-11-23 12:54 by
梦在天涯
哈哈,其实作为microsoft技术的programmer,我们是没有办法不去跟着他不停的学啊学啊,但是我觉的如果你不是microsot的用户,如果你一直用的是java,那么尽可不必来参这个洪水,不用关microsoft的silverlight,还是wpf什么东东的!
精通一门技术足够了!
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-11-23 12:56 by
梦在天涯
大家有没有下载vs2008正式版,和office2007快点的地址啊,从msdn上下太慢了,要下到牛年马月啊,希望知道的共享一下啊!
超级感谢先!
#
re: Visual Studio 2008推出后,我的一些感想[未登录]
回复
更多评论
2007-11-23 14:27 by
alantop
有呀 bt和emule的都有地址是
http://www.cppblog.com/alantop/archive/2007/11/22/vs2008.html
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-11-23 16:41 by
补考少年
楼主的知识很广博啊,精彩。
#
re: Visual Studio 2008推出后,我的一些感想[未登录]
回复
更多评论
2007-11-25 01:54 by
heroboy
for each(const std::string & s in v_s)
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-11-25 17:50 by
刀剑如梦
手上已经拿到VS2008的TS架构师和pro的正式版
感觉VC9跟VC8变化不大,编译器确实更强悍了,智能提示支持还是很差,VA看来还是得装。:(
个人以为,如非和.net混编,显然不会用for each这种非标准的关键词。
.net方面确实强大,强大到过分。
我在.net上面已经有超过5年的使用经验,不能算短了吧,水平再差,烂船也有3000钉吧,现在看看框架3.5、WPF,居然产生了厌恶的感觉。。。软件使用体验固然重要,但总不至于舍本逐末去追求一个炫丽的界面就不顾一切。不是工作需要,压根不想去看!
#
re: Visual Studio 2008推出后,我的一些感想[未登录]
回复
更多评论
2007-11-25 18:07 by
missdeer
我还在用2003的说~~不过今天早上刚从eMule上下完2008的TS版,一看它的配置要求,放弃了~~
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-11-26 11:01 by
海边沫沫
@heroboy
多谢指点。由此可见,我们不能在for each中修改容器的内容。
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-11-26 12:17 by
小名阿铁
"越是无知,活得越是轻松;"
所谓的笨鸟先飞!
楼主所阐述的一些心理活动确实是一个大众现象.选择越多,越飘浮不定.
因为人总是希望得到最好的.
另外:值得讨论for each么!?有何价值?一个语言特效而已,不足以说明什么吧.
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-12-03 19:15 by
less
vc9貌似有BUG,我编译wxwidgets倒没有问题,但是,在使用这些库的时候,出现一个错误IDE就自己退出了。
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2007-12-20 13:55 by
秦歌
精彩,以后多指点
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2008-01-19 11:54 by
胡人
vs9 team版就有tr1扩展,unordered_map, unordered_set等都有了,楼主装的是express版估计这个版没带进去。
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2008-02-14 18:10 by
lxconan
是这样的,实际上,成功的人往往是把自己最初的理想保留到了最后的人。仁者见仁智者见智,总不能统一大家的想法把,会丧失创新的火花的。现在已经不是360行,行行出状元了,是行内又分360块,每块都出状元。只要技术有人需要,就有他存在的理由啊:)
#
re: Visual Studio 2008推出后,我的一些感想[未登录]
回复
更多评论
2008-03-14 01:50 by
a
express版从来就不带mfc以及atl等等,但是带stl,从2005就开始是这样,免费让你用就不错了,想想ms为了买这个stl也是花了大钱的,要是mfc,atl之类的都让你免费用,将那些花了钱的用户置于何地?至于tr1和mfc增强类,是在它的更新包里面带的,该包不能用于express版。(另外也评论一句,tr1那个unordered的命名烂透了,iso那帮人基本都是些没有任何审美能力的呆子。还有tr1::的这个名字空间,更是搞笑到了极点,tr1是0x标准的technique report1,将来还会有tr2,那将来1x标准的tr1怎么命名,这种没有任何远见的白痴命名法,我真是服了他们)据说微软已经重写了编译器的前端,以使它能更好的支持即将到来的c++ 0x,估计0x出来后,微软可以很快的支持大部分新特性,不过这些在vc9是看不到了,期待vc10的到来。
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2008-04-27 01:05 by
???
Tr1、Tr2什么的其实根本不重要。
那些都是泛型库而已,不能展现C++ 0x支持如何。
如果觉得VC08没有带Tr?的库,可以弄一个boost来用——反正相当一部分tr?的库都是源于boost
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2008-05-06 13:29 by
探丫头
有些时候,我发现越是无知,活得越是轻松
感觉这就说的很有哲理啊
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2008-08-30 18:34 by
E剑仙
你对WPF和Silverlight都严重低估了,微软一直在XAML的可视化编辑中狠下功夫,虽然VS08中还没有,但Expression Blend这种东西JAVA也没搞出来吧?建议有机会可以用用,这两门东西对.NET开发者基本是没有入门难度的。
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2008-08-30 18:41 by
陈梓瀚(vczh)
如果用微软的东西的话,你¥越多越舒服。
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2009-03-11 20:05 by
jimsmorong
这个for_each 不是那个std::的那个 呀 一直不知道 我用2008 D
#
re: Visual Studio 2008推出后,我的一些感想
回复
更多评论
2009-04-17 17:01 by
jadedrip
for each( const A& a in _list ) 编译通过……
刷新评论列表
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
也谈QQ美女找茬外挂的编写
在Visual C++中配合CImage使用Boost.GIL
一个工具、一个库和一部小说
痛下决心苦学 TR1 和 Boost
理解模板编程中的Trait和Mataprogram
写个小游戏练一练手
Visual Studio 2008推出后,我的一些感想
从一道简单的练习题说开去
高起点C++学习之路
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
Powered by:
C++博客
Copyright © 海边沫沫
日历
<
2008年5月
>
日
一
二
三
四
五
六
27
28
29
30
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
7
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(4)
给我留言
查看公开留言
查看私人留言
随笔分类
高起点C++学习之路(9)
随笔档案
2010年11月 (1)
2010年10月 (1)
2010年6月 (1)
2008年9月 (1)
2008年8月 (1)
2007年12月 (1)
2007年11月 (2)
2007年10月 (1)
我的博客系列
我的 .net 博客
我的 Java 博客
搜索
积分与排名
积分 - 53131
排名 - 419
最新评论
1. re: 高起点C++学习之路
楼上的不要喷楼主了,楼主的文章我大部分都看了,还是很牛的
--哈哈哈
2. re: 从一道简单的练习题说开去
生成100w个email的程序是有问题的,name.append()之后添加到vector,然后继续append,共7次,这样就不对了
--booirror
3. re: 在Visual C++中配合CImage使用Boost.GIL
CIMage需要MFC,这个对跨平台库有点障碍,你让用QT,BCB之类的人怎么办呢
--holyfire
4. re: 高起点C++学习之路
是X WINDOW而不是X WINDOWS,是Linux下的图形化界面@梦在天涯
--sayhigh
5. re: 也谈QQ美女找茬外挂的编写
评论内容较长,点击标题查看
--土豆
阅读排行榜
1. 痛下决心苦学 TR1 和 Boost(7763)
2. Visual Studio 2008推出后,我的一些感想(7571)
3. 理解模板编程中的Trait和Mataprogram(7388)
4. 写个小游戏练一练手(6997)
5. 高起点C++学习之路(5121)
评论排行榜
1. 高起点C++学习之路(39)
2. Visual Studio 2008推出后,我的一些感想(20)
3. 写个小游戏练一练手(14)
4. 从一道简单的练习题说开去(10)
5. 痛下决心苦学 TR1 和 Boost(8)