Microsoft Techdays Paris - Day One

30 篇文章 0 订阅
5 篇文章 0 订阅

/*

Author : Jiangong SUN

*/

I've participated microsoft techdays paris in congress palace of paris between 12 and 14 february. I was surprised by the number of the attendants of this conference, a lot of passionate professionals, students, organizers and speekers. I missed several sessions because the halls were not big enough for accommodating so many people.

A lot of topics were covered during the 3 days, such as ALM, ASP.NET MVC, Visual Studio 2012, Windows Server, Office 365, Agile, TypeScript, Windows Phone, Windows 8 etc. I've chosen about 12 sessions in all, and most of them are helpful for my daily work.

Here is my personal card and the palace map for attending this conference.



Next I will make some conclusions for the sessions I've attended in the first day.


Opening: 


Fake assembly: is a technology for isolate unit test. It provides two methods: stubs and shims.
Blend: is used to design applications and is integrated in VS 2012

Session 1: Plongé au coeur du .NET 4.5 (Finaxyx, MindMatcher)

New features in .NET 4.5
-Garbage collector: better background garbage collection for server
-Large Object Heap(LOH): better allocator. Allocation >= 80k bytes belongs to LOH. LOH is only collected on generation 2 collection.
-Multicore Just-in-Time(JIT): transform IL code to machine code. ProfileOptimization class is used to optimize the transformation.

NGEN(Native image GENeration) vs JIT: http://msdn.microsoft.com/en-us/magazine/cc163610.aspx
MPGO(Managed Profile Guided Optimization): tool to optimize code generated by NGEN
JIT debugger: RE-JIT, ICorDebug

Session 2: ASP.NET Web API, SignalR, UX

API: framework for building RESTful web services
It's Standard; heart of app; Simple, autonome

HATEOAS is RESTful API framework

SignalR is a framework for building real-time application

Problem:
HTTP is not adapted: it's stateless, it support only request/response
Html5, web sockets: 
advantage: http extension, support proxy, bi-directional communication
disadvantage: instable, need to write protocol
Solution:
Short pooling: a lot of traffic, expensive
Long pooling: server keep a connection with some time
Forever frame: most used 
1)Http /1.1 200 ok
2)<script>eval({id:'1'})</script>
3)<script>eval({id:'2'})</script>

SignalR: 
1) all proved techniques
2) suitable for browser
3) automatic server
4) prgramming abstraction

SignalR API: 
support persistent connection(low level)
hubs(high level)

SignalR Performance:
250k ~ 500k/s
SignalR 1.1 is 18 times rapid than version 1.0


Session 3: C# .NET énigimes

2001 .net 1.0
2012 .net 5.0 vs2012

C# language specification is installed when VS is installed,its path is: "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC#\Specifications\1033"


1) explicit type is not always recommanded, it depends on the situation. 
For example, 
it's recommanded to use var because you have already know the value's type.
var str = "Hello World!"; 
it's recommanded to use explicit type when you don't know the value's type.
string str = methodName();
If you see the machine code desassebled by ILDASM, you will see the code generated by var and explicit type are same. So none of the them have advantage.


2) i++ vs ++i

int i =1;
i = i++;
console.writeline(i);
Result => 1

3) stack vs heap
stack Last In First Out
heap ramdom

4) property 

5) yeild return:

yield return is very useful in conditional iterator or infinite collection. 
You don't need to know the next item in collection before returning it, which is a benefit for infinite collection or UI pagination.

foreach (var str in RunYieldOrderTest())
{
if (str == "charles")
Console.Write(str);
}

public static IEnumerable<string> RunYieldOrderTest()
{
var names = new List<string>() { "charles", "soleil" };
Console.Write("name1");
yield return "charles";
Console.Write("name2");
yield return "soleil";
}

http://stackoverflow.com/questions/410026/proper-use-of-yield-return

6) execution order 

int i = 0;
var s = string.Format("{0} {1} {2} {3}", ++i, i++ * ++i, i, i++ + i++);

Result => 1 3 3 7

Session 4: Améliorer votre productivité avec Visual Studio 2012

Visual Studio Version history:
VS 97(Version 5.0) -> VB 5.0
VS 6.0(Version 6.0) -> VB 6.0
VS .NET 2002(Version 7.0) -> C# 1.0
VS .NET 2003(Version 7.1) -> C# 1.1
VS 2005(Version 8.0) -> C# 2.0
VS 2008(Version 9.0) -> C# 3.5
VS 2010(Version 10.0) -> C# 4.0
VS 2012(Version 11.0) -> C# 5.0

In order to improve the productivity in VS 2012, you have to know the new functionalities which are:
->Integrated videos
You have integrated tutorials in VS 2012. You can also activate subtitle when clicking "CC".
->Multiple separated screens.
You can split your screens to several screens, And 
->Different color theme. 
You can configure different color themes with Dark mode, Blue mode and Light mode in 
"Tools" -> "Options" -> "General" -> "Color Theme"
->Integrated Search
There is a quick search which is a global search, and prompt a list just under the search field.
"Ctrl"+"F" is more powerful because it can exist when you develop, but you must finish you search 
or leave it in another tab to continue your development.
->Solution explorer
Now you have you "class view" in your solution which will list all the levels of elements
(class, method, interfaces etc) in your namespace.
You have also a search field in you solution explorer, you can search all the element with the keyword you search.
->sample code in "Samples Gallery"
->Web development
You have auto-completion for jQuery and all the jQuery documentation is integrated.
->Debugging
You can download remote debugger and configure a remote machine for remote debugging.

Session 5: ASP.NET MVC new features (Infinite Square)

News:
->New template for desktop and mobile 
->HTML5 support
->Authentication OpenID, OAuth
->Separation of controllers into different folders
->Default IIS Express for applications
->Different display for different user agent, ex: Iphone, Ipad etc
->Bundling: combine multiple files into one
Integrate multiple files to App_Start\BundleConfig.cs 
->Minification: Delete useless space of files


All the above sessions are more about CSharp ASP.NET. The day 2 is more about Visual Studio 2012, TFS and ALM.

I hope this articile can do some help! Enjoy coding!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值