日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

[031] 实战:书大师网站开发准备

發(fā)布時(shí)間:2023/12/4 80 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [031] 实战:书大师网站开发准备 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

.NET大牛之路 ? 王亮@精致碼農(nóng) ? 2021.10.19

前面我們花了二十篇左右的文章講 C# 基礎(chǔ)和高級(jí)知識(shí)點(diǎn)。由于后面要講的東西還有很多,所以 C# 的內(nèi)容沒(méi)辦法做到講得細(xì)而全,只能走馬觀花一掃而過(guò)。在后面的內(nèi)容中如果有遇到 C# 高級(jí)知識(shí)點(diǎn),我們?cè)偕詭еv一下。

從今天開始我們進(jìn)入 ASP.NET Core 知識(shí)的學(xué)習(xí)階段。介于羅列知識(shí)點(diǎn)教科書式的講解有些枯燥,所以本階段使用實(shí)戰(zhàn)示例的方式進(jìn)行講解,即在開發(fā)實(shí)際 Web 應(yīng)用的時(shí)候把用到的知識(shí)點(diǎn)展開講解。

1最小化可行產(chǎn)品

在《精益創(chuàng)業(yè)》一書中,作者提出了 MVP(Minimum Viable Product,最小化可行產(chǎn)品)理念,得到了很多人認(rèn)可。MVP 理念核心就是通過(guò)不斷挖掘用戶的需求,不斷做迭代增量開發(fā),逐步將一個(gè)原型產(chǎn)品演變成滿足用戶需求的產(chǎn)品。

圖片來(lái)源:bit.ly/3DKyY6W

我們也踐行 MVP 這個(gè)理念,先開發(fā)并發(fā)布一個(gè)最小化可行的網(wǎng)站,后面會(huì)隨著課程的推進(jìn)而不斷迭代和增量開發(fā)。也就是說(shuō)后面每節(jié)課程都會(huì)完成此網(wǎng)站的一個(gè)或多個(gè)功能模塊,或者完成一次優(yōu)化或重構(gòu)。

本階段課程實(shí)戰(zhàn)項(xiàng)目選的是一個(gè)電子書分享網(wǎng)站。該網(wǎng)站取名為Bookist,中文可以叫書大師,域名為 bookist.cc。在學(xué)習(xí)過(guò)程中,大家可以通過(guò)訪問(wèn)該域名查看示例效果,與自己完成的成果進(jìn)行對(duì)比。

在我們邊學(xué)習(xí)邊實(shí)戰(zhàn)的過(guò)程中,有時(shí)候?yàn)榱搜a(bǔ)充知識(shí)點(diǎn)的講解和演示,可能會(huì)在項(xiàng)目中穿插一些產(chǎn)品不需要的臨時(shí)功能。

我們知道在軟件開發(fā)方法中有原型法開發(fā)方法,原型法又分為拋棄式和演化式。由于我們現(xiàn)在并不知道最終的網(wǎng)站要做成什么樣子,所以整個(gè)過(guò)程我們將采用演化式原型開發(fā)方法。

2環(huán)境準(zhǔn)備

在本文編寫時(shí),.NET 6 RC2 剛發(fā)布,RC 版本是官方認(rèn)為可以在生產(chǎn)環(huán)境運(yùn)行的版本,而且 .NET 6 正式版也即將發(fā)布了,所以我們也改用 .NET 6 來(lái)開發(fā)。我的 VS 版本是 2022,安裝時(shí)默認(rèn)安裝了 .NET 6 SDK。如果你用的是 VS 2019 或 VS Code,則可能要單獨(dú)安裝一下 .NET 6 SDK,請(qǐng)根據(jù)自己的需要到官網(wǎng)下載并安裝:

https://dotnet.microsoft.com/download/dotnet/6.0

除了使用 .NET 6 這一要求,對(duì)于開發(fā)環(huán)境的其它工具方面大家根據(jù)自己喜好選擇就行。為了照顧到使用非 Windows 操作系統(tǒng)的同學(xué),我在課程中選用 VSC (Visaul Studio Code)作為代碼編寫工具。關(guān)于如何使用 VSC 開發(fā) .NET 應(yīng)用請(qǐng)參閱第 009 篇文章。

