现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

新手必读:关于软件开发的一些答疑

2012-02-29 12:10 工业·编程 ⁄ 共 3678字 ⁄ 字号 评论 3 条

1软件开发都是基于windows吗?

    答:不是,WINDOWS只是目前较为常用的操作系统之一,因为常用,所以用的人多,针对它的开发就多了,除了WINDOWS外,还有很多别的操作系统,如LINUX/UNIX、DOS、苹果的IOS等,几乎现在任何智能设备都有它自己的操作系统,但它的用户群没有WINDOWS多,不为人知而已。

2windows是用什么软件开发的?

    答:C语言! 所有版本的Windows都是用C语言编写出来的!其核心代码一般都是汇编写的。不仅这些,连Linux、UNIX系统也是用C语言编写出来的。

3怎样在windows下用c语言开发软件?

    答:想用语言开发软件 首先得了解什么叫做API 其次选一个IDE(集成开发环境),通俗点就是很多人说的开发工具, 如VC++6.0。

4VC只能开发出基于WINDOWS平台的程序软件吗?

    答:对,因为VC++用MFC只有windows平台才支持。

5嵌入式linux开发为什么要在linux系统上开发,而不能直接用windows呢?

答:因为linux之中可以建立交叉编译环境,比如你的linux是64位,你可以建立32位编译环境。另外,linux中也可以编译arm的cpu适用的内核或者程序。最重要的是,嵌入式开发必须调用linux的内核函数,windows下不可能可以调用,当然,也有一种在win下开发的方法——虚拟机——但是这将会使得编译速度变得很慢。》》新手必读:嵌入式系统经验谈

6、我想做一些小的软件,听说要学C#,就买了本书看,但那上面只有语句什么的,看了大半本书,我连一个小程序都做不出来……我该怎么办,我到底该学什么才能做出软件?我说的软件是指在那种可以安装和卸载的程序,不是指在编程软件中编译然后在命令提示符里运行的软件。

    答:看书,然后多做练习了,多研究研究工具箱里的各类控件,然后多查资料,让它们互相合作完成任务。慢慢来,学习的过程很漫长的,一点点试着去做,不要一下子就想学会太多,那样会对自己的自信心打击很大。C#的话用WinForm(推荐教材C#高级编程), C++的话MFC 。

7c++开发工程师和windows客户端开发工程师的区别?

    答:C++开发工程师也有许多方向的,如windows客户端开发工程师,便是其开发方向之一简单来说,跟平台相关,如linux、windwos、移动设备等等,这些也没有好坏之分,看个人喜欢!! 用C++开发的不一定是windows程序,C++开发可以在不同系统下支持,我说的系统指的是windows,linux,ucos,moc,andriod等;windows客户端不一定是用C++开发的,windows客户端只能是运行于windows操作系统下的~!

8我以后应该从那个方向发展,是基于windows的软件开发还是跟随潮流向web方向发展?

    答:做windows软件开发,能够深入系统底层,到了系统底层,其实windows,linux又有很多相通之处了;做web开发,上手快一点,偏向于网络应用,要熟悉N多脚本语言,也符合当前的移动互联网时代的需求~

9想从事面向windows平台的软件开发工作,但是很迷茫,不知道从何开始?

    答:认真学好数据结构和算法设计分析,然后再进行那些基于Framework的开发,其实是比较轻松的,建议你看一下STL,其实Windows软开主要就是调用Windows的API,就是用别人函数完成自己的功能,所以会调函数,了解那些函数的参数比较关键,我个人认为。

    先看win32,这是基础,然后可以MFC,不过现在做windows 窗体程序有很多高级语言可以用,开发效率也很高,建议多接触一些更高级的语言如C#等,可以使用winform,WPF, WCF等来开发程序

10Windows软件开发用什么语言好?

    答:C是进行底层开发的最好的工具,比说如操作系统,比如说操作某种硬件的软件,对硬件的控制很直接。C#更适合界面的开发和WEB程序开发。DELPHI最适合开发一些专用的简单小工具,因为控件非常丰富,编程速度较快。

11什么是Windows 应用软件开发呢?

    答:软件开发有多种,有关于硬件的,有关于某个应用的,比如应用于办公系统的OFFICE软件,财务软件 Windows 应用软件开发就是指开发出来的应用软件,适合在Windows操作系统下运行。

