zoukankan      html  css  js  c++  java
  • 一些独特的语言思考

    各语言的特色

    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

    alarm   作者:NewSea     出处:http://newsea.cnblogs.com/    QQ,MSN:iamnewsea@hotmail.com

      如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。
  • 相关阅读:
    vue-路由传参
    ES6模板字符串
    es6中Set和Map数据结构
    本周面试题
    var、let和const定义变量的特点
    修改this的指向
    Echarts图表插件
    ES6学习
    swiper插件学习
    每日刷题4
  • 原文地址:https://www.cnblogs.com/newsea/p/2674425.html
Copyright © 2011-2022 走看看