网站大师内容管理系统(MVP开发先创建一个电子书分享网站Bookist分享)

优采云 发布时间: 2021-12-11 02:06

  网站大师内容管理系统(MVP开发先创建一个电子书分享网站Bookist分享)

  我们也践行了MVP的理念,首先开发并发布了一个最小绑定可行的网站,然后我们会随着课程的进行不断迭代和增量开发。也就是说,后续的每一门课程都会完成这个网站的一个或多个功能模块,或者完成一个优化或者重构。

  本阶段课程的实际项目是电子书分享网站。网站名为Bookist,中文可称为Book Master,域名为bookist。在学习过程中,您可以通过访问域名查看示例效果,并与您完成的结果进行比较。

  在学习和实战过程中,有时为了补充知识点的讲解和演示,项目中可能会穿插一些产品不需要的临时功能。

  我们知道软件开发方法中有原型开发方法,原型方法分为放弃型和进化型。由于我们不知道现在最终的网站会是什么样子,我们将在整个过程中采用进化的原型开发方法。

  环境准备

  在撰写本文时,.NET 6 RC2 刚刚发布。RC版官方认为可以在生产环境下运行,.NET 6正式版即将发布,所以我们也使用.NET 6进行开发。我的VS版本是2022,安装时默认安装.NET 6 SDK。如果您使用 VS 2021 或 VS Code,则可能需要单独安装 .NET 6 SDK。请根据需要从官网下载安装:

  dotnet.microsoft/download/dotnet/6.0

  除了使用.NET 6 的要求外,您还可以根据自己的喜好选择开发环境中的其他工具。为了照顾使用非Windows操作系统的同学,我在课程中选择了VSC(Visaul Studio Code)作为代码编写工具。如何使用VSC开发.NET应用,请参考009章文章。

  开始开发

  首先创建一个名为 bookist 的项目文件夹,并用 VSC 打开该文件夹。

  通过快捷键ctrl+`打开VSC的命令行面板。使用命令行创建解决方案 (sln) 文件并将其命名为 Bookist.sln:

  # 创建一个名为 Bookist 的解决方案

  $ dotnet new sln -n Bookist

  已成功创建模板“解决方案文件”。

  注意:本课程中,$开头的代表终端手动输入的命令行,#开关代表注释,其他为运行命令后的输出。我使用的终端是 Windows 中的 PowerShell。如果使用 Bash,注意目录操作的不同。

  可以去官方文档了解所有dotnet命令行工具的介绍:

  docs.microsoft/en-us/dotnet/core/tools/

  然后使用 ASP.NET Core 空模板(代号 web)创建一个 Web 项目,命名为 Bookist.Web,并将项目添加到解决方案中:

  # 创建一个空的Web项目

  $ dotnet new web -o Bookist.Web

  在 D:\bookist\Bookist.Web\Bookist.Web.csproj 上运行“dotnet restore”...

  正在确定要恢复的项目...

  D:\bookist\Bookist.Web\Bookist.Web.csproj 已恢复(耗时 69 毫秒)。

  成功恢复。

  # 将 Bookist.Web 项目添加到当前解决方案中

  $ dotnet sln 添加 Bookist.Web

  项目“Bookist.Web\Bookist.Web.csproj”已添加到解决方案中。

  命令执行后,项目的目录结构如下:

  

  各种目录和文件这里暂不介绍,后面讲到相关知识点的时候再介绍。

  现在,切换到 Bookist.Web 目录并使用以下命令运行项目:

  $ cd .\Bookist.Web\

  $ dotnet 运行

  正在生成...

  信息:Microsoftingtime[14]

  现在收听:本地主机:7269

  信息:Microsoftingtime[14]

  现在收听:本地主机:5296

  信息:Microsoftingtime[0]

  应用程序启动。按 Ctrl+C 关闭。

  信息:Microsoftingtime[0]

  托管环境:开发

  信息:Microsoftingtime[0]

  内容根路径:D:\MyGitHub\bookist\Bookist.Web

  打开浏览器访问命令行提示的任意网址(比如这里的localhost:5296,你的端口号可能和我的不一样,你也可以直接ctrl+鼠标点击打开)。看到如下页面说明一切正常:

  

  如果使用VS开发,可以直接通过可视化窗口完成上述命令行操作。

  概括

  本课主要让大家了解MVP迭代增量开发的概念,准备.NET 6开发环境,了解基本的dotnet命令行工具的使用。

  一个电子书分享网站,最重要的功能就是展示电子书,让用户下载。为了快速上线,我们网站的第一个版本只会显示电子书的分享。早期不考虑架构设计和数据库设计。主要目的是让从开发到上线的过程都经过。

  因此,在下一篇文章中,我们将实现书主网站的最低限度的基本功能,并部署到生产环境中,快速完成第一版上线。

  本文选自【.NET大牛路】星球,更完整的专栏请关注我。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线