Blog Blog 博客 博客
主页

简体中文

  • Français
  • 日本語
  • 한국어
  • 简体中文

关注 JetBrains

  • Français
  • 日本語
  • 한국어
  • 简体中文
主页/

近期发表

网络研讨会视频:我是如何使用 PyCharm 阅读项目源码的

写代码也好一段时间了,总觉得自己遇到瓶颈吗?曾听过资深开发者说,阅读优秀项目的源码是提高水平的方法吗?但若没有阅读技巧且缺少工具辅助,阅读源码肯定是件苦差事。本次网路研讨会邀请到 Podcast 捕蛇者说 主播小白跟大家分享如何使用 PyCharm 做为源码阅读工具,以及他自己阅读项目源码的技巧。 (本视频已同步发表于 BiliBili) 主題分享 小白从 18 年开始接触 Python 至今约 2 年的时间,目前在大学导师的车联网公司工作,主要负责数据监控平台的搭建,后端使用 Python 及 Django 框架。小白提到其本科是机械而非计算机专业,因此初学编程时都是靠死记硬背,学习顺序也很混乱,加上网上许多教程质量不高,让他在学习过程中走了很多不必要的弯路,在学完基础后就遇到瓶颈。为了强化自己的知识,他以阅读知名项目的源码做为学习工具,从中了解别人是如何构思项目代码的。 不过阅读源码并不轻松,不仅文件多、代码行数也多,阅读起来很吃力。PyCharm 一直以来都是小白习惯使用的编程工具,安装好后默认配置可符合 Python 开发者的需求,可以省下手动配置的时间。小白首先分享他在使用 PyCharm 的前置设置,包括系统设置里的行为、字体及字体大小、针对 Python 代码语法高亮的调整,让 PyCharm 的动作更符合自己的偏好。接着小白再介绍了他在使用 PyCharm 阅读
December 16, 2020 由 范圣佑

团队导入 DevOps 的第一步:以 TeamCity 搭建 CI/CD 工作流

传统的软件组织因为将开发、IT 运营和质量保障独立在不同的部门,往往造成三个部门的各自运作,当发生错误时常彼此怪罪,不利解决问题。而现代的软件开发迭代神速,这种传统的工作方式不再符合潮流,导入精实开发、敏捷及 DevOps 等观念,将有助于团队面对日新月异的市场,拥抱变化以符合用户需求成为最重要的目标。 为团队导入 DevOps 的第一步,除了在开发过程中撰写测试外,为团队搭建如 TeamCity 这种持续集成及持续部署服务器可说是最简单也是帮助最大的一步 。假如您还不清楚什么是持续集成、什么是持续部署?这边简单解释下: 简介持续集成(CI)与持续部署(CD) 在软件开发的过程中,需要随时确认成品是否符合需求、代码没有 Bug,所以我们会导入测试框架,甚至采用 TDD 的工作流来开发。而为了确保代码品质,团队领导往往需要品质保证(Quality Assurance)工具定期产出报表,从指标了解开发现况。在每一次发布版本前,也需要运行构建、部署、验证等工作。从以上这几点就可以知道,一个完整的软件开发流程,从写代码到部署上云,有不少工作要做,而这些工作往往是固定的、重复的、花人工及时间的、需要持续运行的。 假如这些工作都可以外包出去自动做是不是很棒?持续集成(Continuous Integration)及持续部署(Continuous Delivery)的概念就是在这样的上下文底下
November 10, 2020 由 范圣佑

网络研讨会视频:Flutter x Ktor 打造跨平台全端应用

跨平台一直是大家追求的梦想。对开发者来说,只要维护一个 Code Base 就能部署至多个平台可以省下不少工作时间;对企业来说,可以更快速交付产品、验证市场。本次网络研讨会运用两种跨平台技术:Flutter 及 Ktor,Flutter 在移动端有着一致的 UI 表现,Ktor 编译后可以在跨平台的服务器上运行,由两位讲师为大家演示如何串起两种技术,从前端到后端打造跨平台全端应用。 (本次视频已同步发表至 B 站) 主題分享 本次分享由滴滴出门 Flutter 工程师鑫磊及 JetBrains 技术布道师圣佑两人合力完成一个日记应用,由鑫磊以 Flutter 实作 Mobile App、再串接由圣佑以 Ktor 实作的 Backend API。实作的部份由鑫磊的前端开始,鑫磊首先简介 Flutter 技术的概念及现况,并在 Android Studio 上创建一个全新的项目,以 Flutter Widget 逐步完成两个 App 页面,包括日记列表页(空的状态及有日记的状态)及日记编辑页。在 Flutter Hot Reload 的帮助下,鑫磊只花了约 20 分钟就创建了一个暗色主题、可以编辑/储存/浏览日记的 Flutter App。 接着就由圣佑接手介绍 Ktor。Ktor 是由 JetBrains 团队以 100% Kotlin 打造的 Web 框架,提供了 Server
October 23, 2020 由 范圣佑

