热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

与.Net大师JeffreyRichter面对面交流——TUP对话大师系列活动回顾(多图配详细文字)...

与.Net大师JeffreyRichter面对面交流——TUP对话大师系列活动回顾(多图配文字)上周末很有幸参加了CSDN举行的TUP活动,
与.Net大师Jeffrey Richter面对面交流——TUP对话大师系列活动回顾(多图配文字)

上周末很有幸参加了CSDN举行的TUP活动,不但获得了带有Jeffrey签名的图书一本,而且还得到了和Jeffrey面对面交流的机会。会上也见到了很多牛人,博客园上的金旭亮老师,图灵丛书的主编刘江老师以及微软的测试总管方敏先生,激动之余,做一些回顾。



首先是图灵丛书的主编刘江老师致开幕词。


然后是北理工的金旭亮老师讲解.Net 4.0的新特性。



金老师首先讲解了.Net 1.0到.Net 4.0的发展历程,然后系统的介绍了.Net 4.0新增的特性(并行处理,MEF等),讲解的很好,举的例子也不错,不过不知道为什么金老师没提到DynamicObject,可能是自己当时没仔细听吧。



金老师准备的很充分,讲解的也很全面,只可惜时间不足,后面的一些关于MEF的内容没有讲完。
感觉金老师很像我本科时的一个老师,对学生很负责任,对技术也有很执着的追求,看似古板,实际上却很幽默。在讲解C#语言的同时也融入了很多软件工程的重要思想。在如今大学校园的计算机系,能有这样的老师,实在很难得。很想阅读下金老师的那本关于.Net4.0的书,以后应该和金老师多交流下,以增长自己的见识。



接下来就是Windows核心编程以及CLR via C#系列畅销图书的作者,Windows编程、.Net编程的大牛Jeffrey Richter的登场了。



感觉这些老外还是很随意的,牛仔裤t恤衫,非常休闲的就上场了。



作为技术作家,Jeffrey首先提到他最近并没有在写新书,也暂时没有写新书的计划,that feeling is great~
对于CLR via C#是否还会出新版,Jeffrey表示之后随着.Net的版本更新,会做一些修订。而对Windows核心编程那本书,Jeffrey表示very painful,如果可以的话他是再也不想碰了,看来windows programming还真是fucking horrible。



Jeffrey表示他并没有做特别的准备,因此可以直接进入问答环节。



在这个环节,由于之前请的那位做翻译的嘉宾没来,我非常幸运的出场了(作为Jeffrey的临时Interpreter,没错,就是左边那个黑衣男),多谢刘江老师给我这个机会。



第一个问题把整个会场的人都整囧了,一个哥们居然拿出自己一个编程的问题(Winform程序,连接数据库时窗体突然消失了,请问Jeffrey老师这是为神马?),搞的我也不知道该不该翻译,Jeffrey对这样的问题也表示很无奈。

 

不过接下来一个哥们问的就很有水平了,先问了C#语言的发展趋势,然后问了下Jeffrey对"is c# better than java?"这个问题的看法,最后问了下windows操作系统未来的发展方向。


对于第一个问题,Jeffrey回顾了下C#的发展历程:C#1.0是一门Java-like、C++-like的语言;C#2.0引入了泛型的机制,使得C#更加完善;C#3.0、3.5增加了很多函数式编程的语法特性(高阶函数、lambda表达式),当然还有LINQ;随着动态语言(Ruby、Python)和多核CPU的飞速发展,C#4.0引入了动态语言的一些特性(诸如Dynamic Type),并引入了更完善的并行库。至于C#接下来的发展方向,Jeffrey认为C#会增加更多的特性以支持异步编程(Asynchronous Programming)。

对于第二个问题,Jeffrey认为这个问题不好回答。首先他承认他用java主要是在他的android phone上写一些小apps,对于java语言和C#语言而言(注意是语言,不是平台),Jeffrey认为C#更强大,更易用,他也提到这主要是由于C#晚于Java发布,因此对Java语言进行了扬长避短。同时Jeffrey认为在library这方面,.Net库比Java库设计的更合理,更人性化。而在IDE方面,Jeffrey认为Visual Studio相对于Java的IDE(Eclipse)要更强大易用。

对于第三个问题,Jeffrey提到了一些关于Windows 8的内容。微软对苹果一直很不爽,尤其是ipad这样的移动设备。他表示windows 8会更注重移动设备,优化程序性能,增加续航时间,并提供对ARM芯片的支持,以在平板设备(slate device)上同iOS相抗衡。


 

接下来有人问Jeffrey对mono的看法。Jeffrey个人认为mono是一个很好的项目,他也很希望C#这样优秀的语言可以跨平台,然而他也提到微软可不一定这么想(需要注意Jeffrey本人不是微软公司的)。



一位同学提到将来会不会有可以直接运行IL的CPU(这哥们看书看的还真细)。Jeffrey没直接回答这个问题,他只是提到微软现在开发了一些称为".Net Gadget"的小玩意,可以编写C#代码再烧制到这些设备上,通过这种方式,你甚至可以自己编写DC上的程序。


接下来进入了圆桌环节,到场的两位嘉宾(金旭亮老师和微软的测试总监方敏先生)上台,同Jeffrey一起解答之前网友的热门问题(我本来是站在一边的,后来Jeffrey让我坐他旁边了,不胜荣幸,图上的我正在疯狂的记录中,以便接下来口译)。刘江老师从中精选了一些代表性的问题。

问题1:如何在技术的浪潮中选择自己的方向?

