PyCharm 2024.1 发布:全面升级,助力高效编程!

news2024/12/26 11:16:08

PyCharm 2024.1 发布:全面升级,助力高效编程!

文章目录

  • PyCharm 2024.1 发布:全面升级,助力高效编程!
      • 摘要
      • 引言
    • Hugging Face:模型和数据集的快速文档预览
    • 针对 JavaScript 和 TypeScript 的全行代码补全 PyCharm Professional
    • 编辑器中的粘性行
    • 编辑器内代码审查
    • 新终端 Beta
    • 新的 AI Assistant 功能 PyCharm Professional
      • 一键创建包含生成代码的文件
      • 生成架构感知型 SQL 查询
    • 用户体验
      • 用于缩小整个 IDE 的选项
    • 框架和技术 PyCharm Professional
      • 在 *Django Structure*(Django 结构)工具窗口中注册模型 admin 类
      • *Endpoints*(端点)工具窗口中对更大的 Flask 和 FastAPI 应用程序的支持
      • 增强了对 GitHub Action 的支持
      • HTTP 客户端改进
      • 优化的 JSON 架构处理
      • WireMock 服务器支持
    • 前端开发 PyCharm Professional
      • 适用于 Vue、Svelte 和 Astro 的组件用法
      • 针对 GraphQL 的改进
      • 针对 TypeScript 的快速文档改进
      • 针对 React 的新快速修复
    • 增强的 Terraform 支持 PyCharm Professional
    • 版本控制系统
      • *Git* 工具窗口中 CI 检查的状态
      • 从推送通知创建拉取/合并请求
      • *Git* 工具窗口 *History*(历史记录)标签页的分支筛选器
      • 其他改进
    • 数据库工具 PyCharm Professional
      • 简化的会话方式
      • 数据编辑器中的本地筛选
      • 单记录视图
      • 移动 CSV 文件中的列
      • 总结

在这里插入图片描述

摘要

PyCharm 2024.1 发布了,带来了针对 Hugging Face 模型和数据集的快速文档预览、为 JavaScript 和 TypeScript 提供的本地ML基于的全行代码补全、编辑器中的粘性行以及编辑器内代码审查等新特性。这一版本旨在通过增强的代码写作支持、更流畅的导航以及更紧密的版本控制集成,提升开发者的编程效率和体验。

引言

作为 JetBrains 旗下的一款专为 Python 开发者设计的集成开发环境,PyCharm 一直致力于提供高效、智能的编程体验。2024.1 版本不仅增强了对现代前端开发的支持,还通过引入新的工具和优化现有功能,进一步提升了用户的编程和协作效率。从机器学习到Web开发,再到数据库管理,PyCharm 2024.1 都带来了重要的更新,使其成为了一个更加强大和全面的开发工具。

适用于 Hugging Face 模型和数据集的文档预览、针对 JavaScript 和 TypeScript 的本地基于 ML 的全行代码补全、编辑器中的粘性行以及编辑器内代码审查

下载

Hugging Face:模型和数据集的快速文档预览

img

直接在 PyCharm 中获取有关您正在使用的任何 Hugging Face 模型或数据集的所有信息。 将鼠标悬停在数据集或模型名称上即可在弹出窗口中查看说明,或按 F1 在编辑器旁边打开 Documentation(文档)工具窗口。 要导航至 Hugging Face 网站上的文档,请使用 ⌘Click(Windows 和 Linux 上为 Ctrl+点击)。

针对 JavaScript 和 TypeScript 的全行代码补全 PyCharm Professional

img

PyCharm 2023.3 为 Python 代码带来了本地 ML 赋能的全行代码补全,在 2024.1 中,我们扩展了这些单行建议支持的语言范围。 现在,您还将收到针对 JavaScript、TypeScript 和前端框架的全行补全建议。 这些建议由使用当前文件的上下文并在本地运行的专属语言模型驱动,模型不会通过互联网发送代码。

编辑器中的粘性行

img

我们在编辑器中引入了粘性行,旨在简化大文件的处理和新代码库的探索。 滚动时,此功能会将类或方法的开头等关键结构元素固定到编辑器顶部。 这将使作用域始终保持在视野中,您可以点击固定的行快速浏览代码。