您的代码为您带来的1024福利!

您敲出的代码现在有机会为自己赢得 JetBrains 授权! 2020 终于要过去了,不如在 10 月 24 日程序员节即将到来的时候这,随意敲下几行代码,赢取 JetBrains All Products Pack 免费授权吧! 现在,只需像图中这样,简单地写下几行代码(如图以三行 Kotlin 代码为例),完成后转发并关注 @JetBrains中国 官方抽奖微博,我们将会从中抽取 5 位参与的选手送出 JetBrains All Products Pack 1年期个人版免费授权!立即行动吧! 如何让自己的代码漂亮地与众不同呢? 生成代码图片的利器:carbon-now-sh 插件 身为一位乐于分享的程序员,时常需要在网上分享代码。但直接将代码以文字贴上,不论在排版、上色都很难达到我们对于审美的要求。但是用制图软件绘制背景、排版文字后再手动上色也太苦逼,有没有什么简单速成的工具可以立即套用呢? 有的,这个一个名为 Carbon 的美化工具可以轻松地生成,快速产生像下方这种代码图片: Carbon 是一个线上生成代码图片的服务,可将展示代码导入,定制语法主题、背景颜色、窗口主题,并导出成图片。接着,我们就可以将这张图片上传至微博、微信等平台分享,瞬间让您的代码变得赏心悦目,质感硬是升级了好几个档次。 不过,Carbon 毕竟是一个线上生图的服务,编辑代码的环境还是无法跟 ID
October 22, 2020 由 Lei

网络研讨会:我是如何使用 PyCharm 阅读项目源码的

您或许会听到资深开发者说,阅读优秀项目的源码是提高自己水平的不二选择。不过,阅读源码不是件轻松的事,不仅文件多、代码行数也多,在没有工具辅助之下,阅读起来肯定很吃力。在阅读项目源码时,有没有什么好的工具或是技巧,可以让我们更高效的在代码间导航、提供能增进理解的信息? 本次 JetBrains 网络研讨会将于 10/22(四)21:00 举办,邀请到 Podcast 捕蛇者说主播小白跟大家分享使用 PyCharm 阅读项目源码的技巧。小白提到自己新手时期因为在项目经验和编码规范等方面相对来说比较匮乏。尽管看了很多文档类的东西但实际编程还是会写出一些个人“方言”。因此,他时常阅读一些知名且成熟的开源项目源码,并且尽可能的在阅读源码之后自己重新写一遍(大多数情况仅针对某一个模块)来加深记忆,从中学习并精进自己的技巧。 这次的分享里,小白会以知名 Python HTTP 库 Requests 中的部分源码为例,向大家介绍平时使用 PyCharm 阅读项目源码的技巧,包括如何查找想看的类、追踪调用函数、将一个模块下的全局变量列出等,让 PyCharm 成为阅读源码的最佳辅助。听完这场分享后,您将同时学习到阅读源码及 PyCharm 操作的技巧,成为更专业的开发者。 本次活动将以 Zoom 会议室直播,演示内容全程录影,并在会后上传视频供回放,相关材料也会发送至与会者邮箱。欢迎对 Pytho
October 13, 2020 由 范圣佑

网络研讨会:Flutter x Ktor 打造跨平台全端应用

跨平台的主题一直都很火!身为开发者,无不追求「一次编写,到处运行」的目标。以当红技术来看,Flutter 在移动端有着一致的 UI 表现,只要一个 Code Base 就能写出 iOS 及 Android 平台的 App。而 Kotlin 在服务器端通过与 JVM 相容,搭配 JetBrains 官方亲自打造的 Ktor 框架、简洁的代码,同样一次编写就能在多个平台运行。 若我们把这两个技术串起来,打造一个跨平台的全端应用不知是什么样的光景? 就来实验一下用 Flutter 加上 Ktor 打造跨平台全端应用的感觉吧!在 9/24 (四) 21:00-22:00 邀请到来自 flutter.cn 社区的鑫磊与圣佑一起进行线上技术分享。在这场分享里,鑫磊将会带着大家用 Flutter 编写一个日记的 App,而圣佑则用 Ktor 实现一个后端 API,让大家可以亲眼看到从前端到后端的整体开发流程。听完这场分享后,您将对全端开发有一个基本的概念,并学会使用 Flutter 实作 UI、管理状态、发送 HTTP Request,以及用 Kotlin 打造 Web API、集合 Exposed SQL 库串接资料库。打造跨平台应用更高效! 本次研讨会将以腾讯会议直播,演示内容全程录影,并在会后公布视频,相关材料也会发送至与会者邮箱,请预先报名以取得会议室链接。 立即注册参加 嘉宾简介 范
September 9, 2020 由 范圣佑

