轶哥

📚 Having fun with AI Agent. Always learning.

AI谈编程语言(Rust、Go、TS、Python)
  •   更新:2023-05-12 00:22:56
  •   首发:2023-05-12 00:22:56
  •   互联网
  •   1990

在ChatGPT等AI大模型流行前2年,我的代码就已经有超过50%是AI辅助编程情况下完成的。之所以AI编程有那么大的占比,是因为我的开发基于低代码DSL,编程过程中存在很多“套路”,因此我的开发效率通常是同类型任务开发者的2-6倍(效率与具体工作内容密切相关)。

AItabnine.jpg

上图为2022年使用Tabnine辅助编程中,AI自动完成的代码占比情况。

由于ChatGPT对中文注释的理解能力更强,目前我已经由团队版Tabnine切换为Github免费提供给我使用的Github Copilot,效率只增不减。

现今AI辅助编程大行其道,我们再也不用纠结于专精某一门编程语言了。毕竟编程语言设计之初就是为了人类更好的和计算机沟通,如今很多事情可以在AI帮助下快速完成,在掌握主流算法和基础数据结构的基础上,我们可以自由选择对应场景所适合的编程语言,提高效率的同时最大化利用语言优势。

lang.png

截至目前(2023年5月12日),我所使用的主要编程语言占比情况如上图。

LanguageUsageChangeInThePastWeek.png

最新一周使用的编程语言如图,可以看到主要是Golang、Rust、JavaScript、C++,移除的代码主要是JAVA和PHP。近期主要在做任务管理相关的开发。

PercentageChangeInLanguageUsageMostRecentMonth.png

最近一个月各个编程语言的使用变化情况。近期主要在做Web开发(API开发),算法练习。

PercentageChangeInLanguageUsageMostRecentYear.png

最近一年各个编程语言的使用变化折线图。

包括自有统计数据以来每隔六个月统计的编程语言使用情况等数据,我均公开在yi-ge (Yige) (github.com)

目前来看,我本人近期使用较多的编程语言是TypeScirpt、Golang、Rust、Python。我就这几个编程语言擅长的应用场景询问了GPT4,以下是AI的回复。

rust适合做哪些事情?

Rust是一种高性能、安全和内存管理优越的系统编程语言,适合以下几种场景:

  1. 系统编程:操作系统开发、嵌入式系统、底层库等。
  2. Web后端:使用Actix-Web, Rocket等框架开发快速且安全的Web服务。
  3. WebAssembly:用于创建高效且安全的浏览器运行时代码。
  4. 并发与多线程:Rust的所有权系统有助于避免数据竞争等问题。
  5. 加密与区块链:构建安全、高效的加密应用程序和区块链平台。
  6. 游戏开发:通过Amethyst等游戏引擎进行高性能游戏开发。
  7. 网络编程:利用Tokio等异步库实现高性能、低延迟网络应用。
  8. 命令行工具:开发高效、可靠的命令行工具和脚本。
  9. 跨平台开发:支持多个操作系统和硬件架构的应用程序开发。

总之,Rust适合需要高性能、安全以及内存管理方面的优势的领域。

golang适合做哪些事情?

Golang(Go语言)是一种编译型、静态类型的编程语言,以简洁、高性能和高度支持并发等特点而闻名。Go适合以下场景:

  1. Web后端:使用Gin, Echo等框架开发高性能Web服务。
  2. 微服务:构建轻量级、可伸缩的微服务架构。
  3. 并发与多线程:Go协程 (goroutine) 和通道 (channel) 支持简单且高效的并发编程。
  4. 网络编程:实现高性能、低延迟网络应用,如代理服务器、负载均衡器等。
  5. 分布式系统:构建可扩展、分布式的计算和存储系统。
  6. 容器技术:例如Docker,使用Go编写的容器管理和虚拟化工具。
  7. 命令行工具:开发简易、快速的命令行工具和脚本。
  8. 数据管道和ETL:处理大数据集和构建数据转换管道。
  9. 云原生应用:支持Kubernetes等云原生应用开发。

