一些独特的语言思考
各语言的特色
1. linq 本身是一个语法糖, 编译器都是把LinQ句法翻译成扩展方法的链式表达式。在使用上体验非常好。
关键字 |
说明 |
from |
指定数据源 |
where |
以&&(AND)或者||(OR)组合的表达式来做数据过滤 |
select |
用于指定查询中返回的结果 |
group |
根据键值,将查询结果分组 |
into |
指定一个临时变量,保存join,group,select的结果 |
orderby |
根据指定值,将查询结果排序 |
join |
连接两个数据源 |
let |
声明查询表达式内部的变量 |
2. eval 动态脚本利器 js语言
3. 执行匿名方法 js语言 : (function(){})()
C# 语言: ((Func<int,bool>)(o => true))(3)
4. 三联表达式 易语言: if( 1<x<3 ) 编译器转换为: if ( 1<x && x<3 ) 还是挺好玩的。
5. 多返回值 易语言 : 返回 ( "易语言", 28 ) ;
Js : return { name: "易语言" , value: 28 } ;
C# : return new { name = "易语言" , value = 28 } ;
都很Cool
6. 作用域,自动析构: C# using(var d = new IDisposeObject() ){}
7. 协变 out , 逆变 in C#
8. prop in json , javascript
9. F#的 区间 [0..10] , 带步长的区间: [0..(3)..10]
一些不方便的地方
1. 语言或编译器还不能强制子类实现某方法,如子类必须实现克隆:
http://www.cnblogs.com/luminji/archive/2011/02/02/1948826.html#2460965
这种场景很常见,强制孙类实现某方法(可以实现,但不通用):
http://www.cnblogs.com/newsea/archive/2012/04/12/2443239.html
![]() |
作者:NewSea 出处:http://newsea.cnblogs.com/
QQ,MSN:iamnewsea@hotmail.com 如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端