作者访谈-与Charles Petzold谈论.NET与C#

.NET专栏 专栏收录该内容
5 篇文章 0 订阅

作者访谈
与Charles Petzold谈论.NET与C#

  Charles Petzold是一位专职作家,他从1985年开始为Windows编写程序,并开始从事有关Windows程序设计的写作工作。他的Programming Windows一书(微软出版社于1988年出版了该书的第一版,现已出到第五版)指导了一代程序员如何为Windows编写应用程序。Petzold最近完成了为微软出版社所作的Programming Windows with C#一书。在这本权威的Windows系列书籍中,他教导读者如何使用Visual C#来建立单机或分布式应用程序的动态用户界面和图形输出。在这次访谈中,Petzold与大家共同分享他对面向对象程序设计思想的想法和他对C#的新的浓厚的兴趣。


MS: 您的新作Programming Windows with Visual C#与经典的Programming Windows相比有何不同?
CP: Programming Windows with C#是一本全新的书。五个版本的Programming Windows已经向读者展示了如何使用C语言和纯粹的Windows应用程序编程接口(API)来书写Windows程序。在Programming Windows with C#中,我使用了一种新的面向对象的程序设计语言和一种叫做Windows Forms的类库,它们都是全新Microsoft .NET Framework的一部分。
  我最初开始使用Windows Forms和C#是在2000年的夏天,我几乎是一下子就喜欢上了它们。Windows Forms与我所经常设想的一种理想的面向对象的Windows编程接口十分相像,而且C#是我现在最喜欢的程序设计语言。尽管我主要还只是在与这个软件的Beta版打交道,写作这本书的过程仍然是一段愉快的经历。

MS: 那么这一切把C++和MFC放到了什么位置?
CP: 我肯定它们仍然很有强势。我认为C和C++会继续在许多商业应用程序中使用,尤其是那些需要精简代码和高速度的场合。当前来说Windows Forms的目标是企业级的应用程序,不过这一点也许不会持续太长的时间。一旦程序员开始试着尝试使用它,我想他们一定会喜欢它并更多的使用它。
  就我个人来说,我从来没有喜欢过MFC,我也从来没有写过关于MFC的作品。MFC仅仅是在Windows API上一层面向对象的薄薄的封装。当然,正是这薄薄的包装才使它能够快速的运行。但是真正面向对象的Windows程序设计方法发展至今,我认为Windows Form最终达到了这个目标。

MS: 您对我们的程序员有什么建议吗?
CP: 尽可能多的去学习。C、C++和C#三者是如此的相像,程序员没有理由不能熟练运用它们三者。学习Win32 API可以使你成为一个更好的MFC或Windows Forms程序员。
  有时候,我们程序员会把使用不同语言或编程接口的人分成不同的阵营。我自己已经被分到了C和API的阵营。这的确很愚蠢。语言和编程接口都是工具,你的工具箱中工具越多,你的编程能力就越强。

MS: 你会纹上一个.NET的纹身来配合你右臂上的Windows标志的纹身吗?
CP: 当我从事Windows程序设计有十年的时候,我纹上了那个Windows的标志。所以,你可以在2010再来问我这个问题。

  Charles Petzold于1986年12月在《微软系统杂志》上发表了第一篇有关Windows程序设计的文章。1994年5月,由于他对Windows能取得成功所作出的巨大贡献,Petzold成为获得Windows杂志和微软公司颁发的Windows先锋奖的七人之一(也是其中唯一的作家)。Petzold也是唯一一本介绍计算机内部工作原理的书:《代码:隐藏在计算机硬软件背后的语言》的作者。他现在正在进行有关软件起源与历史的研究工作。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
<p> <span style="font-size:14px;color:#337FE5;">【为什么学爬虫?】</span> </p> <p> <span style="font-size:14px;">       1、爬虫入手容易,但是深入较难,如何写出高效率的爬虫,如何写出灵活性高可扩展的爬虫都是一项技术活。另外在爬虫过程中,经常容易遇到被反爬虫,比如字体反爬、IP识别、验证码等,如何层层攻克难点拿到想要的数据,这门课程,你都能学到!</span> </p> <p> <span style="font-size:14px;">       2、如果是作为一个其他行业的开发者,比如app开发,web开发,学习爬虫能让你加强对技术的认知,能够开发出更加安全的软件和网站</span> </p> <p> <br /> </p> <span style="font-size:14px;color:#337FE5;">【课程设计】</span> <p class="ql-long-10663260"> <span> </span> </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 一个完整的爬虫程序,无论大小,总体来说可以分成三个步骤,分别是: </p> <ol> <li class="" style="font-size:11pt;color:#494949;"> 网络请求:模拟浏览器的行为从网上抓取数据。 </li> <li class="" style="font-size:11pt;color:#494949;"> 数据解析:将请求下来的数据进行过滤,提取我们想要的数据。 </li> <li class="" style="font-size:11pt;color:#494949;"> 数据存储:将提取到的数据存储到硬盘或者内存中。比如用mysql数据库或者redis等。 </li> </ol> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中可能会发生被反爬、效率低下等。因此我们又增加了两个章节用来提高爬虫程序的灵活性,分别是: </p> <ol> <li class="" style="font-size:11pt;color:#494949;"> 爬虫进阶:包括IP代理,多线程爬虫,图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别等。 </li> <li class="" style="font-size:11pt;color:#494949;"> Scrapy和分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫等。 </li> </ol> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 通过爬虫进阶的知识点我们能应付大量的反爬网站,而Scrapy框架作为一个专业的爬虫框架,使用他可以快速提高我们编写爬虫程序的效率和速度。另外如果一台机器不能满足你的需求,我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 </p> <p style="font-size:11pt;color:#494949;">   </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 从基础爬虫到商业化应用爬虫,本套课程满足您的所有需求! </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> <br /> </p> <p> <br /> </p> <p> <span style="font-size:14px;background-color:#FFFFFF;color:#337FE5;">【课程服务】</span> </p> <p> <span style="font-size:14px;">专属付费社群+定期答疑</span> </p> <p> <br /> </p> <p class="ql-long-24357476"> <span style="font-size:16px;"><br /> </span> </p> <p> <br /> </p> <p class="ql-long-24357476"> <span style="font-size:16px;"></span> </p>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值