精华内容
下载资源
问答
  • (给机器学习算法与Python学习加星标,提升AI技能)本文转自机器之心(nearhuman2014)最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。项目地址:...
    (给机器学习算法与Python学习加星标,提升AI技能)

    本文转自机器之(nearhuman2014)

    最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。
    • 项目地址:https://github.com/google-research/tensorflow-coder

    • Google Colab 试用地址:https://colab.research.google.com/github/google-research/tensorflow-coder/blob/master/TF-Coder_Colab.ipynb

    • 论文地址:https://arxiv.org/pdf/2003.09040.pdf

    用过 TensorFlow 框架的应该都知道,在操纵张量时,需要跟踪多个维度、张量形状和数据类型兼容性,当然还需要考虑数学正确性。此外,TensorFlow 有数百种操作,找到要使用的正确操作也是一项挑战。那么,除了直接对张量操纵进行编码以外,如果仅通过一个说明性示例进行演示,就能自动获取相应的代码呢?这个想法听起来很诱人,而 TensorFlow Coder(TF-Coder)使这成为可能!TF-Coder 的原理是:给出期望张量变换的输入 - 输出示例,TF-Coder 运行组合搜索,找出能够执行此变换的 TensorFlow 表达式,并最终输出对应的 TensorFlow 代码。

    3247b5c4e4b0ebdfa98ac1c5835fa5f8.png

    给出输入 - 输出示例,TF-Coder 在 1.3 秒内找出解决方案。TF-Coder 的合成算法如下所示:

    04c46d7b9c247f362e5606712624c50e.png

    下面的动图展示了使用 TF-Coder 解决张量操纵问题的过程:

    6a24f342a2204b3eb05f7ca2c5d44397.png

    那么,TF-Coder 工具可以在哪些场景中起到作用呢?TF-Coder:通过示例进行 TensorFlow 编程假如你想将包含 M 个元素的向量(下例中指‘rows’)和包含 N 个元素的向量(下例中指‘cols’)依次进行相加,生成一个包含所有成对和的 M x N 矩阵。使用 TF-Coder,你只需提供一个输入 - 输出示例(M=3,N=4)即可完成该操作,无需逐行进行编程。例如输入张量为:
    inputs = {
         rows : [10, 20, 30],
         cols : [1, 2, 3, 4],
    }
    对应的输出张量为:
    output = [[11, 12, 13, 14],
              [21, 22, 23, 24],
              [31, 32, 33, 34]]

    基于以上输入 - 输出信息(默认情况下已经输入到 TF-Coder Colab 中),TF-Coder 工具将在一秒内自动找到合适的 TensorFlow 代码:
    tf.add(colstf.expand_dims(rows, 1))
    这个简单的例子旨在说明 TF-Coder 利用示例进行编程的思想。而 TF-Coder 的功能不止于此,它还可用于更难的编程问题中。TF-Coder 帮你找到正确的函数假设你正在处理数值特征,如某个物品的价格。数据集中的价格范围很广,例如从低于 10 美元到超出 1000 美元不等。如果这些价格被直接用作特征,则模型可能出现过拟合,在模型评估阶段可能难以处理异常价格。为了解决上述问题,你可能需要使用 bucketing,来将数字价格转换为类别特征。例如,使用 bucket 边界 [10, 50, 100, 1000] 意味着低于 10 美元的价格应归入 bucket 0,10 美元至 50 美元的价格应归入 bucket 1,依此类推。在选择 bucket 边界之后,如何使用 TensorFlow 将数值价格映射到 bucket 索引呢?例如,给出以下 bucket 边界和物品价格:
    # Input tensors
    boundaries = [10501001000]
    prices = [15350901001001]
    计算每个项的 bucket 编号:
    # Output tensor
    bucketed_prices = [102234]
    尽管 TensorFlow 具备多种 bucketing 操作,但要弄清楚哪种操作适合执行这种 bucketing,也是比较棘手的事情。由于 TF-Coder 可以通过行为识别数百个 Tensor 操作,因此你可以通过提供输入 - 输出示例来查找正确的操作:
    # Input-output example
    inputs = {
         boundaries : [10, 50, 100, 1000],
         prices : [15, 3, 50, 90, 100, 1001],
    }
    output = [1, 0, 2, 2, 3, 4]
    只需几秒钟,TF-Coder 就能输出以下解决方案:
    tf.searchsorted(boundaries, prices, side= right )
    TF-Coder:用聪明的方式结合函数现在我们来看另一个问题:计算一个 0-1 张量,它可以找出输入张量每一行中的最大元素。
    # Input tensor
    scores = [[0.70.20.1],
              [0.4, 0.5, 0.1],
              [0.4, 0.4, 0.2],
              [0.3, 0.4, 0.3],
              [0.0, 0.0, 1.0]]

    # Output tensor
    top_scores = [[100],
                  [0, 1, 0],
                  [1, 0, 0],
                  [0, 1, 0],
                  [0, 0, 1]]
    注意,如果一行内相同的最大元素重复出现(如 scores 中的第三行),则标记第一次出现的最大元素,这样 top_scores 的每一行都只有一个 1。与上一个问题不同,这里不存在可执行该计算的 TensorFlow 函数。在文档中搜索「max」,你可能找到 tf.reduce_max、tf.argmax 和 tf.maximum,但也不清楚到底该用哪一个?tf.reduce_max 输出 [0.7, 0.5, 0.4, 0.4, 1.0],tf.argmax 输出 [0, 1, 0, 1, 2],tf.maximum 不合适,因为它只能容纳两个参数。这些函数似乎都与该示例的期望输出关联不大。而 TF-Coder 可以帮你解决这类棘手问题。你可以将这个问题写成输入 - 输出示例的形式:
    # Input-output example
    inputs = {
         scores [[0.7, 0.2, 0.1],
                   [0.4, 0.5, 0.1],
                   [0.4, 0.4, 0.2],
                   [0.3, 0.4, 0.3],
                   [0.0, 0.0, 1.0]]
    ,
    }
    output = [[1, 0, 0],
              [0, 1, 0],
              [1, 0, 0],
              [0, 1, 0],
              [0, 0, 1]]

    TF-Coder 结合使用 tf.one_hot 和 tf.argmax,得到问题的解:
    tf.cast(tf.one_hot(tf.argmax(scores, axis=1), 3), tf.int32)
    通过对 TensorFlow 操作组合进行详细搜索,TF-Coder 通常能够发现优雅的解决方案,从而简化步骤,加速 TensorFlow 程序。TF-Coder:用更少的 debug,写出准确的代码考虑通过将每一行除以该行之和,把整数出现次数列表归一化为概率分布。例如:
    # Input tensor
    counts = [[0, 1, 0, 0],
              [0, 1, 1, 0],
              [1, 1, 1, 1]]


    # Output tensor
    normalized = [[0.0, 1.0, 0.0, 0.0],
                  [0.0, 0.5, 0.5, 0.0],
                  [0.25, 0.25, 0.25, 0.25]]

    即使你知道可用的函数(tf.reduce_sum followed by tf.divide),写出正确的代码也并非易事。第一次尝试可能是这样的:
    # First attempt
    normalized = tf.divide(counts, tf.reduce_sum(counts, axis=1))
    但是以上代码是正确吗?我们需要考虑许多潜在的问题:
    • 代码中 axis 的值正确吗?是否应改为 axis=0?

    • counts 和 tf.reduce_sum(counts, axis=1) 的形状与除法兼容吗?需要改变形状或执行转置操作吗?

    • counts 和 tf.reduce_sum(counts, axis=1) 都是 tf.int32 张量。tf.int32 张量可以被除吗?是否需要先将其转换为 float 数据类型?

    • 两个参数的顺序对吗?是否需要调换位置?

    • 输出的类型是 tf.int32、tf.float32,还是别的什么?

    • 是否存在更简单或更好的方式?

    而使用 TF-Coder,你只需要给出以下输入 - 输出示例:
    # Input-output example
    inputs = {
         counts [[0, 1, 0, 0],
                   [0, 1, 1, 0],
                   [1, 1, 1, 1]]
    ,
    }
    output = [[0.0, 1.0, 0.0, 0.0],
              [0.0, 0.5, 0.5, 0.0],
              [0.25, 0.25, 0.25, 0.25]]

    TF-Coder 给出解决方案:
    tf.cast(tf.divide(counts, tf.expand_dims(tf.reduce_sum(counts, axis=1), axis=1)), tf.float32)
    TF-Coder 生成以上解决方案时,可以确保代码在示例输入上运行时能够准确生成示例输出。TF-Coder 的解决方案避免了不必要的步骤。你可以快速找出以上潜在问题的答案:需要采用额外的 tf.expand_dims 步骤,使张量形状与除法兼容;tf.divide 的答案必须是 tf.float32 类型。通过这种方式,TF-Coder 可以帮助开发者编写简单准确的代码,且无需痛苦的 debug 过程。局限性不过,TF-Coder 也有其局限性。目前它可以在一分钟内找到涉及 3 到 4 种运算的解决方案,但短时间内找到涉及 6 种及以上操作的解决方案,对它来说还是太过复杂。此外,TF-Coder 尚不支持复张量、字符串张量或 RaggedTensor。TF-Coder 支持操作的完整列表,参见:https://colab.research.google.com/github/google-research/tensorflow-coder/blob/master/TF-Coder_Colab.ipynb#scrollTo=Q6uRr4x9WHRC此外,TF-Coder 只能保证解决方案对给出的输入 - 输出示例有效。该工具会搜索一个与给定输入 - 输出示例相匹配的简单 TensorFlow 表达式,但有时候「过于简单」,不能按预期进行泛化。尽可能让示例无歧义会有所帮助,这一般可以通过向输入和输出张量添加更多数值来实现。

    推荐阅读

    零基础入门人工智能有门槛吗?学会这些就够了

    人生苦短,我用PyCharm

    你可能不知道的 Python 技巧

    全网疯传,堪称最强,一整套NLP课程,学完月薪30K+!

    李航等提出多粒度AMBERT模型,CLUE、GLUE上优于BERT,中文提升显著

    3cb5d2bfb717037fd0fbb000af4bdc42.png

    da3eb13314c4e997893ed448c34b8f31.png

    展开全文
  • CodeAutogenerationTool:C#开源代码自动生成工具配套EasyFramework简单的功能开发
  • 龙果开源-BJUI代码自动生成工具 项目介绍 基于mybatis-plus,增加对BJUI的页面自动生成。 生成页面包括:list.ftl add.ftl edit.ftl view.ftl 修改controller的生成,兼容了bjui和mybatis-plus的分页和增删改查的方...
  • 龙果开源-Mybatis代码自动生成工具 项目介绍 基于mybatis-generator,增加了多个插件。 更新日志 2020-01-07添加到公共库 2017-10-15添加Dao层插件(可以当做服务层)-DaoPlugin.java 2017-02-24对配置文件xml增加...
  • 最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。项目地址:https://github.com/google-research/tensorflow-coderGoogle Colab 试用地址:...

    编辑:魔王、陈萍

    如何使编程更加便捷?最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。

    项目地址:https://github.com/google-research/tensorflow-coder

    Google Colab 试用地址:https://colab.research.google.com/github/google-research/tensorflow-coder/blob/master/TF-Coder_Colab.ipynb

    论文地址:https://arxiv.org/pdf/2003.09040.pdf

    用过 TensorFlow 框架的应该都知道,在操纵张量时,需要跟踪多个维度、张量形状和数据类型兼容性,当然还需要考虑数学正确性。此外,TensorFlow 有数百种操作,找到要使用的正确操作也是一项挑战。

    那么,除了直接对张量操纵进行编码以外,如果仅通过一个说明性示例进行演示,就能自动获取相应的代码呢?这个想法听起来很诱人,而 TensorFlow Coder(TF-Coder)使这成为可能!

    TF-Coder 的原理是:给出期望张量变换的输入 - 输出示例,TF-Coder 运行组合搜索,找出能够执行此变换的 TensorFlow 表达式,并最终输出对应的 TensorFlow 代码。

    bf7cef3f240793c2de2dcc738ce811a4.png

    给出输入 - 输出示例,TF-Coder 在 1.3 秒内找出解决方案。

    TF-Coder 的合成算法如下所示:

    f497c9a6f93547a07a7e8ea7d64426d5.png

    下面的动图展示了使用 TF-Coder 解决张量操纵问题的过程:

    那么,TF-Coder 工具可以在哪些场景中起到作用呢?

    TF-Coder:通过示例进行 TensorFlow 编程

    假如你想将包含 M 个元素的向量(下例中指‘rows’)和包含 N 个元素的向量(下例中指‘cols’)依次进行相加,生成一个包含所有成对和的 M x N 矩阵。

    使用 TF-Coder,你只需提供一个输入 - 输出示例(M=3,N=4)即可完成该操作,无需逐行进行编程。

    例如输入张量为:

    inputs = {

    'rows': [10, 20, 30],

    'cols': [1, 2, 3, 4],

    }

    对应的输出张量为:

    output = [[11, 12, 13, 14],

    [21, 22, 23, 24],

    [31, 32, 33, 34]]

    基于以上输入 - 输出信息(默认情况下已经输入到 TF-Coder Colab 中),TF-Coder 工具将在一秒内自动找到合适的 TensorFlow 代码:

    tf.add(cols, tf.expand_dims(rows, 1))

    这个简单的例子旨在说明 TF-Coder 利用示例进行编程的思想。而 TF-Coder 的功能不止于此,它还可用于更难的编程问题中。

    TF-Coder 帮你找到正确的函数

    假设你正在处理数值特征,如某个物品的价格。数据集中的价格范围很广,例如从低于 10 美元到超出 1000 美元不等。如果这些价格被直接用作特征,则模型可能出现过拟合,在模型评估阶段可能难以处理异常价格。

    为了解决上述问题,你可能需要使用 bucketing,来将数字价格转换为类别特征。例如,使用 bucket 边界 [10, 50, 100, 1000] 意味着低于 10 美元的价格应归入 bucket 0,10 美元至 50 美元的价格应归入 bucket 1,依此类推。

    在选择 bucket 边界之后,如何使用 TensorFlow 将数值价格映射到 bucket 索引呢?例如,给出以下 bucket 边界和物品价格:

    # Input tensors

    boundaries = [10, 50, 100, 1000]

    prices = [15, 3, 50, 90, 100, 1001]

    计算每个项的 bucket 编号:

    # Output tensor

    bucketed_prices = [1, 0, 2, 2, 3, 4]

    尽管 TensorFlow 具备多种 bucketing 操作,但要弄清楚哪种操作适合执行这种 bucketing,也是比较棘手的事情。由于 TF-Coder 可以通过行为识别数百个 Tensor 操作,因此你可以通过提供输入 - 输出示例来查找正确的操作:

    # Input-output example

    inputs = {

    'boundaries': [10, 50, 100, 1000],

    'prices': [15, 3, 50, 90, 100, 1001],

    }

    output = [1, 0, 2, 2, 3, 4]

    只需几秒钟,TF-Coder 就能输出以下解决方案:

    tf.searchsorted(boundaries, prices, side='right')

    TF-Coder:用聪明的方式结合函数

    现在我们来看另一个问题:计算一个 0-1 张量,它可以找出输入张量每一行中的最大元素。

    # Input tensor

    scores = [[0.7, 0.2, 0.1],

    [0.4, 0.5, 0.1],

    [0.4, 0.4, 0.2],

    [0.3, 0.4, 0.3],

    [0.0, 0.0, 1.0]]

    # Output tensor

    top_scores = [[1, 0, 0],

    [0, 1, 0],

    [1, 0, 0],

    [0, 1, 0],

    [0, 0, 1]]

    注意,如果一行内相同的最大元素重复出现(如 scores 中的第三行),则标记第一次出现的最大元素,这样 top_scores 的每一行都只有一个 1。

    与上一个问题不同,这里不存在可执行该计算的 TensorFlow 函数。在文档中搜索「max」,你可能找到 tf.reduce_max、tf.argmax 和 tf.maximum,但也不清楚到底该用哪一个?tf.reduce_max 输出 [0.7, 0.5, 0.4, 0.4, 1.0],tf.argmax 输出 [0, 1, 0, 1, 2],tf.maximum 不合适,因为它只能容纳两个参数。这些函数似乎都与该示例的期望输出关联不大。

    而 TF-Coder 可以帮你解决这类棘手问题。你可以将这个问题写成输入 - 输出示例的形式:

    # Input-output example

    inputs = {

    'scores': [[0.7, 0.2, 0.1],

    [0.4, 0.5, 0.1],

    [0.4, 0.4, 0.2],

    [0.3, 0.4, 0.3],

    [0.0, 0.0, 1.0]],

    }

    output = [[1, 0, 0],

    [0, 1, 0],

    [1, 0, 0],

    [0, 1, 0],

    [0, 0, 1]]

    TF-Coder 结合使用 tf.one_hot 和 tf.argmax,得到问题的解:

    tf.cast(tf.one_hot(tf.argmax(scores, axis=1), 3), tf.int32)

    通过对 TensorFlow 操作组合进行详细搜索,TF-Coder 通常能够发现优雅的解决方案,从而简化步骤,加速 TensorFlow 程序。

    TF-Coder:用更少的 debug,写出准确的代码

    考虑通过将每一行除以该行之和,把整数出现次数列表归一化为概率分布。例如:

    # Input tensor

    counts = [[0, 1, 0, 0],

    [0, 1, 1, 0],

    [1, 1, 1, 1]]

    # Output tensor

    normalized = [[0.0, 1.0, 0.0, 0.0],

    [0.0, 0.5, 0.5, 0.0],

    [0.25, 0.25, 0.25, 0.25]]

    即使你知道可用的函数(tf.reduce_sum followed by tf.divide),写出正确的代码也并非易事。第一次尝试可能是这样的:

    # First attempt

    normalized = tf.divide(counts, tf.reduce_sum(counts, axis=1))

    但是以上代码是正确吗?我们需要考虑许多潜在的问题:

    代码中 axis 的值正确吗?是否应改为 axis=0?

    counts 和 tf.reduce_sum(counts, axis=1) 的形状与除法兼容吗?需要改变形状或执行转置操作吗?

    counts 和 tf.reduce_sum(counts, axis=1) 都是 tf.int32 张量。tf.int32 张量可以被除吗?是否需要先将其转换为 float 数据类型?

    两个参数的顺序对吗?是否需要调换位置?

    输出的类型是 tf.int32、tf.float32,还是别的什么?

    是否存在更简单或更好的方式?

    而使用 TF-Coder,你只需要给出以下输入 - 输出示例:

    # Input-output example

    inputs = {

    'counts': [[0, 1, 0, 0],

    [0, 1, 1, 0],

    [1, 1, 1, 1]],

    }

    output = [[0.0, 1.0, 0.0, 0.0],

    [0.0, 0.5, 0.5, 0.0],

    [0.25, 0.25, 0.25, 0.25]]

    TF-Coder 给出解决方案:

    tf.cast(tf.divide(counts, tf.expand_dims(tf.reduce_sum(counts, axis=1), axis=1)), tf.float32)

    TF-Coder 生成以上解决方案时,可以确保代码在示例输入上运行时能够准确生成示例输出。TF-Coder 的解决方案避免了不必要的步骤。你可以快速找出以上潜在问题的答案:需要采用额外的 tf.expand_dims 步骤,使张量形状与除法兼容;tf.divide 的答案必须是 tf.float32 类型。

    通过这种方式,TF-Coder 可以帮助开发者编写简单准确的代码,且无需痛苦的 debug 过程。

    局限性

    不过,TF-Coder 也有其局限性。目前它可以在一分钟内找到涉及 3 到 4 种运算的解决方案,但短时间内找到涉及 6 种及以上操作的解决方案,对它来说还是太过复杂。此外,TF-Coder 尚不支持复张量、字符串张量或 RaggedTensor。

    TF-Coder 支持操作的完整列表,参见:https://colab.research.google.com/github/google-research/tensorflow-coder/blob/master/TF-Coder_Colab.ipynb#scrollTo=Q6uRr4x9WHRC

    此外,TF-Coder 只能保证解决方案对给出的输入 - 输出示例有效。该工具会搜索一个与给定输入 - 输出示例相匹配的简单 TensorFlow 表达式,但有时候「过于简单」,不能按预期进行泛化。尽可能让示例无歧义会有所帮助,这一般可以通过向输入和输出张量添加更多数值来实现。

    展开全文
  •  具体项目开源了:https://github.com/supperlitt/WebAutoCodeOnline(这个应该不算一个广告文)  要说技术,感觉也没啥,就是写上一些自认为合适的模板,然后根据模板写一些通用的类文件上去。然后用。。。  ....

      前言

        写这个项目有很长一段时间了,期间也修修改改,写到最后,自己也没咋用(研究方向变化了)。

      正文

        具体项目开源了:https://github.com/supperlitt/WebAutoCodeOnline (这个应该不算一个广告文)

        要说技术,感觉也没啥,就是写上一些自认为合适的模板,然后根据模板写一些通用的类文件上去。然后用。。。

       栗子

        没有例子,看一堆文字,眼睛是花的。。

         有2个exe,最新的直接接入数据库的项目:WinGenerateCodeDB,WinAutoCode(老项目用代码生成,也还能用)

        运行一些,然后。。。出现了下面的主界面,选择数据库,表,当然字段本身有注释就是极好的了。。

             

        好了,下一步,这个界面功能有点多,但是别怕,大部分用不上。

        1、选择需要显示的字段,从左边移动到右边(支持批量)

        2、选择,列表操作按钮,主显示,添加,编辑(编辑的时候,最好不要带上主键ID,否则可能出问题),删除。

        

        直接进入下一步:选择生成代码的平台和基于版本,前端框架(EasyUI是老项目,Bootstrap才是最新的。。。)

        

        继续,下一步:这里就可以出界面了,如果只是生成Model也就到这里了,如果需要页面,点击页面就出现代码。文本框是支持

        全选的,不是点按钮,按钮是啥内容,看看代码,不记得了。

        

        。。。。到这里你以为就结束了,然而不是。我帮你们拷贝了一下,生成了一个项目,不过Dapper和MySql是我自己额外引入的。

        

        项目有了,当然我没有分层了。。

        看网页效果吧。小伙伴们等着急了,页面显示还有点欠缺(标签,需要依赖注释,日期显示,可以在图2,设置样式,进行调整。)

        

        功能到这里就结束了,有一个说明一下,前段使用的是cdn,所以这里直接就有样式了,不过,DateTime控件直接用CDN有问题,用本地的就没毛病,我想项目里面应该是有这些源码的,就不唠叨了。

        至于有些文本框前面没有说明,为啥,那是因为你没写备注。。。

        总结

          其实也懒得开源,懒得写博文的,看到各位大牛们转别的平台,有点慌神,其实也不是大牛们愿意转,可能是工作需要吧。好了,没啥写的了。

     

     

       

    转载于:https://www.cnblogs.com/Supperlitt/p/11171799.html

    展开全文
  • 代码自动生成工具

    2016-01-13 19:14:00
    1.1 CodeSmith 一款人气很旺国外的基于模板的dotnet代码生成器 官方网站:http://www.codesmithtools.com 官方论坛:http://forum.codesmithtools.com/default.aspx 版权形式:30天试用 开源:否 ...

    1.1 CodeSmith

    一款人气很旺国外的基于模板的dotnet代码生成器

    官方网站:http://www.codesmithtools.com

    官方论坛:http://forum.codesmithtools.com/default.aspx

    版权形式:30天试用

    开源:否

    需要先注册确认后才能下载

    1.2 MyGenerator

    MyGenerator是又一个国外很不错的代码生成工具,有人觉得比CodeSmith简单、好用。所有api可以在帮助菜单中找到。

    官方网站:http://www.mygenerationsoftware.com/portal/default.aspx

    官方论坛:

    版权形式:免费

    开源:否

    1.3 NHibernate.

    NHibernate是Hibernate公司在Java自动生成领域取得巨大成功后推出的一款ORM工具.

    官方网站:http://www.hibernate.org/

    官方论坛:

    版权形式:免费

    开源:否

    1.4 湛蓝.Net代码生成器

    一款基于软件自动生成理念,能直接生成应用的dotnet代码生成器

    官方网站:http://www.dotnetcoding.net

    官方论坛:http://dotnetcoding.cnblogs.com/

    版权形式:免费

    开源:否

    1.5 动软.NET代码自动生成器

    一款人气很旺的免费C#代码生成器

    官方网站:http://www.maticsoft.com

    官方论坛:

    版权形式:免费

    开源:否

    1.6 CodePlus

    专为sql server c#语言设计的代码生成器,功能还是很强大

    官方网站:http://www.CodePlus.com

    官方论坛:

    版权形式:需要少量的注册费用

    开源:否

    下载地址很神秘

    1.7 CodeMaker

    asp,jsp,php代码生成工具,自动生成维护数据库信息的动态网页的代码生成器。它可以帮助ASP、JSP、PHP开发人员快速的开发简单的数据库维护程序。无需任何编码,只需将数据库结构导入到CodeMaker中并做简单的设置,CodeMaker即可生成完整的数据库操作页面。用CodeMaker可以简单快速的创建网站后台维护程序。提高开发效率数十倍以上。

    官方网站:http://www.mhua.com

    官方论坛:

    版权形式:免费

    开源:否

    1.8 非非.Net代码生成器

    可以使用本工具生成VB.Net和C#语言的代码,以及三层架构与ORM架构代码,并且使用的ORM持久化组件是开源的,您可以在本软件的安装目录下找到它

    官方网站:

    官方论坛:

    版权形式:免费

    开源:否

    1.9 BMW业务模型及代码生成器

    一款人气很旺的免费C#代码生成器

    官方网站:

    官方论坛:

    版权形式:免费

    开源:否

    1.10 飞鹰CoolCoder

    专门为采用nhibernate做关系对象影射架构的系统提供代码的工具,简单易用,虽然不提供源码,我们可以用反编译工具对其反编译看源码。这是个很不错的学习机会。

    官方网站:

    官方论坛:

    版权形式:免费

    开源:否

    1.11 AutoCoder自动代码生成器

    AutoCoder自动代码生成器是一个根据模板自动生成代码的代码生成工具,根据模板的不同,可以生成任何语言(如:ASP、C#、C++BUILDER、DELPHI、JAVA、JSP、PHP、VB、VC.NET……),不同层次结构(B/S、C/S、n-tiger……),基于不同数据库(ORACLE、MSSQL、MYSQL、DB2、ACCESS、ODBC、OLE……)的代码和开发文档。开发人员无需任何编码,只需将数据库结构导入到AutoCoder中,并做简单的设置即可生成所需的代码,可以大幅度地提高开发效率!!!系统同时也提供了一个模板制作工具ModeMaker,用户可以方便的制作或修改模板,使得生成的代码更适合您使用!系统附带了十几个模板,基本上可以满足用户多方位的需求

    官方网站:

    官方论坛:

    版权形式:免费

    开源:否

    1.12 wawa Code Pro代码生成器

    一款开源的用VBScript写的代码生成器

    官方网站:

    官方论坛:

    版权形式:免费

    开源:是

    1.13 MyGeneration

    MyGeneration 是一款不错的ORM和代码生成工具,它基于模板(Template)工作,安装好MyGeneration 后自带了很多模板,并且提供在线模板库提供模板升级和允许用户自定义模板。MyGeneration 的模板可以用C#, VB.NET, JScript, and VBScript编写。使用MyGeneration 可以为Gentle.NET, Opf3, NHibernate等生成ORM架构或ORM文件,为多种数据库生成存储过程,为.Net项目生成C#、VB.NET 程序代码,PHP、HTML等页面代码。

    官方网站:http://www.mygenerationsoftware.com/portal/default.aspx

    官方论坛:http://www.mygenerationsoftware.com/phpbb3/index.php

    版权形式:免费

    开源:是

    1.14 iBATIS的代码生成工具 Ibator

    Ibator 是一个 iBATIS 的代码生成工具,它自动扫描数据库中的所有表,并生成Bean类和对应的配置文件。同时还帮你生成CRUD操作方法。提供一个独立运行的界面以及 Eclipse 的插件。

    官方网站:http://ibatis.apache.org/ibator.html

    官方论坛:

    版权形式:免费

    开源:是

    1.15 代码自动生成工具 Acceleo

    Acceleo是MDA(Model Driven Architecture:模型驱动体系结构)的一个代码自动生成工具,Acceleo能把模型转换为Java,C#,PHP等代码。Acceleo基于Eclipse平台以及EMF(Eclipse模型框架),开放源代码,可以免费使用。

    官方网站:http://www.acceleo.org/pages/home/en

    官方论坛:

    版权形式:免费

    开源:是

    1.16 最快速的java代码生成器 rapid-generator

    rapid-generator是一个生成器引擎,让你可以专注与代码生成器模板的编写, 可以生成如ibatis,ibatis3,hibernate,spring_mvc,struts2等等代码.

    该项目是 Rapid Framework 框架的一部分。

    官方网站:http://code.google.com/p/rapid-generator/

    官方论坛:

    版权形式:免费

    开源:是

    1.17 开源代码生成插件 J2EE Spider

    J2EE Spider是一个开源代码生成插件。它能够以界面引导方式产生代码,定制代码生成模板。J2EE Spider当前能够生成基于Struts/JSF,Spring,Hibernate等框架的源代码。

    J2EE Spider的主要特性如下:

    •支持以界面引导方式产生代码

    •支持与Eclipse集成

    •支持增量构建

    •支持正向逆向工程

    •产生代码的国际化

    •支持利用模版生成代码

    •支持利用多个框架

    J2EE Spider除了提供可定制的页面模版外,还可以在需要时候把新的技术集成进来。不过,其只对以下几种提供“立等可用的服务”:

    •Web 框架:Struts、JSF和Mentawa(一个来自巴西的应用框架)

    •依赖注入容器:Spring

    •O/R 映射: Hibernate

    •页面模版:SiteMesh 和Facelets

    官方网站:http://www.spideronrails.org/

    官方论坛:

    版权形式:免费

    开源:是

    1.18 slave4j

    slave4j是一个eclipse的插件,也是一个springmvc,spring,hibernate的整合框架

    slave4j插件能帮你做什么?

        搭建spring,springmvc,hibernate开发环境

        代码生成:生成curd代码,包括jsp

    slave4j框架能帮你做什么?

        封装了hibernate常用操作

        提供了常用的工具类(1.0.0版本提供的比较少,在以后的版本中继续添加)

    官方网站:http://code.google.com/p/slave4j/

    官方论坛:

    版权形式:免费

    开源:是

    1.19 JunJava

    JunJava 一个java程序代码自动生产的工具。

    针对JavaEE或者是JAVASE,AutoJava能快速的生成可以由目前最流行的结构框架搭建的项目,如Hibernater,Spring,Struts等自动组合配置。

    通过连接数据库,选择任意数据表生成实体模型,支持简单SQL语句查询,直接浏览数据表结构和数据。

    支持多项目管理,文件编辑,一键式生成代码。快速构建基础框架代码,并支持MVC 3层构架。

    生成的项目可以直接导入Eclipse,并且可以直接运行部署Tomcat服务器中,大大减少程序员的工作量。

    官方网站:

    官方论坛:

    版权形式:免费

    开源:是

    1.20 XDoclet

    XDoclet 是一个通用的代码生成实用程序,是一个扩展的Javadoc Doclet引擎(现已与Javadoc Doclet独立),XDoclet是EJBDoclet的后继者,而EJBDoclet是由Rickard Oberg发起的。它允许您使用象 JavaDoc 标记之类的东西来向诸如类、方法和字段之类的语言特征添加元数据。随后,它利用这些额外的元数据来生成诸如部署描述符和源代码之类的相关文件。可以让你创 建自己的javadoc @tags进而利用XDoclet中的Templet enging基于这些@tags生成源代码或其他文件(例如xml的deployment descriptors)。

    XDoclet 继承了 JavaDoc 引擎的思想,允许根据定制 JavaDoc 标记生成代码和其他文件。当然,XDoclet 也可以访问整个解析树。这样,它就可以访问类、类的包结构和类的方法。

    XDoclet 提供了自己的模板引擎。该模板引擎在概念上类似于 JavaServer Pages(JSP)技术。它实质上包含两类标记:块标记(block tag)和内容标记(content tag)。块标记控制如 Java 编程语言中的 if 和 for 语句之类的流。内容标记打印当前解析树上下文的片段,如类名称、方法名称和参数,等等。

    官方网站:http://xdoclet.sourceforge.net/xdoclet/index.html

    官方论坛:

    版权形式:免费

    开源:是


    转载于:https://my.oschina.net/fishyufeng/blog/602056

    展开全文
  • 开源地址: https://gitee.com/huzi308/autosoftline
  • mybatis-generator代码自动生成工具问题背景操作步骤 问题背景 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到...
  • SpringBoot与Mybatis整合(包含generate自动生成代码工具,数据库表一对一,一对多,关联关系中间表的查询) 链接:https://blog.csdn.net/YonJarLuo/article/details/81187239 自动生成工具只是生成很单纯的表,复杂的...
  • 史上最好用的代码自动生成工具:可以自动生成项目(简单三层项目,或抽象工厂项目)与存储过程,以及可根据选择带有缓存机制,开源代码,可以手动定制自己喜欢的代码风格,纯绿色,解压即用
  • 本次分享的是一个基于Mybatise 代码自动生成工具,只需要之前设计数据库,然后使用自动生成代码的工具类,可以将entity,mapper,service,Controller层自动生成。并且实现基础的功能,增删查改,以及分页等效果。先...
  • 在开发的过程中开发人员不得不经常要写很多重复的代码,为了把精力放到更重要的方面去很多人为都做了N多努力,随便google一下自动生成工具,你都会很容易得到很多这样的工具。园子就有好几款,其中李天平的Codematic...
  • 最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。机器之心报道,编辑:魔王、陈萍。项目地址:https://github.com/google-research/tensorflow-coderGoogle Colab 试用地址...
  • 一、EvoSuite简介EvoSuite 是由 Sheffield 等大学联合开发的一种开源工具,用于自动生成测试用例集,生成的测试用例均符合 Junit的标准,可直接在 Junit 中运行。通过使用此自动测试工具能够在保证代码覆盖率的前提...
  • Graphviz是贝尔实验室开源的图形绘制工具包Pyreverse是经常使用的用来分析Python代码和类关系的工具python将二者结合起来使用能够绘制Python的UML类图linux1.linux环境下graphviz安装webgraphviz是一个开源作图软件...
  • 开源中国,码云地址:https://gitee.com/zeng272804553/spring.git 自定义一个【ModelAndView】类,结果集返回值。 项目源码:https://download.csdn.net/download/zzq272804553/12048343 ...
  • 这里借鉴了人人开源的的自动生成代码工具,但是他是基于mybatisplus +velocity ,我这里将其改为jpadata+velocity。我们看一下页面输入账号密码,点击生成最后下载的点开看一下先看一下controller,这里用了jpa的...
  • (给机器学习算法与Python学习加星标,提升AI技能)本文转自机器之心(nearhuman2014)最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码...
  • 最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。 项目地址:https://github.com/google-research/tensorflow-coder Google Colab 试用地址:...
  • low-code ...代码一键生成 生产代码一键清理 技术选型 springboot 容器 mybatis-plus+druid+mysql 数据库 vue+element-ui 页面 快速开始 需要 jdk 1.7+ maven 3.x+ mysql 5.7 配置调整 此处使用的是
  • 机器之心报道编辑:魔王、陈萍如何使编程更加便捷?最近,谷歌 TensorFlow 开源了一个帮助开发者写 TensorFlow 代码的程序合成工具 TF-Coder。项目地址:https...
  • 代码自动生成

    2018-05-16 16:40:30
    根据数据库表结构SQL脚本文件 ,自动生成JAVA代码. 如 ,相应的: JAVA实体、SQL语句、HTML标签和能生成测试数据的工具类.还额外增加了纯Map类型的SQL操作 , 因为JSON转Map是非常容易且不容易丢失数据的. 我们都知道,...
  • 作者|高嘉怡Evosuite简介EvoSuite是由Sheffield等大学联合开发的一种开源工具,用于自动生成测试用例集,生成的测试用例均符合Junit的标准,可直接在Junit中运行。通过使用此自动测试工具能够在保证代码覆盖率的前提...
  • SSH开源自动生成代码工具,可自动生成action、service、form、dao、model、vo、sqlmap.xml、.hbm.xml、test等 博客分类: java strutshibernatespringibatisoracle   本人只是将最流行的代码生成...
  • 要说开源精神,阿里估计在国内能够排在最前列。 近几年,阿里接二连三“搞事情”。根据阿里近期发布的《2018 年度代码报告》...最近阿里也没闲着,又发布了大家喜闻乐见的代码自动生成工具 imgcook。 imgco...
  • java代码自动生成UML-工具

    万次阅读 2017-06-22 14:41:21
    在网上找了很多,要不就是过期没有更新,新版本Eclipse无法兼容,要不就是收费,后来终于在开源组织找到了能用的 ...使用java编写的开源UML产品,功能比较全...最受欢迎的UML建模工具。  更多ArgoUML信息 
  • 第 2 步,安装主流的浏览器驱动这样,会将Chromeium、... 实战一下3-1 录制脚本我们先查看录制脚本的命令说明其中python -m playwright codegen 录制脚本--help 帮助文档-o生成自动化脚本的目录--target 脚本语言,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,005
精华内容 402
关键字:

代码自动生成工具开源