Jeffrey认为首先要找到并跟随自己的兴趣,follow your heart。Jeffrey认为学好计算机专业基础(Computer Core Concepts)是相当重要,诸如操作系统的概念,数据结构这些课程都应该扎实掌握。在学好基础的前提下,专精一个方向,比如说图形处理或是人工智能,这样就会使自己在技术的浪潮中利于不败之地。

方敏先生则根据他的招聘经验对学生提出了一些建议。他尤其提到当前的大学学生编码能力不足,微软面试的写程序环节,很多学生写不出来,一些人写了但不是最佳的方案。为此他建议学生在校期间多编程序。

金旭亮老师也认为兴趣很重要,多编写代码,多实践,实践中补充理论,学理论时进行实践,如此互动。金老师以Brooks的新书Design of design为例,虽然是好书,但是没有点经验,是根本看不动的。

问题2:如何尽快的掌握一门新技术?

Jeffrey谈到了他是如何学习Windows Azure的:下载SDK、观看教程、阅读文档、编写sample code、与一线人员交流。他还提到,自己过去的经验对于学习掌握新技术有很大的帮助(深表赞同,自从阅读了esr的那篇文章,学习了五类编程语言之后,感触颇多),此外,要focus,要专注,要持之以恒。

刘江老师提到Jeffrey有Python的经验,Jeffrey也就发表了下对动态语言的看法。他表示自己是a fan of strongly type language,因此用C++/C#很多,他承认Python这类语言在编写一些脚本时很方便,不过他认为动态语言不适合大型的工程项目,动态语言是很灵活,但也许太灵活了。编写一些gluing code(胶水代码)动态语言很适合,但是对大型的工程而言,强类型语言更合适。


金旭亮老师在这里提到基础的重要性,以WCF为例,他提到一个学生不明白Http不知道Socket,就要学习WCF,结果自然不会好。他同时提到要多看一些技术人员的blog(good advice),尤其是那些项目主力开发人员的blog。

方敏先生进行了补充,他认为技术固然是重要的,但一定要与应用相结合,以他所负责的health care sytem为例,他们的项目组就经常到医院进行实地考察,以编写实用的医疗管理软件。

问题3:对云计算的看法以及云计算对软件界带来的影响?

对火热的云计算,Jeffrey似乎并不感冒,他用infancy这个词来描述cloud computing,认为云计算还有很长的路要走。
对于云计算的影响,Jeffrey认为如何把现有的软件迁移到云中是一个巨大的挑战(migrating is a great chanllenge),同时,如何编写可扩展性强的软件以适应云环境,也是一个难题。

方敏先生则提到,对于云计算,有三点要求:Performance(性能),Security(安全性),Extensibility(可扩展性),这三点也是Windows Azure追求的目标。

问题4:在微软的众多表现层技术中,你最推荐的是哪一种技术?

这个问题的回答比较令人意外(也许是情理之中的回答),Jeffrey首推HTML5,不但是因为微软已经把发展HTML5作为主战略,而且是因为HTML5有效的支持Cross-Platform,为了在移动终端的市场上取得更大的突破,微软需要一种跨平台的强有力的技术,这就是HTML5。Jeffrey顺便提到,如果不考虑跨平台,而且想制作绚丽的界面的话,也可以选择silverlight。



接下来就是签售活动了,各位读者纷纷向Jeffrey索要签名,或是合影。



会后不但和Jeffrey合影,而且并获得了Jeffrey的签名图书,十分兴奋,毕竟是头一次和这样的编程大神级人物走的这么近,而且还可以他面对面交流,that is really fantastic!!!


 


此外,多谢这位帅哥,帮我拍了那么多照片,呵呵。

转:https://www.cnblogs.com/figure9/archive/2011/03/21/1990282.html



推荐阅读
  • 本文探讨了使用C#在SQL Server和Access数据库中批量插入多条数据的性能差异。通过具体代码示例,详细分析了两种数据库的执行效率,并提供了优化建议。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文详细介绍了Java中org.w3c.dom.Text类的splitText()方法,通过多个代码示例展示了其实际应用。该方法用于将文本节点在指定位置拆分为两个节点,并保持在文档树中。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • andr ... [详细]
  • VPX611是北京青翼科技推出的一款采用6U VPX架构的高性能数据存储板。该板卡搭载两片Xilinx Kintex-7系列FPGA作为主控单元,内置RAID控制器,支持多达8个mSATA盘,最大存储容量可达8TB,持续写入带宽高达3.2GB/s。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 开发笔记:2020 BJDCTF Re encode
    开发笔记:2020 BJDCTF Re encode ... [详细]
  • Ihaveastringwithquotesaroundthepathasfollows:我在路径周围有一个带引号的字符串,如下所示:C:\ProgramFiles(x ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 本文介绍了如何在 C# 和 XNA 框架中实现一个自定义的 3x3 矩阵类(MMatrix33),旨在深入理解矩阵运算及其应用场景。该类参考了 AS3 Starling 和其他相关资源,以确保算法的准确性和高效性。 ... [详细]
  • 本文探讨了如何优化和正确配置Kafka Streams应用程序以确保准确的状态存储查询。通过调整配置参数和代码逻辑,可以有效解决数据不一致的问题。 ... [详细]
  • 本文介绍如何在华为CE交换机上配置M-LAG(多链路聚合组),以实现CE1和CE2设备作为VLAN 10网关的高可用性。通过详细的配置步骤,确保网络冗余和稳定性。 ... [详细]
author-avatar
吾爱九-九九
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有