完善开发工具箱:免费开源社区版软件推荐

news2024/11/29 4:43:50

一、背景

工欲善其事必先利其器,在日常的IT工作中,好的工具软件是开发者日常工作中最重要的工具之一。然而,专业版的软件价格昂贵,对于小团队或个人开发者来说可能是一大负担。当然国内大家会普遍推荐使用破解版,小公司也许无所谓,但当公司达到一定体量时,合规方面也会成为一个问题,公司将不会允许使用破解版软件。

幸运的是,现在有许多免费的社区版软件,它们完全免费,并且现有功能也完全能满足日常的开发测试工作。本文将向大家推荐几款优秀的免费社区版IDE软件,帮助您提升开发效率,降低成本。

二、数据库查看软件

DBeaver社区版:简洁而强大的数据库工具,下载地址:https://dbeaver.io/download/

在这里插入图片描述
DBeaver社区版以其简洁直观的用户界面而闻名。它采用现代化的设计,提供了直观的导航和操作方式,使得开发者能够快速上手。无论您是初学者还是有经验的开发者,DBeaver社区版都能为您提供无缝的数据库开发体验。

DBeaver社区版支持多种数据库,包括MySQL、PostgreSQL、Oracle、SQL Server等主流数据库系统。这使得开发者可以在一个单一的工具中管理和开发不同类型的数据库,而无需切换不同的工具。无论您的项目使用哪种数据库,DBeaver社区版都能满足您的需求。

当然市面上目前也有其他免费的数据库软件,但是大多只支持连接数据库,然后查看数据,直接SQLite的很少。而对于测试人员来说,则有需要使用SQLite直接打开本地.db文件,查看核对数据的需要,DBeaver社区版直接SQLite,因此这也是博主推荐它的原因之一。

在这里插入图片描述

三、Java开发工具包(Java Development Kit)

JDK是各位Java码农必用的工具包,Java SE 8及之前的Oracle JDK是免费提供给开发者和商业用户的。然而,坏消息是自Java SE 11版本开始,Oracle JDK的商业使用则需要购买商业许可证。

好消息是Java SE 11及以后的版本中,Oracle提供了两个不同的发行版:Oracle JDK和OpenJDK。OpenJDK是免费的,可以用于商业和非商业用途。

OpenJDK下载地址:https://jdk.java.net/java-se-ri/11-MR2

在这里插入图片描述
使用上和JDK没有差别,同样配置环境变量即可:
在这里插入图片描述

四、Java开发IDE工具

IntelliJ IDEA是目前主流的Java IDE软件,Java码农几乎人手一个。其内置了丰富的工具和集成,包括版本控制系统(如Git)、构建工具(如Maven和Gradle)、调试器、测试框架等,极大提高了开发效率,使得近些年Java开发者已经基本抛弃了Eclipse而拥抱Idea。

IntelliJ IDEA旗舰版是按许可证进行收费的,而它的社区版是完全免费的,提供了基本的开发工具和功能,对于日常的开发工作都能满足。

Idea社区版下载地址:https://www.jetbrains.com/idea/download/?section=windows
在这里插入图片描述
相比旗舰版,只有一些特定的功能社区版无法支持,比如:相比于社区版支持的一些常见的数据库,如MySQL、PostgreSQL、Oracle、SQLite,旗舰版提供了更强大的数据库工具集成,包括一些商业数据库,如Microsoft SQL Server和IBM DB2。

在这里插入图片描述

五、Python开发IDE工具

PyCharm是一款由JetBrains开发的Python集成开发环境(IDE),提供了优秀的代码编辑器、项目管理、调试和测试功能,以及丰富的插件生态系统,是专为Python开发者设计的一站式工具。

和Idea一样,Pycharm也提供了专业版和社区版,专业版是付费版本,社区版是免费版本。社区版提供基本的Python开发功能,包括代码编辑器、语法高亮、代码补全、代码导航、调试器和单元测试工具等,以及版本控制、Django支持等,满足日常基本开发需要。

Pycharm社区版下载地址:https://www.jetbrains.com/pycharm/download/?section=windows
在这里插入图片描述
相比专业版,只有一些特定功能社区版无法支持,比如:Web开发支持,专业版提供了广泛的Web开发支持,包括HTML、CSS、JavaScript等前端技术的编辑器和调试器,以及对各种Web框架(如Flask、Django、Pyramid等)的深度集成和支持。

在这里插入图片描述

六、Web开发IDE工具

JetBrains也开发了一款专注于Web开发的集成开发环境(IDE):webstorm,但是只提供了专业版和30天免费的试用版,没有社区版。因此推荐另一款IDE工具:Visual Studio Code(简称VS Code)。

Visual Studio Code(简称VS Code)是一款由Microsoft开发的免费开源的跨平台代码编辑器。它具有广泛的功能和丰富的扩展生态系统,适用于各种编程语言和开发场景。