编辑器内代码审查

img

PyCharm 2024.1 为 GitHub 和 GitLab 用户引入了增强的代码审查体验。 新的审查模式与编辑器集成,促进作者与审查者直接互动。 在检查拉取/合并请求分支时,审查模式会自动激活,并在装订区域中显示紫色标记,表明代码更改可供审查。 点击这些标记会弹出一个显示原始代码的弹出窗口,这样您就能快速识别哪些代码已被更改。 装订区域图标可以帮助您迅速发起新讨论,以及查看和隐藏现有讨论。 这些图标还可以让用户访问评论,从而轻松查看、回复和作出反应。 在我们的博文中详细了解此新功能。

新终端 Beta

img

PyCharm 2024.1 重做了终端,包含可视化和功能改进,旨在简化命令行任务。 新终端提供了高级功能,例如便捷的命令导航、提示与输出键盘快捷键切换、命令补全,以及命令历史记录的快速访问。 在此阶段,您的反馈至关重要,我们希望您进行尝试并分享您的想法。 在这篇博文中了解详情。

新的 AI Assistant 功能 PyCharm Professional

img

一键创建包含生成代码的文件

这项新的 AI Assistant 功能将加快从试验查询到实现实际代码的速度。 现在,JetBrains AI Assistant 生成的每个代码段顶部都会出现一个新的 Create a file(创建文件)按钮。 点击该按钮后,PyCharm 会自动以正确扩展名创建文件并填入代码。

img

生成架构感知型 SQL 查询

借助 AI Assistant,您不仅可以获得查询响应的架构感知型解释,还可以通过数据库上下文提供的上下文快速生成查询,并在数据库内执行智能搜索。

用户体验

img

用于缩小整个 IDE 的选项

您现在可以将 IDE 缩小到 90%、80% 或 70%,从而可以灵活地调整 IDE 元素的大小。

框架和技术 PyCharm Professional

img

Django Structure(Django 结构)工具窗口中注册模型 admin 类

在 PyCharm 2024.1 中,您可以快速检查未注册的 admin 类,并在 Django Structure(Django 结构)工具窗口中一键注册。

img

Endpoints(端点)工具窗口中对更大的 Flask 和 FastAPI 应用程序的支持

在 PyCharm 2024.1 中开发更大的 Flask 或 FastAPI 应用程序时,您可以查看 Endpoints(端点)工具窗口,清楚了解现有端点及其层次结构,并快速从端点导航到其在项目中的声明 。 使用 Flask 构建的较大应用程序,特别是使用 FastAPI 构建的应用程序,通常具有围绕更精细模块(Flask 中的蓝图和 FastAPI 中的路由器)构建的复杂层次结构。 为了让您清楚了解此类结构并帮助您更快理解其继承,PyCharm 现在按应用将端点分组。 此外,PyCharm 现在能够检测库中声明的端点,以及每个路径的多个端点和不同 HTTP 方法的端点。

img

增强了对 GitHub Action 的支持

PyCharm 2024.1 带来了增强的 GitHub Actions 支持,帮助您优化 CI/CD 工作流。 代码补全现在涵盖多种相关上下文,包括 github.*env.*steps.*inputs.*,有助于简化脚本创建,并减少在针对特定上下文的语法搜索上花费的时间。 YAML 结构的自动补全可以确保工作流无错误,而新的品牌功能则可以让您的操作在 GitHub Marketplace 上呈现独特外观。 Docker 镜像补全可以简化容器集成,JavaScript 文件路径补全让您可以轻松配置 JavaScript 操作,简化工作流。 您可以在这篇博文中找到更多详细信息。

img

HTTP 客户端改进

PyCharm 2024.1 中的 HTTP 客户端提供了更多身份验证选项,包括 PKCE(密钥代码交换证明)授权代码和 OAuth 2.0 设备授权授予流程。 除了在 PKCE 请求期间自动处理用于令牌检索的 code_challenge 生成和 code_verifier 传递之外,它还支持令牌和身份验证请求的额外参数。 HTTP 客户端升级为 Netty 的底层网络库实现了 SSL、代理和 HTTP/2 支持,有助于促进 HTTP/2 的实现。

