316科技

316科技

为什么都反对 XML 而支持使用 JSON?

316科技 164

一、为什么都反对 XML 而支持使用 JSON?

很多程序员并没有亲自设计过XML格式的DSL语言,只是听业界的前辈讲过上古时代的XML是如何被后起之秀淘汰的传说,就由此形成了一种刻板印象,认为XML过于冗长,只能用于机器之间传递信息,并不适合于人机交互。但是,这是一种错误的偏见,源于XML原教旨主义对于XML错误的使用方式,以及一系列XML国际规范对错误使用方式的推波助澜。

很多人一想到用XML来表达逻辑,浮上心头的刻板印象可能是

<function>
   <name>myFunc</name>
   <args>
      <arg>
         <arg>
           <name>arg1</name>
           <value>3</value>
         </arg>
         <arg>
           <arg>
              <name>arg2</name>
              <value>aaa</value>
           </arg>
         </arg>
      </arg>
   </args>
</function>

但是实际上我们完全可以采用如下XML格式

<myFunc arg1="3" arg2="aa" />

如果要表达arg1的参数值类型是整数类型,而不是字符串类型,则可以对XML语法进行扩展,允许直接使用数字作为属性值。也可以类似Vue框架,通过补充特定的前缀信息来区别是否字符串,例如规定@:前缀表示后面的值满足JSON语法规范,可以按照JSON格式进行解析。

<myFunc arg1=3 arg2="aa" /> 或者
<myFunc arg1="@:3" arg2="aa" />

在Nop平台中,我们规定了JSON和XML之间的双向转换规则。例如对于如下AMIS页面描述:

{
  "type": "crud",
  "draggable": true,
  "bulkActions": [
    {
      "type": "button",
      "label": "批量删除",
      "actionType": "ajax",
      "api": "delete:/amis/api/mock2/sample/${ids|raw}",
      "confirmText": "确定要批量删除?"
    },
    {
      "type": "button",
      "label": "批量修改",
      "actionType": "dialog",
      "dialog": {
        "title": "批量编辑",
        "name": "sample-bulk-edit",
        "body": {
          "type": "form",
          "api": "/amis/api/mock2/sample/bulkUpdate2",
          "body": [
            {
              "type": "hidden",
              "name": "ids"
            },
            {
              "type": "input-text",
              "name": "engine",
              "label": "Engine"
            }
          ]
        }
      }
    }
  ]
}

对应的XML格式为

<crud draggable="@:true">
  <bulkActions j:list="true">
    <button label="批量删除" actionType="ajax" confirmText="确定要批量删除?">
      <api>delete:/amis/api/mock2/sample/${ids|raw}</api>
    </button>
    <button label="批量修改" actionType="dialog">
      <dialog title="批量编辑" name="sample-bulk-edit">
        <body>
           <form>
             <api>/amis/api/mock2/sample/bulkUpdate2</api>
             <body>
               <hidden name="ids" />
               <input-text name="engine" label="Engine" /> 
             </body>
           </form>
        </body>
      </dialog>
    </button>
  </bulkActions>
</crud>

实际上XML语法看起来要更加紧凑直观。

这里使用的是无元模型约束的JSON-XML转换,所以需要使用j:list来标记数组元素,并用@:前缀来表示非字符串值。如果XML文件具有XDef元模型定义,就不需要这些额外的标注信息了。

使用XML相对于JSON格式的另外一个好处是它可以很容易的引入XML扩展标签来用于代码生成,代码的表示形式和代码生成的结果形式都是XML格式,这在Lisp语言中被称作是同像性目前JSON格式缺乏一种同像的代码生成方式

<columns>
  <c:forEach var="col" items="${entityModel.columns}">
    <column name="${col.name}" sqlType="${col.sqlType}" />
  </c:forEach>  
</columns>

关于XML和JSON的等价性,进一步的讨论可以参见

canonical:XML、JSON和函数AST的等价性

二、怎么使用计算器求反对数?

1,b=logaN中,反对数是已知对数b去求真数N。N=a^

b该计算器只有a=10,e时有反对数N=10^b和N=e^b2,求常用对数N=10^b按“b”,“SHlFT”,“log”3,求自然对数按“b”,“SHlFT”,“ln”4,a≠10,a≠e用换底公式化为常用对数或自然对数后,再计算

三、大数据 反对

大数据反对观点的理解

随着科技的飞速发展,大数据作为一种重要资源和工具,逐渐渗透到我们生活和工作的方方面面。大数据不仅为企业决策提供了更多依据,也为科学研究、社会管理等领域带来了全新的机遇。然而,正如任何新技术一样,大数据也面临着诸多争议与质疑,其中包括一些对其反对的观点。

背景介绍

首先,让我们简要了解一下大数据的定义。大数据指的是规模巨大、种类繁多且更新速度快的数据集合,这些数据通常需要借助先进的技术进行采集、存储、处理和分析。通过对大数据的挖掘,人们可以发现隐藏在数据背后的关联性、规律性和趋势,从而为决策提供更有力的支持。然而,尽管大数据应用的潜力巨大,但却存在一些人对其产生反对的观点。

观点分析

一些人反对使用大数据的主要理由是数据隐私与安全问题。随着数据的不断增加,个人隐私的泄露问题越来越受关注。在大数据应用过程中,个人信息的采集、存储和共享可能会引发隐私泄露的风险,甚至遭遇黑客攻击。这一点不容忽视,特别是在互联网普及的今天,个人信息安全已成为社会关注的焦点之一。