3開始開發(fā)

先創(chuàng)建一個(gè)名為 bookist 的項(xiàng)目文件夾,并用 VSC 打開該文件夾。

通過(guò)快捷捷 ctrl+` 打開 VSC 的命令行面板。用命令行創(chuàng)建一個(gè)解決方案(sln)文件,取名為 Bookist.sln:

# 創(chuàng)建一個(gè)名為 Bookist 的解決方案 $ dotnet new sln -n Bookist 已成功創(chuàng)建模板“解決方案文件”。

注意:在本課程中,以 $ 開頭的表示手動(dòng)在終端輸入的命令行,以 # 開關(guān)的代表注釋,其它是運(yùn)行命令后的輸出。終端我用的是 Windows 中的 PowerShell,如果你用的是 Bash,注意目錄操作的區(qū)別。

你可以到官方文檔了解所有 dotnet 命令行工具的介紹:

https://docs.microsoft.com/en-us/dotnet/core/tools/

然后使用 ASP.NET Core 空模板(代號(hào)為 web)創(chuàng)建一個(gè) Web 項(xiàng)目,取名為 Bookist.Web,并將該項(xiàng)目添加到解決方案:

# 創(chuàng)建一個(gè)空的 Web 項(xiàng)目 $ dotnet new web -o Bookist.Web 在 D:\bookist\Bookist.Web\Bookist.Web.csproj 上運(yùn)行 “dotnet restore”...正在確定要還原的項(xiàng)目…已還原 D:\bookist\Bookist.Web\Bookist.Web.csproj (用時(shí) 69 ms)。 已成功還原。# 將 Bookist.Web 項(xiàng)目添加到當(dāng)前解決方案 $ dotnet sln add Bookist.Web 已將項(xiàng)目“Bookist.Web\Bookist.Web.csproj”添加到解決方案中。

命令執(zhí)行后,項(xiàng)目的目錄結(jié)構(gòu)如下:

這里暫且不介紹各個(gè)目錄和文件,后面講到相關(guān)知識(shí)點(diǎn)的時(shí)候再介紹。

現(xiàn)在,切換到 Bookist.Web 目錄,使用下面命令運(yùn)行項(xiàng)目:

$?cd .\Bookist.Web\ $ dotnet run 正在生成... info: Microsoft.Hosting.Lifetime[14]Now listening on: https://localhost:7269 info: Microsoft.Hosting.Lifetime[14]Now listening on: http://localhost:5296 info: Microsoft.Hosting.Lifetime[0]Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0]Hosting environment: Development info: Microsoft.Hosting.Lifetime[0]Content root path: D:\MyGitHub\bookist\Bookist.Web

打開瀏覽器訪問(wèn)命令行提示的任意一個(gè)網(wǎng)址(比如這里的 http://localhost:5296,你的端口號(hào)可能和我的不一樣,你也可以使用 ctrl + 鼠標(biāo)單擊 直接打開)。看到如下頁(yè)面說(shuō)明一切正常:

如果你使用的是 VS 開發(fā),則直接通過(guò)可視化窗口即可完成上面的命令行操作。

4小結(jié)

這節(jié)課主要讓大家了解 MVP 迭代增量開發(fā)的理念,并準(zhǔn)備好 .NET 6 開發(fā)環(huán)境,和了解基本的 dotnet 命令行工具的使用。

一個(gè)電子書分享網(wǎng)站,最重要的功能就是電子書的展示并能夠讓用戶下載。為了快速上線,我們的網(wǎng)站第一個(gè)版本將只展現(xiàn)一本電子書的分享,前期不考慮架構(gòu)設(shè)計(jì)和數(shù)據(jù)庫(kù)設(shè)計(jì),首要目的先把從開發(fā)到上線的流程走通。

所以,下一篇我們將實(shí)現(xiàn)書大師網(wǎng)站的最小基礎(chǔ)功能,并部署到生產(chǎn)環(huán)境,快速完成第一個(gè)版本的上線。

總結(jié)

以上是生活随笔為你收集整理的[031] 实战:书大师网站开发准备的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。