老码农怎么学Windows编程

在微软公司的windows平台下,有众多的编程语言和编程模式,比如windows SDK、C/C++、MFC、VB、Win32汇编等,哪种是最合适你的呢?小编认为,这取决于你的工作场景和情况,编程语言和模式本身并没有好坏之分,只有恰当与否。

  • 如果你平时工作并不需要常常编写程序,只是偶尔做一些小工具来完成琐碎、重复、耗时的工作,那么VB是最适合你的编程语言了。VB编程学习简单,很容易上手,可以较快的编写出一些简单程序和工具,如果再深入一点,同样可以很方便快捷的编写出功能强大程序。比如几条语句就可实现一个简单的播放器,或者是浏览器。怎么样,还不赶快试试去!
  • 如果你需要做一些算法研究和测试、非图形化的功能验证、效率评估、系统服务(守护进程)等程序,那么控制台下的C/C++编程模式最合适你了。控制台下的C/C++效率是很高的,在现代化的编译器下的C语言目标代码,很可能比一般人写的汇编语言执行效率还高。C/C++语言由于指针的存在,很适合各种高效的算法设计和系统服务编程。对于大多数实际程序员来说,C/C++几乎有百利而无一害,在嵌入式编程中更是居家旅行的必备良药。
  • 如果你需要做一个有界面且规模较大、但是比较常规的应用程序,那么MFC编程模式是最适合你的。MFC开发模式实际使用C/C++语言,能胜任各种复杂的功能和算法,常见的基本类微软已经为您封装好了;界面开发速度仅次于VB;各种嵌入和链接对象轻松访问,以至于部分初学者以为windows下软件开发等同于MFC编程。
  • 如果你需要非常灵活控制windows程序,完成一些非常规、任性的应用程序,那么windows SDK编程应该是最适合你,这种模式本质也是C/C++语言,但比MFC更有灵活性,能完成一些用MFC不方便完成的功能,这种模式全部用windows提供的API函数完成,可以胜任你要的所有功能。任性的你,想探索windows平台的你一定不会错过的。

如果你要做的是工程逆向、windows平台软件加密/解密、病毒、了解程序运行的详细情况,那么Win32汇编无疑是你的最佳选择了。Win32汇编执行高效,还能深入底层甚至可进入系统内核,了解windows的运行机制,比如各大安全厂商基本都有Win32汇编高手。但是由于Win32汇编并不像高级语言那样易学易用,需要花较多时间才能掌握,且不适合编写较大的程序,所以除非研究或者需要才会去学习,你做好准备了吗?

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-04-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java后端技术

可以落地的DDD到底长什么样?

​  大家都知道软件开发不是一蹴而就的事情,我们不可能在不了解产品(或行业领域)的前提下进行软件开发,在开发前通常需要进行大量的业务知识梳理,然后才能到软件设计...

971
来自专栏企鹅号快讯

写最少的代码,避免给自己找麻烦

软件开发的一个最基本的事实是:我们必须要写代码,但对于这样的一个事实的最大一个误解是:我们的工作就是写代码。作为软件程序员的最初几年,我一直被这样的思想所迷惑,...

2016
来自专栏程序员互动联盟

【编程技巧】如何学习一门编程语言

如果你有兴趣创建电脑程序,手机app,网站,游戏或者其他的软件,那么你应该很想学习怎么去创建它。程序是通过编程语言创建的,编程语言可以让程序运行与某个机器上,可...

3526
来自专栏web前端教室

推倒JS的青春之旅

青春啊,只有一次,花有重开日,人无再少年。群里的小伙伴们,我是嫉妒你们的,在每次群视频的时候。虽然我觉得自己依然还年轻。有人说青春就是用来浪费的,也有点道理。虽...

1947
来自专栏杨建荣的学习笔记

MySQL初始化数据的一点分析(r12笔记第72天)

今天在昨天的基础上又做了一些对比测试,也算是对昨天的一个补充和升华。 而这部分内容其实内容量还不少,所以我准备成了ppt的形式,也在团队内部做了一些...

34711
来自专栏编程

无编程基础如何自学Python?前辈深剖学习方法 附入门视频

其实python非常适合初学者入门。相比较其他不少主流编程语言,有更好的可读性,因此上手相对容易。自带的各种模块加上丰富的第三方模块,免去了很多“重复造轮子”的...

23410
来自专栏性能与架构

Apache新的顶级项目 TinkerPop

Apache软件基金会最近宣布:TinkerPop 升级为顶级项目 TinkerPop 是一个图计算框架,用来进行实时的事务型处理,和批量的图分析,包含了一系列...

3305
来自专栏阮一峰的网络日志

欧美流行音乐数据库

它是我这几天研究freebase的一个试验性作品,目的是为了掌握freebase的使用方法和数据结构。但是现在看上去,这个小作品本身似乎也有一定的使用价值。

2403
来自专栏草根专栏

.NET Core TDD 前传: 编写易于测试的代码 -- 单一职责

例子, 某软件公司, 原有项目开发, 测试, 售前, 售后, 财务等员工. 后来由于公司没钱, 裁掉了测试, 让开发兼职; 过了段时间, 又裁掉了需求和售后, ...

943
来自专栏SDNLAB

漏洞事件让OpenDaylight更加重视安全

Linux基金会于2013年4月份为创建一个开源的软件定义网络(SDN)平台而启动了OpenDaylight协作项目。随后,该项目获得众多业界厂商的关注和支持,...

2775

扫码关注云+社区