另外,还有一些人反对使用大数据的观点是担忧其对人类自身的影响。在使用大数据进行决策时,往往需要倚重算法和机器学习的技术手段,这可能导致人与人之间的交流和判断能力下降,甚至形成对创新和自主思考的依赖。有人担心,大数据的普及可能会使人们失去独立思考和创新的能力,从而对整个社会产生负面影响。

如何应对

针对大数据引发的争议与反对观点,我们应该采取相应的措施来应对。首先,关于数据隐私与安全问题,可以加强对数据采集、共享和存储的监管与约束,制定更加严格的法规和标准来保护个人数据安全。同时,企业和组织也应该自觉遵守相关规定,加强数据安全的保护措施。

其次,针对大数据对人类自身可能带来的影响,我们应该注重人文关怀和教育培养。可以通过教育引导,培养人们独立思考和批判思维的能力,让他们意识到大数据虽然有其优势,但也存在局限性,需要人类智慧来加以引导和运用。

结语

总的来说,大数据作为一种重要的技术和资源,对现代社会的发展起着不可或缺的作用。在应对反对观点时,我们应该保持理性思考,不盲目反对也不盲目崇拜,而是要在不断探索与实践中找到平衡点,让大数据更好地造福于人类社会。

四、反对学生兼职

博客文章:反对学生兼职的观点

作为一名教育工作者,我经常听到一些学生表达对兼职的反对意见。他们认为,兼职会影响他们的学业,分散他们的精力,甚至可能导致学习成绩下降。这种观点并不罕见,但我认为这种看法存在一定的误解。

兼职与学业的关系

兼职确实可能会分散学生的精力,但这并不意味着它一定会导致学业成绩下降。事实上,许多学生在兼职的同时能够保持较高的学业表现。关键在于如何平衡兼职和学业之间的关系。学生应该根据自己的兴趣和职业规划选择合适的兼职工作,并且合理安排时间,确保在不影响学业的前提下完成兼职任务。

兼职对学生成长的影响

兼职不仅可以帮助学生积累实践经验,还可以培养他们的独立性和责任感。通过兼职,学生可以学会如何管理自己的时间和资源,如何与人沟通合作,以及如何应对挫折和失败。这些技能对于他们的未来职业发展至关重要。

学生应如何应对兼职的反对意见

如果学生受到来自学校的反对意见,他们应该首先了解这些意见背后的原因和担忧。接下来,他们可以与学校相关部门或教师进行沟通,解释自己的想法和计划,并寻求支持和指导。此外,学生还可以参加相关的讲座、研讨会等活动,了解兼职的利弊,从而做出明智的决策。

结论

反对学生兼职的观点并不全面。事实上,兼职可以为学生的成长和发展提供许多有价值的经验。只要学生能够合理平衡学业和兼职之间的关系,积极参与并承担责任,他们将能够从兼职中获得更多的收获和成长。

五、反对主观主义重点是反对?

反对主观主义以整顿学风,反对宗派主义以整顿党风,反对党八股以整顿文风. 其中,以批判和纠正主观主义的思想作风,树立和发扬理论联系实际、调查研究、实事求是的思想作风,作为整风运动的中心内容.反对主观主义以整顿学风,反对宗派主义以整顿党风,反对党八股以整顿文风. 其中,以批判和纠正主观主义的思想作风,树立和发扬理论联系实际、调查研究、实事求是的思想作风,作为整风运动的中心内容.

六、国家为什么不反对使用塑料袋装食品?

塑料袋装食品的最大优点就是价格便宜,并且可以大量生产满足人们的需要。用一些可降解的包装袋装食品成本过高,推广起来费时费力并且效果不好。

七、反对物业标语?

一、小区物业差,必须赶走他;

二、小区物业不管事,物业必须要赶走;

三、小区物业只收钱,小区业主全受骗;

四、小区秩序脏乱差,这个物业不要赶走!

五、小区物业须赶走,业主才能住的欢

六、一心光想钱,服务没人管,要是你不服,天天让你心里堵。

八、适得其反对吗?

释义:意思是恰恰得到与预期相反的结果。 读音:shì dé qí fǎn 出处:清·魏源《筹海篇·议守上》“今议防堵者,莫不曰:‘御诸内河不若御诸海口,御诸海口不若御诸外洋。’不知此适得其反也。”

译文:现在讨论防御堵截的人,没有不说:“防御内河不如防御各个海洋的入口,防御各个海洋的入口不如防御在海外。”

却不知道这会恰恰得到与预期相反的结果。 造句:做老师的人经常在那里假装一副师长的尊严样子,企图让学生把他看作一个十全十美的完人。这个做法的效果适得其反。

他们怎么不明白,正是因为他们想树立他们的威信,他们才反而摧毁了他们的威信。

九、反对商鞅名句?

自古驱民在信诚,一言为重百金轻。今人非可非商鞅,商鞅能令政必行。—王安石

十、反对浪费标语?

1、勤俭节约光荣,铺张浪费可耻。

2、坚守勤俭美德,引领节约时尚。

3、节约是一种素质,节约是一种境界。

4、节约粮食,从我做起,从现在做起。

5、节约能源做的好,省钱省能又环保。

6、勤俭节约福之路,贪欲奢靡祸之门。

7、树立节约意识,倡导节约行为。

8、增强节约粮食,爱惜粮食的意识。

9、节约不以微小而不为,浪费不以量小而为之!10、一粒粮一滴汗,节约浪费两重天。

上一个下一篇:智能机器人发展概况

下一个上一篇:返回栏目