JavaRush /Java 博客 /Random-ZH /我们正在为一个作品集编写一个真实的项目——“从A到Z的Java项目”
Roman Beekeeper
第 35 级

我们正在为一个作品集编写一个真实的项目——“从A到Z的Java项目”

已在 Random-ZH 群组中发布
大家好,未来的高级软件工程师!在过去的几个月里,我一直在撰写描述开发重要部分的简单文章。今天我就来说说我的想法吧!我想帮助你找到第一份工作。为此需要什么?为此,您需要获得经验。了解这些项目的组成、工程师的工作内容并推动信息技术世界向前发展。

该系列所有材料:

“Java 项目从头到尾”:为作品集编写一个真实的项目 - 1怎么做?我需要写点东西。因此,作为本系列材料的一部分,我们将逐步编写我们自己的电报机器人(详细信息如下)。同时,我们将了解即使是新手 Java 开发人员也需要的技术堆栈。

目标

编写一个项目,该项目将结合使用数据库、创建我们需要的业务逻辑以及设置部署项目和测试它的工作。我们要写什么?如果你要写作,那么你需要写一些真正有用的东西,这样人们会对工作感兴趣,并且有人可以利用结果。根据这些数据,将编写一个可与​​ JavaRush 网站配合使用的电报机器人。这有用吗?毫无疑问!由于电报机器人编写起来并不困难,因此您可以快速获得有用的工作项目。

开发时间

文章每周发布一次,因此如果有任何不清楚的地方,将有足够的时间来掌握/重复/写问题。第一篇文章将是我们将在项目中使用的理论基础。然后就只是练习了。

MVP(最小可行产品)

“Java 项目从头到尾”:为作品集编写一个真实的项目 - 2什么是MVP?像往常一样,这个术语不是我们的,但您可以在wiki上找到合理的解释。我们引用: MVP是一个功能最少,但足以满足第一需求的产品。主要任务是接收反馈,为产品的进一步开发形成假设。 对于我们来说,这个描述非常适合。所有功能的快速描述: 作为 Telegram 用户,我希望能够以组的形式订阅新文章,并在新文章发布时收到通知。 我喜欢阅读成功故事组,它激励我继续学习并学习新的东西。我比较懒,不想每次都进去刷新页面。因此,作为一名程序员,我想让我的生活更轻松,并编写一个程序,可以在 Telegram 上向我发送一条消息,告知我有一篇新文章已发布。此外:这不是我跟踪的唯一群体。我来自哈尔科夫,所以我有兴趣阅读那里发表的文章。作为该产品的开发人员,我会对是否有人使用我的作品非常感兴趣,因此我们将为管理员添加功能,以便他们可以查看电报机器人的统计信息。是否有可能做到这一点?当然!如何?这就是我将在一系列文章中展示的内容。

代码名称

每个很酷的项目都应该有一个代号。我们的也不例外,所以现在它会是这样的: JRTB(JavaRush Telegram Bot)。 以下将这样称呼。

我们将讨论哪些主题?

“Java 项目从头到尾”:为作品集编写一个真实的项目 - 3

数据库

您需要立即了解您无法在应用程序中存储状态(数据和信息)。数据需要存储在数据库中。由于培训中没有关于它的信息(据我记得:D),我将尽力填补我们需要的知识空白。我将尝试使数据库模式尽可能简单,以免造成混乱。这部分将包括:
  1. 基于 MySQL 的 SQL 工作原理。
  2. MySQL Workbench 是一个使用 MySQL 的工具。
  3. 数据库版本控制。飞行路线和液体基地。
  4. 创建数据库模式。
  5. 创建数据库架构图。

git

已经有关于这个主题的文章。当然,如果没有版本控制系统,一切都将无法进行。要开始使用 JRTB,您需要了解 git。你可以自己做,或者你可以阅读我关于这个主题的文章: 如果您愿意,您还可以阅读有关分支策略的内容,但这里并不重要,可以跳过。

梅文

这里我们将讨论装配系统,它的用途,我们如何使用它,需要注意什么,以及良好礼仪的规则。我们还将在这里讨论版本控制,以及我们具体如何做。

码头工人

为了让我们的生活更简单、更轻松,让部署过程尽可能简单,我们将使用 Docker。为此,我们先来谈谈 Docker 是什么以及有哪些有用的命令。我想说的是,我在用户级别使用 Docker,可能不知道或无法做某事))因此,如果有人建议如何使 Docker 工作更好/更轻松,我只会很高兴。这部分将包括:
  1. Docker 的理论与实践。
  2. 通过docker备份/恢复数据。
  3. 设置我们的项目,使其在 Docker 中运行。

bash 脚本

为了自动化工作,有时编写一两个脚本很有用。Bash 脚本是所有开发人员都在某种程度上理解的脚本,因为它们本质上是 Linux 中的命令行工作,只是保存在单独的文件中。

创建应用程序

所有的驱动器都将在这里。根据之前的知识,我们将构建一个包含 telegram bot 对象的 Spring Boot 应用程序。我们要在这里做什么?
  1. 创建应该存在的功能的完整描述。
  2. 简单描述什么是电报机器人。
  3. 创建 Spring Boot 应用程序。
  4. 使用 Lombok 的描述。
  5. 使用 UniRest 的说明。
  6. 命令模式的实现+为管理员命令创建您自己的注释。
  7. 使用 UniRest 创建用于处理 JavaRush 查询(例如组列表、组中的文章列表)的客户端。
  8. 测试。让我们编写所有可能的测试来覆盖我们的功能。
  9. 在 GitHub 上建立一个检查代码质量和自动构建的系统。
  10. 连接数据库以及数据库版本控制。
所有这些步骤都将一步一步完成,以便更好地了解正在发生的事情。

未来的结果

结果,我们将得到一个任何阅读文章的人都可以实施的真实项目。电报机器人的优点在于您可以将此项目链接到任何机器人,以免依赖于文章中的机器人。我还要多说一句:这只是JRTB的开始。将来可以讨论/添加新功能。制作这个机器人,使其对 JavaRush 项目的所有学生都有用。而其他人使用并喜欢你的创作的感觉是非常值得的!作为本系列文章的读者,您将能够获得从事真实项目的真实经验。传统上,我建议订阅我在 Github 上的帐户,我在其中发布解决方案和项目。JRTB 上的所有工作都将通过 GitHub 完成,因此如果您还没有注册,我建议您注册。感谢大家的阅读,很快再见:)“Java 项目从头到尾”:为作品集编写一个真实的项目 - 5
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION