都说用C++,到底你们都怎么用啊?(望工作的朋友聊一聊,谢谢啊!)
(小弟现在是一个在校本科生)都说工作以后用C++做开发,到底你们怎么用啊??用Visual Studio开发?用MFC开发?用ATL开发?还是只应用Win API函数开发?写算法?写类?《软件工程》中说模块,你们在编写模块代码?一直觉的想网页设计和web应用程序的开发比较“实体”话,可以很快的开发,但C++,像学校MFC库就是很麻烦,内容很多,所以有点不是很了解,望各位工作的朋友给小弟讲一下吧,不胜感激!!谢谢!!!
[解决办法]
1. C++是编程语言
2. Visual Studio是开发工具(Visual C++是其中的一个模块)
3. MFC、ATL以及Windows API是库,其中前两者基本上是Visual Studio专门使用的库,Windows API是以C语言的形式提供的,因此如果仅用API开发应用的话,你可以不用学习C++
对应地,QT也是一个开发工具,它也有自己的类库。在目前主流的操作系统上,都可以使用,因此具有良好的可移植性。
[解决办法]
c++是一门与平台无关的编程语言,但是具体的桌面应用程序一般都与平台有或多或少的联系。在实现程序时,需要对程序进行的功能进行分析,对程序架构进行设计,一般用c++语言(不涉及平台相关函数或尽量少涉及)实现模型相关的核心功能或模块,包括算法实现、模型创建等等。而往外一层,则是以c++语法为核心的视图或逻辑包装层,如MFC, ATL等,这些都是依赖具体平台的,即以c++语法封装系统API。因此,掌握纯c++语言是十分重要的。
[解决办法]
C++是一门基础编程语言,在大学学习的C++可以帮你以后学习 其他门编程语言打下基础! 其实我也是学C++的在校学生 希望给你 带来了 一点启发
[解决办法]
看你想干什么了。C++一般用于大型的应用软件开发,比如,OFFICE,AutoCAD,PhotoShop,
这些大型软件都是C++写的,操作系统或者驱动等低层一般是用C语言写的,企业应用,桌面应用,
等领域一般是C#或者Java,网页可以用PHP,Python等语言写。不同语言有各自的场合和应用领域。
本人从事过的项目里面,前一个:金融领域某大型项目,前台C#/VB.NET,后台纯C语言开发。
现在:电力领域项目,前台C#,低层图形引擎C++.
[解决办法]
[解决办法]
问题貌似很明确,实则太大了。
C++只是一种语言,Win API是一种平台API,MFC,ATL是为了方便Windows C++开发而编写的一个库/框架,Visual Studio是为了方便Windows开发而做到一个IDE。
为了对比思考,我们来看看其他情况:
C是一种语言,Linux是个平台,有它的系统API(这些API和Win API风格迥异),也有很多的C库函数可以用;在Linux平台下比较少用IDE,一般用vim/emacs编写程序,用make组织工程。
Java是一种语言,Java平台也提供了许多API,为了解决特定领域的问题,Java还有很多框架,比如struts/spring/hibernate就是Web领域中的框架,Java常用的IDE有eclipse和netbeans。
C#是一种语言,.NET是它运行的平台,不用说有相当多的API可以用,Visual Studio也是它的IDE。
以上说这么多,只是想简单的分清语言,平台,API,库,框架,IDE这些基本的概念。
现实中的程序/项目,或者说开发,比你想象的要广泛,并不拘泥于C++,它会根据问题域和其他因素来决定用什么平台,什么语言,什么框架;也就是说,你得先确定需要解决什么样的问题,才能说接下来怎样来解决这个问题。
如果最终这个问题需要用C++来解决,那么算法/类/模块的编写就是根据解决问题的需要:该要有个类/算法/模块的时候就写个类/算法/模块。
MFC这样的东西,只是为了解决相当狭窄的一部分问题的:需要编写运行在Windows上的,不需要移植到别的平台的窗口程序,而且是要用C++来编程。放开来看,如果只是写窗口程序,那么还有Java的SWT,Qt,GTK,wxWidget……很多选择;就算在Windows上,还有VB,C#等其他语言的选择;最后不知是窗口编程,还有很多其他种类/领域的程序,嵌入式,Web,网络,数据库……。
说了这么多,只是希望LZ有自己的思考和实践。