img

优化的 JSON 架构处理

我们优化了 JSON 架构验证和补全背后的代码。 因此,PyCharm 现在可以更快处理 JSON 架构并减少内存消耗。 在使用 Azure Pipelines 的现实文件中,架构检查速度现在提高了 10 倍。

PreviousNext

WireMock 服务器支持

我们通过插件实现了 WireMock 支持,您可以从 IDE 内部安装或从 JetBrains Marketplace 获取。 此集成包括适用于 JSON 配置的架构补全、从 Endpoints(端点)工具窗口生成 WireMock 存根文件的功能,以及允许直接从编辑器启动服务器的内置运行配置。 新增内容可让您快速创建测试数据服务器或存根,简化 Web UI 和微服务的开发。

前端开发 PyCharm Professional

img

适用于 Vue、Svelte 和 Astro 的组件用法

PyCharm 现在会在 Vue、Svelte 和 Astro 文件的编辑器内提示中列出组件用法。 这将帮助您快速找到项目中任意位置特定组件的用法

针对 GraphQL 的改进

在我们的 GraphQL 插件中,我们优化了索引编制性能并扩展了对处理 node_modules 和外部库中架构的支持。

img

针对 TypeScript 的快速文档改进

快速文档弹出窗口现在会显示接口成员、枚举常量和类型别名主体。 点击 Show more(展开)链接可查看完整列表并导航到引用的类型。 您可以使用对话框顶部的分页控件在接口、类型别名、枚举、函数和其他实体的多个声明之间导航。

img

针对 React 的新快速修复

PyCharm 2024.1 为 React 新引入了多个快速修复,可供动态创建 props 和状态。 您可以使用快捷键 ⌥Enter(Windows/Linux 为 Alt+Enter)应用这些快速修复。

增强的 Terraform 支持 PyCharm Professional

img

PyCharm 2024.1 带来了改进的 Terraform 支持,有助于简化创建、管理和扩缩基础架构的流程。 现在,IDE 通过明确建议运行 terraform init 来简化初始化,并为超过 3,900 个第三方 Terraform 提供程序提供了扩展的代码补全功能。 此外,IDE 还引入了对 Terraform 模板语言 (tftpl) 的支持,实现动态模板,可以与您的首选编程语言无缝集成。 您可以在我们的博文中找到更多详细信息。

版本控制系统

img

Git 工具窗口中 CI 检查的状态

我们在 Git 工具窗口的 Log(日志)标签页中引入了一个新列,使您可以轻松审查 CI 系统执行的 GitHub 提交检查的结果。

img

从推送通知创建拉取/合并请求

成功将更改推送到版本控制系统后,PyCharm 现在将发布通知,提醒您已成功推送并建议创建拉取/合并请求的操作。

img

Git 工具窗口 History(历史记录)标签页的分支筛选器

我们改进了 Git 工具窗口中文件历史记录的用户体验。 首先,Show all branches(显示所有分支)按钮已被替换为分支筛选器,允许您审查对指定分支内的文件所做的更改。 我们还调整了工具栏的方向,将其水平放置以提高实用性。

其他改进

  • 对于 GitHub 和 GitLab,您现在可以选择在 Git 工具窗口内的独立 Log(日志)标签页中查看给定分支的更改。
  • 现在,您可以从一组表情符号中进行选择,对代码审查评论添加回应。
  • 为了帮助您避免由于文件过大而导致版本控制拒绝,IDE 现在包含预提交检查,防止您提交此类文件并通知您该限制。
  • Merge into(合并到)对话框现在有一个 Allow unrelated histories(允许不相关的历史记录)选项,可以合并没有共同历史记录的两个分支。
  • 现在,您可以在 Commit(提交)工具窗口的专属 Stash(隐藏)标签页中查看存储的更改。 如果您同时使用隐藏和搁置,则可以启用组合的 Stashes and Shelves(隐藏和搁置)标签页。
  • 为了帮助您专注于有意义的更改,差异查看器现在可以从比较中排除文件夹和文件。 右键点击所需文件或文件夹,然后选择 Exclude from results(从结果中排除)。
  • Branches(分支)弹出窗口中,您现在可以按操作和仓库筛选搜索结果。
  • Rebase(变基)对话框现在具有 --update-refs 选项,可以确保 Git 仓库的历史记录反映变基期间的修改。
  • Search Everywhere(随处搜索)默认不再显示 Git 标签页。 您可以在 Settings/Preferences | Advanced Settings | Version Control. Git(设置/偏好设置 | 高级设置 | 版本控制. Git)中添加该标签页。