12学习windows下的软件开发应该看些什么书?

    答:在Windows下用C编写程序,首先要学习Windows API,可以买一本《windows 程序设计》(第五版),老外写的;再往后,学习《windows核心编程》,也是老外写的。这两套书学完了,再做几个相关项目,也就差不多了。上论坛学习也是不错的选择, 我的建议是买纸质的书籍学习,电子书对眼睛不好,并且在机器面前看书,思考能力是要受影响的,学习效率也会大打折扣的。书再贵,也是性价比最高的商品,因为如果你能真正从买来的书籍中获得知识,这些知识将在以后给你以千万倍的回报。

13谈谈你对unix环境和windows环境进行软件开发的不同感受?

    答:总的感觉,unix 干练、稳定、并发好 windows界面好、轻松、图形化强 unix上的编程简洁,没有太多的界面,一般适合作为server端 windows编程工具一般支持可视化,可以作为很好的client端 unix上并发多用进程概念(也支持线程),windows上要并发一般用线程 unix现在主流使用64位编程,可以管理的系统资源更多,更大。windows现在主流还是32位的系统,所以管理的系统资源少一些。 总之,如果你想做大型的系统,注重效率和稳定性,建议用unix。如果你想用漂亮的界面,或者给不太专业的人用软件,建议用windows。当然,unix做server,windows做client是绝配。

    windows环境,套路性强,让你切实体会什么叫“接口编程”,偏重“应用”型程序开发。由于编译器做的都比较好所以比unix环境相对方便一些。unix环境,我做的大多是后台处理,因此更偏重“功能”,虽然也是有一些套路,但相对更底层,更“自由”一些。

14以后主攻Linux环境下编程,有必要学vc++,MFC,winapi,还有什么windows核心编程吗?

    答:当然不需要了,你都说要linux下了,还学windows的api啥的干嘛。 只要c语言,然后c++ 就可以了,还有QT,wx一些UI。

15、我以前做的window下的C++和VC都做过一些,之后做了2年的业务软件开发,这方面的发展不明显。现在有linux的c开发和window下的开发几家公司,但是linux下的C开发没做过,相当于重新起步,window下以前做的项目又用到MFC,VC中的知识范围不广,感觉完全不像有个3,4年C和C++方面开发经验的人。那么如果做linux下开发,像我这样3年window下开发经验的人,熟练unix操作系统命令和数据库方面,熟悉unix下c语言调试工具等,那么我去做linux下C开发的话,算是一个什么层次?

    答:linux 下的c和c++开发一般不依赖某个IDE环境,一般直接用底层函数,能更好的积累c知识; windows下的业务软件开发更多的侧重业务经验,技术积累不多,虽然应用广,但做不深;如果决心在技术领域钻研建议选linux多研究c,如果自己特点侧重业务而结合技术,那么windows下开发也挺好,但要特别注意积累业务只是和经验。

》》新手必读:嵌入式工程师的学习经验

     linux下的开发一般分为三种: 1)linux服务端程序开发;做这个需要较深的积累和持续的新技术学习,上手容易,深入难,应用面有一点窄,如果能做到高级非常吃香,因为这样的开发都是一个持续服务性系统的基石,一般用c语言;再往上发展可以做架构师。 2)linux嵌入式开发(包括底层驱动);目前应用比较多的linux开发,但是不如linux服务端开发有深度。 3)界面等相关开发。应用不多,没多大技术含量,适合有美术功底的人。 具体做哪个合适要根据自己的性格特点来定,无论是哪个坚持做好都不错;但个人认为做linux服务端开发有挑战、有技术深度、有职业发展深度。

    由于linux开源,所以在一些系统函数接口方面比较透明,而window的接口不是全部公布的,有一些根本没发布出来,而且由于没有开源,所以安全性不高。如果你C学的好的话,无论是在window还是linux下都行的。建议考个系统分析师,这样会好很多。

    既然要学习软件,那么linux是相当好用,从长远来看,linux将来将主导软件开发的市场,而window将越来越普及家庭,注重消费的运用。

    Unix下的C,可以从事金融IT,给银行、证券之类的单位做项目,薪资还是可以的,但是会有点累。

求索阁注本文只对该行业入门者起到一个大致的指引作用,具体需要自己去实践体会。

目前有 3 条留言    访客:0 条, 博主:0 条 ,引用: 3 条

    外部的引用: 3 条

    • 新手必读:学习嵌入式系统开发心得 « 求索阁
    • 新手必读:对软件工程师职业的理解 « 求索阁
    • 新手必看:一个程序员的十年编程之路 « 求索阁

    给我留言

    留言无头像?