总之,Golang适合需要轻量级、高性能、简洁代码以及高度并发的领域。

TypeScript适合做哪些事情?

TypeScript 是 JavaScript 的一个超集,为 JavaScript 提供了静态类型支持。它适用于以下场景:

  1. Web前端开发:结合React, Angular, Vue等流行的前端框架进行更强大、可维护的前端应用开发。
  2. Web后端开发:使用Node.js 和 Deno,结合Express, Koa, Fastify等框架进行后端服务开发。
  3. 跨平台桌面应用:利用Electron或Tauri等工具构建跨平台桌面应用程序。
  4. 跨平台移动应用:通过React Native, NativeScript 或 Ionic 等框架进行移动应用开发。
  5. 游戏开发:借助Phaser, Three.js等库进行2D和3D游戏开发。
  6. 编辑器插件和扩展:为Visual Studio Code等编辑器编写插件。
  7. 前端工程工具:构建前端工程化工具和脚手架,如Webpack插件、Gulp任务等。
  8. 云函数与Serverless:在AWS Lambda, Azure Functions等云平台上部署基于TypeScript的无服务器应用。

总之,TypeScript 主要适用于需要类型安全、高可维护性以及与现有 JavaScript 生态系统协同工作的场景。

Python适合做哪些事情?

Python 是一种通用、易学的编程语言,适用于多种场景:

  1. Web开发:使用Django, Flask, FastAPI等框架进行Web应用及API开发。
  2. 数据科学:借助Pandas, NumPy, SciPy等库进行数据分析与处理。
  3. 机器学习:通过TensorFlow, PyTorch, scikit-learn等库进行模型训练和预测。
  4. 自然语言处理:使用NLTK, spaCy, Gensim等库进行文本处理、分析及生成。
  5. 爬虫与网络爬取:利用BeautifulSoup, Scrapy等库获取网络数据。
  6. 桌面应用程序:结合Tkinter, PyQt, Kivy等库构建跨平台桌面应用。
  7. 游戏开发:借助Pygame, Panda3D等库进行2D和3D游戏开发。
  8. 脚本与自动化:编写各种实用脚本以简化日常任务和系统管理。
  9. 物联网(IoT):利用树莓派、Arduino等硬件平台开发智能设备。
  10. 云计算与DevOps:在AWS, Azure或Google Cloud等云服务上部署应用并进行自动化运维。

总之,Python是一种广泛应用的编程语言,适合从初学者到专业人士在多个领域中使用。

总结

以下是对TypeScript、Golang、Rust和Python擅长的应用场景的总结分析:

  1. TypeScript:
    • 强项:前端开发、类型安全、高可维护性
    • 场景:Web 前后端开发、跨平台桌面/移动应用、游戏开发、编辑器插件与扩展、前端工程化工具、云函数与Serverless
  2. Golang(Go):
    • 强项:简洁、高性能、高度并发
    • 场景:Web 后端开发、微服务、并发和多线程、网络编程、分布式系统、容器技术、命令行工具、数据管道与ETL、云原生应用
  3. Rust:
    • 强项:高性能、内存安全、底层系统开发
    • 场景:系统编程、Web后端、WebAssembly、并发与多线程、加密与区块链、游戏开发、网络编程、命令行工具、跨平台开发
  4. Python:
    • 强项:通用性、易学性、丰富的库和框架
    • 场景:Web 开发、数据科学、机器学习、自然语言处理、爬虫、游戏开发、脚本、物联网、云计算

在不同场景下选择最适宜的编程语言将有助于提升开发效率、降低风险,并充分利用AI技术带来的巨大潜力。

打赏
交流区

暂无内容

尚未登陆
发布
  上一篇 (小米音频眼镜与Bose音频眼镜实际体验)
下一篇 (Windows安装rsync命令一键脚本)  

评论回复提醒