对于前端语言,比如:Vue,VS Code提供了全面支持,包括Vue.js语法高亮、快速代码片段、智能感知和补全、语法检查和错误提示、Vue Devtools集成、Vue.js扩展插件等,结合其丰富的插件生态系统,VS Code已成为许多Vue.js开发者的首选编辑器之一。

VS Code下载地址:https://code.visualstudio.com/Download#

在这里插入图片描述
在这里插入图片描述

七、抓包工具

测试工作中必不可少的工具之一,对于各类请求,我们经常需要通过抓包分析请求入参和返回,进而定位问题。

常用的抓包工具Fiddler和Charles,功能强大,可用于拦截、分析和修改网络流量。其中Charles只有付费版本,而Fiddler提供了Fiddler Everywhere和Fiddler Classic版本。Fiddler Classic版本是免费版本,但是最近公司内依然要求不能使用,大致是收到了Fiddler开发公司Progress Software的要求,不允许公司内大规模使用。

因此今天推荐另一款开源免费的抓包工具:mitmproxy, 下载地址:https://mitmproxy.org/
在这里插入图片描述
下载安装后,到C盘目录下:C:\Users\xxxx.mitmproxy,双击安装证书:mitmproxy-ca-cert.p12
在这里插入图片描述

在这里插入图片描述
启动命令行,输入:mitmweb启动,会弹出一个网页界面:
在这里插入图片描述
记得打开网络代理:
在这里插入图片描述
web界面展示:
在这里插入图片描述

抓包效果展示:
在这里插入图片描述
当然,以上只是介绍了mitmproxy的简单实用,mitmproxy的功能不止于此,还能结合Python,实现更复杂的接口请求拦截改造功能,为自动化测试服务,有兴趣的同学可以进一步学习研究。

=================================================================================================
以上就是本次的全部内容,如果对你有帮助,麻烦点个赞+收藏+关注,一键三连啦~

欢迎关注下方我的公众号:程序员杨叔,各类文章、框架Demo源码都会在上面发布,持续分享各类测试开发知识干货,你的支持就是作者更新最大的动力。

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

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

相关文章

Java【手撕滑动窗口】LeetCode 438. “字符串中所有异位词“, 图文详解思路分析 + 代码

文章目录 前言一、字符串中所有异位词1, 题目2, 思路分析2.1, 引入哈希表找出异位词2.2, 引入变量记录"有效字符的个数"2.3, left 右移维护窗口2.4, 总结核心步骤 3, 代码 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: 📕 Ja…

bazel工程介绍和demo构建

参考官方示例项目:git clone https://github.com/bazelbuild/examples 项目结构 使用Bazel管理的项目一般包含以下几种Bazel相关的文件:WORKSPACE(同WORKSPACE.bazel),BUILD(同BUILD.bazel),.bzl 和 .bazelrc 等。 具体结构如下…

【洛谷】P3853 路标设置

原题链接:https://www.luogu.com.cn/problem/P3853 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 整体思路:二分答案 由题意知,公路上相邻路标的最大距离定义为该公路的“空旷指数”。在公路上增设一些路标&…

6. series对象及DataFrame对象知识总结

【目录】 文章目录 6. series对象及DataFrame对象知识总结1. 导入pandas库2. pd.Series创建Series对象2.1 data 列表2.2 data 字典 3. s1.index获取索引4. s1.value获取值5. pd.DataFrame()-创建DataFrame 对象5.1 data 列表5.2 data 嵌套列表5.3 data 字典 6. df[列索引]…

Linux安装MySQL5.7.26教程图解

0、准备工作 下载MySQL软件包 ①、官网下载:https://www.cnblogs.com/linu-x/p/15701479.html#_label6 ②、百度网盘下载:百度网盘 请输入提取码 提取码:chao ③、文件说明 主机名 CentOS版本 MySQL版本 IP地址 test CentOS Linux …

AtCoder Beginner Contest 318

目录 A - Full Moon B - Overlapping sheets C - Blue Spring D - General Weighted Max Matching E - Sandwiches F - Octopus A - Full Moon #include<bits/stdc.h> using namespace std; const int N1e65; typedef long long ll ; const int maxv4e65; typedef …

nsq中diskqueue详解 - 第二篇

上一篇博客 nsq中diskqueue详解 - 第一篇_YZF_Kevin的博客-CSDN博客 中我们讲了diskqueue是什么&#xff0c;为什么需要它&#xff0c;它的整体架构流程&#xff0c;以及对外接口等等&#xff0c;如果你还没了解过&#xff0c;强烈建议先看一下&#xff0c;不然直接看这篇博客的…

AVR128单片机 USART通信控制发光二极管显示

一、系统方案 二、硬件设计 原理图如下&#xff1a; 三、单片机软件设计 1、首先是系统初始化 void port_init(void) { PORTA 0xFF; DDRA 0x00;//输入 PORTB 0xFF;//低电平 DDRB 0x00;//输入 PORTC 0xFF;//低电平 DDRC 0xFF;//输出 PORTE 0xFF; DDRE 0xfE;//输出 PO…