数据库工具 PyCharm Professional

简化的会话方式

我们重新构想了会话的运作方式,旨在简化您管理数据源连接和执行查询的体验。 现在,对于附加文件或运行函数等任务,您只需选择必要的数据源或执行上下文,无需选择正确的会话。 此外,Services(服务)工具窗口中的专属操作可以在同一数据源内快速切换会话。 这些更改旨在使您的工作流更加顺畅直观。

img

数据编辑器中的本地筛选

现在,您可以直接在当前页面上按列值快速筛选行,无需等待查询运行。 这种本地方式仅适用于可见页面,但如果需要扩大作用域,您可以更改页面大小或提取所有数据。 要禁用当前数据编辑器中的所有本地筛选器,只需切换 Enable Local Filter(启用本地筛选器)图标
img

单记录视图

现在,您可以在数据编辑器中关注单个记录。 要打开记录视图,请在 macOS 上使用 ⌘⇧Enter(在 Windows/Linux 上为 Ctrl+Shift+Enter)快捷键或工具栏上的 Show Record View(显示记录视图)按钮。 记录视图将在包含值编辑器和聚合视图的侧面板中打开。 如果记录视图中的单元在主网格中可编辑,则它们也将可编辑。

img

移动 CSV 文件中的列

从 2024.1 开始,您可以在适用于 CSV 文件的数据编辑器中移动列,并且更改将应用到文件本身。

总结

PyCharm 2024.1 版本凭借其全面的新特性和改进,再次证明了其作为Python开发者首选IDE的地位。无论是通过快速访问Hugging Face文档、扩展全行代码补全支持范围,还是引入编辑器中的粘性行和内置代码审查功能,每一项更新都旨在提高开发效率和改善用户体验。此外,新版PyCharm对前端开发、数据库工具以及版本控制系统的增强,都将帮助开发者更轻松地管理复杂的项目。JetBrains通过不断听取社区的反馈,并积极引入创新技术,确保PyCharm能够满足现代开发者的各种需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1597446.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于有序抖动块截断编码的水印嵌入和提取算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 噪声测试 旋转测试 压缩测试 2.算法运行软件版本 matlab2022a 3.部分核心程序 ............................................................…

基于深度学习网络的鞋子种类识别matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 load gnet.mat % 使用训练好的网络对验证数据进行分类预测 [Predicted_Label, Probability] c…

基于Canvas实现的简历编辑器

基于Canvas实现的简历编辑器 大概一个月前,我发现社区老是给我推荐Canvas相关的内容,比如很多 小游戏、流程图编辑器、图片编辑器 等等各种各样的项目,不知道是不是因为我某一天点击了相关内容触发了推荐机制,还是因为现在Canvas…

开源模型应用落地-chatglm3-6b-批量推理-入门篇(四)

一、前言 刚开始接触AI时,您可能会感到困惑,因为面对众多开源模型的选择,不知道应该选择哪个模型,也不知道如何调用最基本的模型。但是不用担心,我将陪伴您一起逐步入门,解决这些问题。 在信息时代&#xf…

python将pdf转为docx

如何使用python实现将pdf文件转为docx文件 1.首先要安装pdf2docx库 pip install pdf2docx2.实现转换 from pdf2docx import Converterdef convert_pdf_to_docx(input_pdf, output_docx):# 创建一个PDF转换器对象pdf_converter Converter(input_pdf)# 将PDF转换为docx文件pdf…

解读MongoDB官方文档获取mongo7.0版本的安装步骤与基本使用

mongo式一款NOSQL数据库,用于存储非结构化数据,mongo是一种用于存储json的数据数据,可以通过mongo提供的命令解析json获取想要的值。 数据模型 了解关系数据库会很熟悉database,table,row,column的概念,分别是数据库&#xff0c…

