当你在决定使用哪些软件或平台来完成日常工作时,会存在很多选择。所以,我决定写一个我们在开发部门常用的软件开发工具列表,希望能对其他所有人都有所帮助。
新的软件需要一些时间来适应,习惯和理解。我们都经历过一种情况——我们不是真的满意,但不得不重新开始使用另一个工具。承认吧:这真的不是什么棒棒哒的感觉!
如果你打算继续阅读这篇文章,很可能是因为你知道软件开发工具的重要性,以及它们将如何提高团队的效率和生产力。在这个列表中,你会发现我们在Apiumtech使用的伟大的编程工具。而且它们不光是编程工具,还是我们作为 程序员 每天都要使用的基本工具!
我们都使用终端。这真的取决于你在做什么;有些人每天使用,而其他人可以每周一次。但说到底,我们都在使用它!终端是可以执行进程的命令行。非常有用,可以使你的工作更快。只需一个命令,而不是通过整个菜单,你就可以在文件之间移动,下载应用程序和做许多其他事情。
当涉及到在不同的过程中使用各种开放终端时,Tmux是最有用的工具之一。那么Tmux是什么呢?它是一个终端复用器,使你能够在一个终端上拥有几个独立的终端。它会在终端内将窗口分为窗格或标签,使其更容易移动通过。
如果你有兴趣,这里有一个短的Tmux备忘单,可能会派上用场。
Docker提供了一个软件容器化平台,使你能够在文件系统中打包应用程序或软件。这个容器可以在任何地方移动和执行。你会看到运行所需的一切:代码,系统库等。这意味着软件将运行相同的东西,并且不依赖于其环境。
为什么要使用Docker?因为容器有不同的架构方法,因此它们更高效,并且可以在任何计算机、任何基础设施和任何云上运行。Docker使你能够花更多时间去创建新功能,修复问题和发布软件。它还使得开发人员和系统管理员之间的协作更容易,因为它创建了一个通用框架。最后,Docker允许你更快地发布和扩展软件。
Intellij是一个集成开发环境。IDE集成了开发平台所需的所有工具,因此它具有代码编辑器,编译器,调试器等。我们喜欢Intellij,是因为它具有自动完成功能,而且用户友好,因此容易使用。它还有助于快速浏览代码,提供错误分析,并提供方便的快速修复。它大大提高了我们的生产力。
Slack是一个用于团队沟通的惊人app。它是伟大的,因为我们基本上可以在任何地方使用它(它有面向iOS和Android的原生app),并且自从我们使用它开始,减少了内部发送的电子邮件。我们有针对每个部门的团队,但也有针对整个公司的团队!这个工具非常实用:你会得到任何你想创建的东西的“渠道”(项目,团队,主题等),你可以轻松地在渠道之间导航。你还可以选择与团队的某些成员进行直接的私人消息。拖放是真的很好用,你可以共享各种各样的文件,并添加评论,或者标记人。你还可以搜索完整的历史记录。
每个人都会选择使用web浏览器,其中Google Chrome浏览器是最流行的浏览器之一。我喜欢Chrome,因为它有一个干净和简单的用户界面。我发现它非常快,并且对于它能够在我所有的设备上同步书签这一点非常满意。它还有一个巨大的扩展和加载项库,它能够自动填写表单,并且我可以直接从地址栏搜索。最后一点,开发者控制台既快又易于使用,从而使得前端开发人员的生活更轻松。
Feedly使用起来相当不错。它是一种新闻源,你可以方便地阅读你感兴趣的新闻。它非常容易使用,并且有一个简约的设计和个性化的界面,让你可以组织所有你喜欢的出版作品,YouTube频道,博客等,并且之后你还会收到更新,如果有新的故事和视频发布的话!在紧跟自己感兴趣的内容这一点上,Feedly非常实用。
Jira是为敏捷团队开发的,用于计划,跟踪和发布软件。显然,当我们呼吁敏捷的时候,我们也会使用Jira。它对项目管理很有帮助。它真的很棒,因为它非常可定制,并且针对每一个开发阶段都有强大的功能和工具。Jira可以让你管理团队积压,可视化正在进行的工作,并生成报告。
Git是一个用于软件项目的开源版本控制系统。当开发人员正在处理某些事情时,他或她必须定期对代码进行更改,直到他或她达到最新的版本。
版本控制系统保存所做的每个更改,允许其他人协作、更改和作出贡献。你还将找到每个开发人员的代码副本。Git允许你同步团队工作,并且随时可以工作于这些代码。它名列最受欢迎的软件开发工具之一,因为它可以很好地管理冲突(专注于文件内容),并允许你创建一系列代码。我个人认为,如果你在软件开发工具列表上没有看到Git的身影,那么你应该跳过这篇帖子。
GitHub是一个Git代码仓库托管网站。它是用于软件项目的一种云储存,可以让你找到代码。上传项目时,你可以选择将其设为公开还是私有。这在网络和满足志同道合的人,分享项目以及发现别人等方面做的真的很棒。社区甚为巨大,而且项目基础甚至更大。
Stack Overflow是所有程序员的圣经。不要以为没有把它放在前面就认为它不重要!这是一个问答网站,也是最大的 程序员社区 。在这个库中,你可以找到从如何更改文本的颜色到如何更改Linux内核所有这些问题的所有答案。这是一个学习和分享知识的好地方。
Sublime Text是一个针对源代码的 文本编辑器 ,而且我们不仅是因为漂亮的用户界面而喜欢上它!
有很多快捷方式可以让你轻松打开文件以及在代码行之间跳转。由于多个选择选项的缘故,因此你可以一次更改多行。你不需要经过菜单;搜索你所需要的就可以了。你还可以轻松地在项目之间切换。插件API真心强大!
Jenkins是一个开源的自动化服务器,更具体地说,是一个持续集成服务器。你可以把这个软件开发工具描绘成代码和构建服务器之间的中间人,因为它是通常在你的服务器上查找更改,并且一旦找到之后,它就会将它们发送到构建服务器。让人觉得很棒的一点是对于Jenkins,有很多令人惊艳的插件可以让生活更美好。
Confluence是一个用于团队协作的软件。我们可以将点子,对正在开发中的产品的需求,以及文档放到一起,以便于更好的构建。这真的很棒,因为使得我们可以非常容易地创建项目,并且每个人都可以致力于贡献。你还可以找到企业信息,因此基本上每个人都会保持更新。
Spotify是我们最喜欢的音乐服务。它允许你访 问数以百万计的歌曲。你可以轻松播放你最喜欢的歌曲,发现新曲目,构建播放列表,以及更多。它有一个 令人惊艳的用户界面,你可以在所有的设备上播放音乐,并且移动app和web app一样好。高级帐户的一个神奇选项是你可以离线访问你的音乐。哦,是的,我们当然可以在工作时聆听音乐!
出于个人和专业的原因,我们几乎所有人都使用YouTube。上面有大量我们错过的相当不错的检查教程和其他来自专业人员的行业提示、聚会,等等。还有,总有有趣的视频在那等着你!
我们实际上大量使用Skype。我们在巴塞罗那有一个团队,一个在越南,另一个在安道尔,我们有时与在不同国家的客户合作。我们还经常远程工作。尽管我们非常灵活,但我们仍然需要团队合作。这意味着我们经常需要与客户或我们的团队打电话。Skype真的很棒,连接上做得好,而且定期更新,并且还是完全免费的。还有小组呼叫选项,相当不错!
希望你喜欢这个软件开发工具列表。这并不意味着这些是我们使用的唯一的编程工具,或者这些是唯一的好的编程工具;只是这些是我们使用过的,并且相信可以很大程度地帮助软件开发人员的日常工作。
如果你有其他软件开发工具的建议,欢迎留言。期待听到不同的声音!
译文链接: http://www.codeceo.com/article/17-top-tools-in-development.html
英文原文: Top 17 Tools Used in Software Development