Leetcode Top 100 Liked Questions(序号236~347)

236. Lowest Common Ancestor of a Binary Tree 题意&#xff1a;二叉树&#xff0c;求最近公共祖先&#xff0c;All Node.val are unique. 我的思路 首先把每个节点的深度得到&#xff0c;之后不停向上&#xff0c;直到val相同&#xff0c;存深度就用map存吧 但是它没有向…

Lesson4-2:OpenCV图像特征提取与描述---Harris和Shi-Tomas算法

学习目标 理解Harris和Shi-Tomasi算法的原理能够利用Harris和Shi-Tomasi进行角点检测 1 Harris角点检测 1.1 原理 H a r r i s Harris Harris角点检测的思想是通过图像的局部的小窗口观察图像&#xff0c;角点的特征是窗口沿任意方向移动都会导致图像灰度的明显变化&#xff…

【多线程】线程间通信及状态

文章目录 1. 线程间的通信1.1 wait和notify1.2 notify随机唤醒1.3 notifyAll()1.4 join() 2. 线程间的状态3. 验证线程的状态3.1 验证NEW、RUNNABLE、TERMINATED3.2 验证WAITING3.3 验证TIMED-WAITING3.4 验证BLOCKED 4. 面试题&#xff1a;wait和sleep对比 1. 线程间的通信 1…

人工智能轨道交通行业周刊-第58期(2023.8.28-9.3)

本期关键词&#xff1a;成都智慧工厂、机务段、站台地标、备案大模型、AIGC报告 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通RailMetro轨道世界铁路…

Redis 缓存穿透击穿和雪崩

一、说明 Redis 缓存的使用&#xff0c;极大的提升了应用程序的性能和效率&#xff0c;特别是数据查询方面。但同时&#xff0c;它也带来了一些问题。其中&#xff0c;最要害的问题&#xff0c;就是数据的一致性问题&#xff0c;从严格意义上讲&#xff0c;这个问题无解。如果对…

C# Color颜色RGB对照表

序号Color色系颜色RGB图例1Color.AliceBlue蓝色艾丽丝蓝240,248,2552Color.AntiqueWhite白色古典白色250,235,2153Color.Aqua&#xff0c;Color.Cyan青色浅蓝色&#xff0c;蓝绿色&#xff0c;青色0,255,255 C# Color颜色RGB对照表_旭东怪的博客-CSDN博客 C#颜色和名称样式对照…

Nginx全家桶配置详解

源码包安装NGINX A&#xff0c;搭建Web Server&#xff0c;任意HTML页面&#xff0c;其8080端口提供Web访问服务&#xff0c;截图成功访问http(s)&#xff1a;//[Server1]:8080并且回显Web页面。保留Server1&#xff0c;但是不允许直接访问Server 1&#xff0c;再部署1套NGINX …

8.(Python数模)马尔科夫链预测

Python实现马尔科夫链预测 马尔科夫链原理 马尔科夫链是一种进行预测的方法&#xff0c;常用于系统未来时刻情况只和现在有关&#xff0c;而与过去无关。 用下面这个例子来讲述马尔科夫链。 如何预测下一时刻计算机发生故障的概率&#xff1f; 当前状态只存在0&#xff08;故…

1分钟实现 CLIP + Annoy + Gradio 文搜图+图搜图 系统

多模态图文搜索系统 CLIP 进行 Text 和 Image 的语义EmbeddingAnnoy 向量数据库实现树状结构索引来加速最近邻搜索Gradio 轻量级的机器学习 Web 前端搭建 文搜图 图搜图 CLIP图像语义提取功能&#xff01;

生信分析Python实战练习 3 | 视频21

开源生信 Python教程 生信专用简明 Python 文字和视频教程 源码在&#xff1a;https://github.com/Tong-Chen/Bioinfo_course_python 目录 背景介绍 编程开篇为什么学习Python如何安装Python如何运行Python命令和脚本使用什么编辑器写Python脚本Python程序事例Python基本语法 数…

已解决下载安装Python官网安装包下载速度慢问题

本文摘要&#xff1a;本文已解决下载安装Python官网安装包下载速度慢的问题。 &#x1f60e; 作者介绍&#xff1a;我是程序员洲洲&#xff0c;一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究…

47、springboot 的 国际化消息支持--就是根据浏览器选择的语言,项目上的一些提示信息根据语言的选择进行对应的显示

springboot的国际化也是基于spring mvc 的。 springboot 的 国际化消息支持–就是根据浏览器选择的语言&#xff0c;项目上的一些提示信息根据语言的选择进行对应的显示。 总结下国家化自动配置&#xff1a; 功能实现就是&#xff1a; 比如一个登录页面&#xff0c;我们在浏览…