leetcode代码记录(Z 字形变换

目录 1. 题目:2. 我的代码:小结: 1. 题目: 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:…

开源模型应用落地-chatglm3-6b-gradio-入门篇(七)

一、前言 早前的文章,我们都是通过输入命令的方式来使用Chatglm3-6b模型。现在,我们可以通过使用gradio,通过一个界面与模型进行交互。这样做可以减少重复加载模型和修改代码的麻烦, 让我们更方便地体验模型的效果。 二、术语 2.…

使用 Fetch API 执行 GraphQL 查询和变体

GraphQL 简介 GraphQL 是从远程服务器查询数据的强大工具,也是我构建 API 的首选方式。对一些人来说,学习它可能有一定难度,因为教程通常使用 Apollo 或 Relay 等工具进行编写。 这些工具很不错,但通常更适用于复杂项目。在某些…

Python基于Django的微博热搜、微博舆论可视化系统

博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇&#x1f3…

【TEE论文】IceClave: A Trusted Execution Environment for In-Storage Computing

摘要 使用现代固态硬盘(SSD)的存储中计算使开发人员能够将程序从主机转移到SSD上。这被证明是缓解I/O瓶颈的有效方法。为了促进存储中计算,已经提出了许多框架。然而,其中很少有框架将存储中的安全性作为首要任务。具体而言&…

WPS二次开发系列:WPS SDk功能就概览

作者持续关注WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(QQ:250325397) 作者通过深度测试使用了WPS SDK提供的Demo&#xff0…

比特币突然暴跌

作者:秦晋 周末愉快。 今天给大家分享两则比特币新闻,也是两个数据。一则是因为中东地缘政治升温,传统资本市场的风险情绪蔓延至加密市场,引发加密市场暴跌。比特币跌至66000美元下方。杠杆清算金额高达8.5亿美元。 二则是&#x…

代码随想录Day41:动态规划Part3

Leetcode 343. 整数拆分 讲解前: 毫无头绪 讲解后: 这道题的动态思路一开始很不容易想出来,虽然dp数组的定义如果知道是动态规划的话估摸着可以想出来那就是很straight forward dp定义:一维数组dp[i], i 代表整数的值&#xf…

蓝桥杯 — — 纯质数

纯质数 题目: 思路: 一个最简单的思路就是枚举出所有的质数,然后再判断这个质数是否是一个纯质数。 枚举出所有的质数: 可以使用常规的暴力求解法,其时间复杂度为( O ( N N ) O(N\sqrt{N}) O(NN ​)&…

(十)C++自制植物大战僵尸游戏设置功能实现

植物大战僵尸游戏开发教程专栏地址http://t.csdnimg.cn/m0EtD 游戏设置 游戏设置功能是一个允许玩家根据个人喜好和设备性能来调整游戏各项参数的重要工具。游戏设置功能是为了让玩家能够根据自己的需求和设备性能来调整游戏,以获得最佳的游戏体验。不同的游戏和平…

相机系列——透视投影:针孔相机模型

作者:木一 引言 上文我们提到,三维相机是对真实世界成像的模拟,为了让三维物体在计算机屏幕上呈现出来的图像符合人眼观察效果,通常采用透视投影方式模拟相机成像,为了简化计算,可以用针孔相机模型来描述…

设计模式——观察者模式17

观察者模式指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式。 中介者模式是N对N的双向关系。观察者模式是1对N的单向关系。 设计模式,一定要敲代码…

STC89C52学习笔记(十三)

STC89C52学习笔记(十三) 综述:本文讲述了红外调控的原理和通信以及外部中断相关知识。 一、红外调控 1、定义 红外遥控是利用红光进行通信的设备。 2、特点 ①由红LED将调制后的信号发出,由专门的红外接收头进行解调输出。 …

​​​​网络编程探索系列之——广播原理剖析

hello !大家好呀! 欢迎大家来到我的网络编程系列之广播原理剖析,在这篇文章中, 你将会学习到如何在网络编程中利用广播来与局域网内加入某个特定广播组的主机! 希望这篇文章能对你有所帮助,大家要是觉得我写…