网络研讨会视频:快速上手,使用 Kotlin 把支付宝小程序装进自己的 App

写一个 Android App 或许不难,但企业对于移动应用的要求愈来愈高,不只要求开发速度、稳定度、质量等,甚至希望能具备动态扩展的架构设计、在 App 中自启动小程序。面向这些需求,若是有好的开发工具及平台的支持,将可以大大降低开发及运维的成本。本次网络研讨会特别邀请到支付宝高级无线开发工程师温盛章为大家演示用 Kotlin 开发移动应用,并集成 mPaaS 让 App 具备小程序能力。 (本次视频已同步发表至 B 站) 主題分享 本次分享共有三个关键字: Kotlin 、 小程序 、 mPaaS 。温盛章首先从用户、开发、技术、平台等四大视角,向大家说明小程序是什么?简单来说,小程序就是一种拥有完整生命周期、应用间相互隔离、独立运行于宿主应用内的应用。而小程序从工作型 App、平台型 App、超级 App 到新阶段一路的演化历程,目前已经可以有接近 Native 的体验和顺畅、也可以有 H5 的快捷发布的优势。 对小程序有概念后,温盛章就以 Android Studio 演示如何在一个 Mobile App 里,以 Kotlin 撰写 Mobile App 的代码,并接上 mPaaS 平台,让 App 有自启动小程序的能力。要接入 mPaaS,首先需在 Android Studio 里安装 mPaaS 插件,并到阿里云的 mPaaS 后台创建一个新建用。接着,在 Andro
August 27, 2020 由 范圣佑

网络研讨会视频:重构还是重写?聊聊 Java 代码臭味与重构技巧

