• AI来实现代码转换!Python转Java,Java转Go不在话下?


    今天看到个有趣的网站,给大家分享一下。

    该网站的功能很神奇,可以实现编程语言的转化。感觉在一些场景之下还是有点作用的,比如你原来跟我一样是做Java的,因为工作需要突然转Go。这个时候用你Java的经验 + 这个工具,或许可以起到一定的帮助作用。

    工具的使用也很简单,只需要在左侧黏贴你想转换的原始代码,然后点击CONVERT CODE,右侧输入框就会转换成目标代码:

    像下面这样更加复杂的代码转换也是不在话下:

    const fs = require('fs');
     const AWS = require('aws-sdk');
     
     const s3 = new AWS.S3({
         accessKeyId: process.env.AWS_ACCESS_KEY,
         secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY
     });
     
     const fileName = 'contacts.csv';
     
     const uploadFile = () => {
       fs.readFile(fileName, (err, data) => {
           if (err) throw err;
           const params = {
               Bucket: 'testBucket', // pass your bucket name
               Key: 'contacts.csv', // file will be saved as testBucket/contacts.csv
               Body: JSON.stringify(data, null, 2)
           };
           s3.upload(params, function(s3Err, data) {
               if (s3Err) throw s3Err
           });
       });
     };
     
     uploadFile();
    

    可以看到其中还包含了aws的内容,居然也能顺利的转成Java

    import java.io.File;
    import java.io.IOException;
    import java.util.Scanner;
    
    import com.amazonaws.AmazonServiceException;
    import com.amazonaws.SdkClientException;
    import com.amazonaws.auth.profile.ProfileCredentialsProvider;
    import com.amazonaws.services.s3.AmazonS3;
    import com.amazonaws.services.s3.AmazonS3ClientBuilder;
    import com.amazonaws.services.s3.model.ObjectMetadata;
    import com.amazonaws.services.s3.model.PutObjectRequest;
    
    public class UploadObject {
    
        public static void main(String[] args) throws IOException {
            String clientRegion = "*** Client region ***";
            String bucketName = "*** Bucket name ***";
            String stringObjKeyName = "*** String object key name ***";
            String fileObjKeyName = "*** File object key name ***";
            String fileName = "*** Path to file to upload ***";
    
            try {
                AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
                        .withRegion(clientRegion)
                        .withCredentials(new ProfileCredentialsProvider())
                        .build();
    
                // Upload a text string as a new object.
                s3Client.putObject(bucketName, stringObjKeyName, "Uploaded String Object");
    
                // Upload a file as a new object with ContentType and title specified.
                PutObjectRequest request = new PutObjectRequest(bucketName, fileObjKeyName, new File(fileName));
                ObjectMetadata metadata = new ObjectMetadata();
                metadata.setContentType("plain/text");
                metadata.addUserMetadata("x-amz-meta-title", "someTitle");
                request.setMetadata(metadata);
                s3Client.putObject(request);
            }
            catch(AmazonServiceException e) {
                // The call was transmitted successfully, but Amazon S3 couldn't process 
                // it, so it returned an error response.
                e.printStackTrace();
            }
            catch(SdkClientException e) {
                // Amazon S3 couldn't be contacted for a response, or the client
                // couldn't parse the response from Amazon S3.
                e.printStackTrace();
            }
        }
    }
    

    根据官方说明,该工具也是通过AI实现的,是不是很神奇呢?这个到底是怎么实现的呢?有了解的小伙伴留言区一起探讨下吧!

    欢迎关注我的公众号:程序猿DD。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源

  • 相关阅读:
    MySQL知识总结 (一) 数据类型
    【21天学习挑战赛】图像的旋转问题(二维数组)
    IDEA 2023.2.2 使用 Scala 编译报错 No scalac found to compile scala sources
    安卓终端神器Termux (后面还有Termux常用的快捷键,妥妥干货分享,记得点赞收藏哦!)
    硬件工程师成长之路(10.1)——芯片选型
    四川眼科医院孙丰源教授团队为患者拔除1.4cm长“眼中钉”
    Flume环境搭建
    【智慧排水】排水管网水位怎么监测
    菜鸟学Kubernetes(K8s)系列——(番外)安装Ingress-Nginx(工作原理)
    卡特兰数、真二叉树、出栈序列、n对括号合法表达式
  • 原文地址:https://www.cnblogs.com/didispace/p/17208827.html