2010年08期《程序员》配套源码及相关链接
为了方便大家查阅,现把2010年08期《程序员》杂志中相关链接及代码发布在此:微博原文请见:http://www.programmer.com.cn/3783/程序天下事P16微软技术专栏推荐资源视频在NorwegianDevelopersConference技术会议上,C#大师级人物JonSkeet奉献了一个精彩的课程。视频地址:http://strea...
为了方便大家查阅,现把2010年08期《程序员》杂志中相关链接及代码发布在此:
微博
原文请见:http://www.programmer.com.cn/3783/
程序天下事
P16 微软技术专栏 推荐资源
视频
在Norwegian Developers Conference技术会议上,C#大师级人物Jon Skeet奉献了一个精彩的课程。
视频地址:http://streaming.ndc2010.no/tcs/?id=AFDB4098-C5C8-49DF-8C2A-7E317F63E72D
P21 数据库技术专栏 新闻快讯
net-security.org
Repscan 3.5扩充对MySQL和DB2的数据库漏洞评估支持
http://www.net-security.org/secworld.php?id=9492
新品发布
iPad周刊
DB Viewer Plus Lite提供iPad与Oracle、SQLServer、DB2、MySQL、PostgreSQL、Access等数据库的浏览及同步功能
http://www.ipadweek.ly/apps/364584373/sys-con.com
针对MapReduce封装的预制分析软件包
http://www.sys-con.com/node/1438569
IT Business Edge:基于亚马逊EC2的数据库集成方案
事件
PostgreSQL停止对较早前版本的支持
PostgreSQL宣称下个关于7.4和8.0版本的补丁将是针对这两个版本的最后一次补丁。
http://www.h-online.com/open/news/item/End-of-support-for-old-PostgreSQL-versions-1029897.html
P23 游戏开发专栏 推荐资源
李巍的博客:http://blog.csdn.net/noslopforever/
P24 安全专栏 本月热点
IT价值联盟
……网址:http://www.itvalue.com.cn/
P29 Web专栏
代码1:
……一起来了解这些领域的应用。
http.createServer(function (req, res) {
res.writeHead(200, {‘Content-Type’: ‘text/plain’});
res.end(‘Hello World\n’);
}).listen(8080, “127.0.0.1”);
代码2:
……处理并发请求效率更高等……
{“id”: “036378”, “name”: “etai”, “job”: “F2E” }
代码3:
……并且在海量存储、高并发读写方面有绝佳的表现。
var t = db.things.findOne( { name : “etai” } );
P55 《编程语言的发展趋势及未来方向》代码段
代码1:
……如果是用命令式的编程方式,可能是这样的:
var groups = new Dictionary<string, Grouping>();
foreach (Product p in products)
{
if (p.UnitPrice >= 20)
{
if (!groups.ContainsKey(p.CategoryName))
{
Grouping g = new Grouping();
g.Name = p.CategoryName;
g.Count = 0;
groups[p.CategoryName] = g;
}
groups[p.CategoryName].ProductCount++;
}
}
var result = new List<Grouping>(groups.Values);
result.Sort(delegate(Grouping x, Grouping y)
{
return
x.Count > y.Count ? -1 :
x.Count < y.Count ? 1 :
0;
});
代码2:
……但如果使用LINQ,代码便可以改写成:
var result = products
.Where(p => p.UnitPrice >= 20)
.GroupBy(p => p.CategoryName)
.OrderByDescending(g => g.Count())
.Select(g => new { Name = g.Key, Count = g.Count() });
代码3:
……这段代码还可以利用C# 3.0中内置的DSL,即LINQ查询语句来改写:
var result =
from p in products
where p.UnitPrice >= 20
group p by p.CategoryName into g
orderby g.Count() descending
select new { Name = g.Key, Count = g.Count() };
代码4:
……在F#中如果要计算一个列表所有元素之和,也可以使用命令式的风格来编写代码:
let sumSquaresI l =
let mutable acc = 0
for x in l do
acc <- acc + sqr x
Acc
代码5:
……事实上,在F#中更典型的做法是:
let rec sumSquaresF l =
match l with
| [] -> 0
| head :: tail -> sqr head + sumSquaresF tail
代码6:
……例如有这样一段代码:
var a = 0, n = 10;
for (var i = 0; i < n; i++) {
a += i;
}
P62 《ECMAScript 5th中的语言特色》代码段
代码1:
……我们可以这样来声明一个对象的属性:
{
aName : aValue
}
更多推荐