在重构一书里,将有问题的代码称作代码臭味(Code Smells,有些翻译成”代码异味”、”代码坏味道”),表示这份代码可能有设计上的问题、或是因为写得太凌乱而难以维护。总得来说,这份代码需要通过重构来改善。这样的场景往往是许多开发者的每日工作,因此,判定一位开发者的等级,往往就是看他的重构技巧是否熟练。本次网路研讨会特别邀请到 Odd-e 敏捷教练张博超(Jackson)为大家演示如何用 IntelliJ IDEA 的重构功能来改善 Java 代码臭味。 (本次视频已同步发表至 B 站) 主題分享 在本次的分享里,张博超先用一个日常工作的场景给大家举了个例子:我们在工作前可能会先收拾一下桌子、重启电脑、提前打开软件、在昨天写的代码上加注释,这些动作代表很多情况下,人会有直觉去做改善措施,这些改善措施的背后都会对应一个需要解决的问题。写代码也是类似的,每当我们说要改善代码前,需要先想清楚这个改善的目标是什么?是要解决什么问题?同时,我们也要思考这个改善的作法是不是能真正的解决问题? 为了让大家具体体现重构的过程,张博超以一个计算预算的代码为例子,实际以 IntelliJ IDEA 演示该怎么综合运用提取变量、提取方法、提取类、引入参数对象、修改构造函数等重构功能安全地修改代码,将一个原本高达 30 行、充满原始类型迷恋(Primitives Obsession)、过分亲密(In
August 13, 2020 由 范圣佑

给 IntelliJ IDEA 新用户的插件指南

程序员在写代码时往往追求”性能”,这性能可以分为两种:一种是代码运行时的性能好坏、一种则是程序员写代码时的速度及品质,换言之就是生产力的体现。而 IntelliJ IDEA 最为人所喜好的,就是在开发生产力上的提升。除了默认集成的特性外,JetBrains 的插件市场(Plugin Marketplace)上也提供了许多由官方或第三方开发者制作的插件,可以依不同需求场景扩充 IntelliJ IDEA 的功能。 在这篇文章里,我以几个常见的需求及场景做分类,介绍数个可以增强 IntelliJ IDEA 的插件(这些插件也可以适用在其他 JetBrains IDE 里),不仅能让您的 IntelliJ IDEA 看起来更舒服,还能将工作效率与产能提升一个档次。 布置您的 IntelliJ IDEA 程序员需要长时间盯着屏幕写代码,长期下来可能会对视力造成很大的伤害。因此,选择一个”顺眼”的 IDE 主题对程序员来说,不仅可以保护眼睛,也能让工作时心情更为舒服。通过 Control + backtick 就可以调用切换菜单,选择 5. Theme 后指定喜欢的主题即可。除了 IDE 主题外,代码配色也很重要。一样通过 Control + backtick 就可以调用切换菜单,选择 1. Editor Color Scheme 后指定喜欢的代码配色即可。 我个人目前最爱的是 JetBr
August 12, 2020 由 范圣佑

网络研讨会:快速上手,使用 Kotlin 把支付宝小程序装进自己的 App

写一个 Android App 难么?对一个有经验的安卓开发者来说不难。但若要实现一个超级 App,具备动态扩展的架构设计,甚至能够在 App 中自启动小程序,换言之就是要“复制”一个具备支付宝能力的 App,难么?何止难,是难上加难! 本次由 JetBrains 主办的 Kotlin 线上技术沙龙与蚂蚁集团合作,邀请到支付宝高级无线开发工程师温盛章为大家分享如何使用 Kotlin,将 mPaaS 能力装进自己的 App 里。 mPaaS 是由蚂蚁集团为 App 开发、测试、运营及运维提供云到端的一站式解决方案,能有效降低技术门槛、减少研发成本、提升开发效率,协助企业快速搭建稳定高质量的移动应用。在这场分享里,温盛章将会全程以 Kotlin 撰写代码,并实操演示在自有 App 中启动小程序。 听完这场分享,您不仅能学习到用 Kotlin 开发的 App 如何快速接入 mPaaS,同时,我们将带您了解 mPaaS 小程序如何帮助您实现“代码仅需撰写一次,便可多端投放”,从而深度提升研发效率。 本次网络研讨会将于 8/14 (五) 15:00 举办,演示内容将以 Zoom 会议室直播并全程录影,后制完成后会上传至 B 站供回放,相关材料也会发送至与会者邮箱,请预先报名以取得详细信息通知。 立即注册参加 嘉宾简介 温盛章 - 高级无线开发工程师 @支付宝 温盛章负责支付宝 Andro
August 3, 2020 由 范圣佑

IntelliJ IDEA 在 2020.1.3 版本右键失效的问题处置方式

近期我们接到用户反馈,在 JetBrains IDE 的 2020.1 版本更新并安装语言插件后,发生在 IDE 内右键功能失效,导致菜单无法显示的问题。在技术团队推出更新前,我们以这篇文章分享让 IDE 恢复正常的方法。 用户 Bug 反馈 在 2020 年 7 月 8 日发布 2020.1 系列更新后,macOS 上若同时安装语言插件(包括简体中文),则在编辑器内操作时,会发生点击右键无法显示上下文菜单的 Bug。 技术团队的更新计划 技术支持团队通过 idea.log 已定址出问题发生的原因,相关的 Bug 回报可参考 这个 Issue。 目前技术团队已于 2020.2 Beta 版修正这个问题,并会将这个修正与 2020.1.x 系列的下一版更新一并发布。 暂时修正的方法 这个问题只有在使用语言插件时才会发生,您可以依照自己的场景从以下两种方式选一种修正: 如果想要使用最新版 IDE,请先切换为英文 UI。您可以从 IDE 配置里将语言包 卸载 或 停用,详细步骤可以参考这篇博文。 如果想要使用简体中文 UI,请先回滚至前一个版本。如何您是使用 JetBrains Toolbox App 安装的话,可以一键回滚。 我们对于这个 Bug 深感抱歉!若您在操作 JetBrains IDE 遇到任何疑问,请与
July 16, 2020 由 范圣佑

网络研讨会:重构还是重写?聊聊 Java 代码臭味与重构技巧

有点经验的开发者大多都听过重构这词,有维护过产品的开发者大多都说在重构产品。可到底什么是重构?大家口中说的重构指的是同一件事么?圈内常有传言那所谓的重构根本就是重写,您怎么看? 本月 JetBrains 网络研讨会将于 7/31 (五) 15:00 举办,很高兴可以邀请到 Odd-e 的培训教练张博超跟我们聊聊重构的那些事。张博超曾在 2018 年的 JetBrains Day Beijing 为我们分享过测试驱动开发(TDD)的主题,收到了非常积极的响应。这次张博超将会从他多年协助客户重构代码的经验里,提出常见的代码异味警讯,并分享相应的重构技巧。同时,他也会分享在不同的重构场景底下,如何使用 IntelliJ IDEA 做辅助,让我们在重构的过程中安全无虞。听完这场分享后,您将会对代码异味有更好的敏銳度,也能学习到如何通过 IDE 辅助让开发更高效。本次分享干货较多,建议要对 Java 代码有基本认识,如果听过 IntelliJ IDEA 重构功能的关键词(如 Rename、Move、Copy、Extract 等)再参加,将会有更好的学习效果。 本次网络研讨将以 Zoom 会议室直播,演示内容全程录影,并在会后上传视频供回放,相关材料也会发送至与会者邮箱,请预先报名以取得详细信息通知。 立即注册参加 嘉宾简介 张博超 - 敏捷教练/strong> @Odd-e
July 13, 2020 由 范圣佑

About

  • Company
  • Brand Assets
  • Careers
  • Contacts

关注 JetBrains

Copyright © 2000–2021 JetBrains s.r.o.

PrivacyTerms of Use