老码农怎么学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 条评论
登录 后参与评论

相关文章

来自专栏性能与架构

Apache新的顶级项目 TinkerPop

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

3155
来自专栏企鹅号快讯

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

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

1966
来自专栏Java架构师进阶

面试总结——Java高级工程师

     之前也面试别人,现在轮到自己找工作,怎么说呢,每个面试官的看法不一样,面试的方式就不一样,比如我面试别人我喜欢问项目中他用到了那些,然后针对用到的技术...

882
来自专栏CSDN技术头条

必读|提高代码阅读能力的七种实用方法

随着越来越多的公司使用敏捷开发,能够阅读别人的代码比以往显得更重要。这就需要学习一些如何提高这项技能的技巧。本文提供了7种提高代码阅读技巧的方法,以下是译文。 ...

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

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

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

3406
来自专栏草根专栏

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

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

873
来自专栏Java社区

我开发了一个怪物——”消沉的程序员”搞笑漫画

731
来自专栏Golang语言社区

为什么Android应该转为Go语言开发?

我能肯定大家最近都了解到了关于Oracle(甲骨文)正在向Google索要Java的专利费,因为他们认为Google开发的Android移动操作系统使用了他们的...

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

欧美流行音乐数据库

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

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

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

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

34211

扫码关注云+社区