Skip to content

Commit e762215

Browse files
committed
AIによる校正
1 parent 7baa2b5 commit e762215

File tree

13 files changed

+60
-36
lines changed

13 files changed

+60
-36
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@
1717
- Astroの考え方を知ろう
1818
- レイアウトを作ろう
1919
- ページを作ってみよう
20-
- Chapter 3: ブログ投稿を作ろう
20+
- Chapter 2: ブログ投稿を作ろう
2121
- AstroとMarkdown
2222
- Markdownでブログ記事を書こう
2323
- コンテンツ管理をしてみよう
24-
- Chapter 4: Astroをデプロイしてみよう
24+
- Chapter 3: Astroをデプロイしてみよう
2525
- トップページを完成させよう
2626
- GitHub Pagesにデプロイしよう
2727

docs/ch0/1_env.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@
77
- [Visual Studio Code](https://code.visualstudio.com)
88
- プログラミングをするエディタです。
99
- [Node.js](https://nodejs.org/ja)
10-
- プログラム(JavaScript)を動作させるランタイムです
10+
- プログラム(JavaScript)を動作させるランタイム(実行環境)です
1111
- [pnpm](https://pnpm.io/ja/)
1212
- パッケージマネージャーと呼ばれる、Node.jsのパッケージや実行などの機能を管理するツールです。
1313
- デフォルトで付属するnpmでも十分ですが、パフォーマンスなどにメリットがあります。
1414
- [git](https://git-scm.com)
1515
- コミットという単位でファイルの更新履歴を管理するバージョン管理システムです。
1616
- [GitHub](https://github.com)
1717
- gitのレポジトリをインターネット上に上げるサービスです。
18-
- 学生は有料版が無料で使えます。GitHub CopilotというAIがコード書いてくれるサービスも無料です
18+
- 学生は有料版が無料で使えます。GitHub CopilotというAIがコードを記述してくれるサービスも無料です
1919

2020
### コマンドの確認
2121

@@ -30,7 +30,7 @@ $ node -v
3030
>[!NOTE]
3131
> ここでの `$` はコマンド実行の先頭であることを表しています。この場合、あなたが入力するのは `node -v` だけです。
3232
33-
導入に成功しているならば、バージョンが表示されるはずです
33+
導入に成功していれば、バージョンが表示されます
3434

3535
![cmd](/docs/ch0/img/cmd.jpg)
3636

docs/ch0/2_clone_and_push.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ $ pnpm run dev
2525

2626
サーバーが起動し、 http://localhost:4321 に以下のようなページができれば成功です。
2727

28+
> [!NOTE]
29+
> `localhost:4321`は「自分のパソコン上の4321番ポートで動いているサーバー」という意味です。開発中は、このURLでWebサイトを確認できます。
30+
2831
![](/docs/ch0/img/astro-init-screenshot.png)
2932

3033
Astroへようこそ 🚀
@@ -103,7 +106,7 @@ $ git push
103106

104107
### (補足)VSCodeでgit操作
105108

106-
gitのコマンドを覚えるの、大変ですよね。でも大丈夫!VSCodeにはgitを操作するツールがついています!
109+
gitのコマンドを覚えるのは大変ですが、VSCodeにはgitを操作するツールが付属しています。
107110

108111
![](/docs/ch0/img/vscode-git.png)
109112

docs/ch0/3_astro_tech.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ JavaScriptに静的な型をつけられるようにした言語です。
1818

1919
## JSX
2020

21-
HTML(厳密には違う)をJavaScriptのコード内に書けるようにした言語です。元々はReactというWebフレームワークのために作られました。
21+
HTMLのようにタグを書きながら、JavaScriptのロジックも一緒に書ける記法です。元々はReactというWebフレームワークのために作られました。
2222

2323
```jsx
2424
function Hello(name) {
@@ -29,6 +29,6 @@ function Hello(name) {
2929
}
3030
```
3131

32-
HTMLをJavaScriptのロジックで記述できるため、複雑なUIも比較的楽に書けるメリットがあります
32+
HTMLの書き方とJavaScriptの変数や関数を組み合わせることで、複雑なUIをもったWebページを作りやすくなります
3333

3434
[次のページへ](/docs/ch0/4_javascript.md)

docs/ch0/4_javascript.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ console.log(object);
5757
console.log(object.name);
5858
```
5959

60-
これを実行してみると色々出力されますよね。順番に見ていきましょう
60+
これを実行してみると様々な値が出力されます。順番に確認していきましょう
6161

6262
### 変数の定義
6363

@@ -67,7 +67,7 @@ JavaScriptには2つの変数があります。
6767

6868
- `const variable = ...`
6969
- constは変更不可能です。
70-
- `let varivable = ...`
70+
- `let variable = ...`
7171
- letは変更可能です。
7272
- `variable = ...` という形で代入する値を変えられます。
7373

@@ -113,13 +113,13 @@ console.log(multiplyNumber(5, 3)); // Output: 15
113113

114114
```
115115

116-
実行すると、8と2が出力されるはずです
116+
実行すると、8、2、15が出力されます
117117

118118
JavaScriptには関数定義の方法が2つあります。通常の関数宣言とアロー関数です。
119119

120-
アロー関数は比較的近年できた方法です。短く書けるので推奨している人も多いです。
120+
アロー関数は比較的近年できた記法です。短く書けるので推奨している人も多いです。
121121

122-
特にmapメソッドなどは圧倒的に楽になります
122+
特にmapメソッド(配列の各要素を変換する機能)などでは、コードがとても短くなり便利です
123123

124124
```js
125125
const numArray = [1, 2, 3]
@@ -196,13 +196,13 @@ export const subtractNumber = (a, b) => {
196196

197197
```js
198198
// index.js インポート側
199-
import { addNumber, substractNumber } from './lib' // 名前は固定される
199+
import { addNumber, subtractNumber } from './lib.js' // 名前は固定される
200200

201201
console.log(addNumber(5, 3)); // Output: 8
202202
console.log(subtractNumber(5, 3)); // Output: 2
203203
```
204204

205-
#### default import
205+
#### default export
206206

207207
`export default` という構文を用います。1ファイルあたり1つしか使うことができませんが、インポート側で名前を変更することができます。
208208

@@ -247,9 +247,9 @@ const addNumber = (a, b) => {
247247
+ console.log(addNumber(1, '2')); // 12
248248
```
249249

250-
これはJavaScriptの仕様で、文字列型が優先されるのです。これは意図していない動作ですよね。
250+
JavaScriptは実行時に変数の型を判別するため、このようなことが起こります。これは意図していない動作ですよね。
251251

252-
では、これを防ぐにはどうしたらいいでしょうか。ここで登場するのが **TypeScript** です。
252+
これを防ぐにはどうしたらいいでしょうか。ここで登場するのが **TypeScript** です。
253253

254254
### TypeScriptの初歩
255255

@@ -308,11 +308,11 @@ index.ts:5:26 - error TS2345: Argument of type 'string' is not assignable to par
308308
Found 1 error in index.ts:5
309309
```
310310

311-
きちんとエラーが出てくれました。これでバグを未然に防ぐことができましたね
311+
きちんとエラーが検出されました。これでバグを未然に防ぐことができます
312312

313313
このように、プログラムが実行される際に、データ型に矛盾が生じないことを保証することを **型安全性** と呼びます。
314314

315-
TypeScriptは **JavaScriptの型安全を高めた言語** といえるでしょう。
315+
TypeScriptは **JavaScriptに型安全性を追加した言語** といえるでしょう。
316316

317317
### 型定義の `type``interface`
318318

docs/ch1/3_create_layout.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ header {
132132
</style>
133133
```
134134

135-
既にCSSについては学習しているかと思いますので詳細は説明しませんが、flexboxを活用して両脇に配置していますね
135+
既にCSSについては学習済みかと思いますので詳細は省略しますが、flexboxを活用して両脇に配置しています
136136

137137
これを `src/layouts/default.astro` で読み込みましょう。
138138

@@ -157,15 +157,15 @@ import '../styles/global.css'
157157
</html>
158158
```
159159

160-
こんな感じのヘッダーが確認できるはずです!
160+
こんな感じのヘッダーが確認できます。
161161

162162
![](/docs/ch1/img/header.png)
163163

164164
ここまでのコミットログ: [ac7c995](https://github.com/s-union/astro-hands-on/commit/ac7c995e629858189fc5a80f1e56b4eaa3dd30b1)
165165

166166
## フッターを作ろう
167167

168-
続いてフッターも簡易的にですが実装しましょう。今回は事前に読み込んだCSSでフッターが一番下になるように調整されているのでそのまま書いていきます。
168+
続いてフッターも簡単なものを実装しましょう。今回は事前に読み込んだCSSでフッターが一番下になるように調整されているのでそのまま書いていきます。
169169

170170
```astro
171171
---

docs/ch1/4_create_pages.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,12 @@ const { title } = Astro.props;
5353
</style>
5454
```
5555

56-
注目すべきなのは `Props` の部分です。各コンポーネントはpropsという引数を定義し、そこに好きな値を入れることで、コンポーネントの再使用性を高めています。
56+
注目すべきなのは `Props` の部分です。各コンポーネントはprops(プロパティ)という引数を定義し、そこに値を入れることで、コンポーネントの再使用性を高めています。
5757

58-
ただし、どんな値でも入れてよいわけではなく、今回の場合は `title``string` 型のみが入るよう設定しています(ここはTypeScriptの記述方式ですね)。
58+
> [!NOTE]
59+
> propsとは「properties(属性)」の略で、コンポーネントに外部から値を渡すための仕組みです。
60+
61+
ただし、どんな値でも入れてよいわけではなく、今回の場合は `title``string` 型(文字列)のみが入るよう設定しています(これはTypeScriptの機能ですね)。
5962

6063
### Titleコンポーネントを利用しよう
6164

docs/ch2/1_markdown.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
Markdownとは、文章を記述するための軽量なマークアップ言語です。シンプルな記述で太字や斜線、見出しなどの装飾を行うことができます。MarkdownはHTMLに変換することを念頭に設計されましたが、その手軽さと汎用性の高さからWordやPowerpointなどの別のファイル形式にも変換できるようなツールも開発されています。
1010

11-
**このハンズオンもMarkdownで記述されています。** PreviewをCodeにするとそれが分かると思います
11+
**このハンズオンもMarkdownで記述されています。** PreviewをCodeにするとそれが確認できます
1212

1313
## Markdownの書き方
1414

@@ -20,7 +20,7 @@ Markdownはただのプレーンテキストですので、メモ帳などでも
2020

2121
## Markdownの記法
2222

23-
Markdownには様々な仕様(方言)が存在していますが、[GitHub Flavored Markdown](https://github.github.com/gfm/)という仕様がよく用いられています。今回のハンズオンでもこの仕様に準拠した形で説明したいと思います
23+
Markdownには様々な書き方の仕様(方言)が存在していますが、[GitHub Flavored Markdown](https://github.github.com/gfm/)というGitHubが定めた標準的な仕様がよく用いられています。今回のハンズオンでもこの仕様に沿って説明したいと思います
2424

2525
### 見出し
2626

@@ -146,7 +146,7 @@ Markdownには様々な仕様(方言)が存在していますが、[GitHub Flavo
146146

147147
これらのMarkdownはあくまでも一例です!この他にも、例えば[TeX互換の数式を扱えたり](https://docs.github.com/ja/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions)[ハイライト付きのコードブロックを使えたり](https://docs.github.com/ja/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks)します。
148148

149-
参考資料をベースに調べてみるといいでしょう
149+
参考資料をベースに調べてみることをお勧めします
150150

151151
## 参考
152152

docs/ch2/3_content_collection.md

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Astroではコンテンツ管理を行うための機能が備わっています。今回はこれを利用して、ブログ記事を型安全に取り出す方法を学びます。
44

55
> [!IMPORTANT]
6-
> 今回の内容はTypeScriptをある程度理解している人向けですので、全てを理解する必要はありません。難しいと感じたらコピペでも大丈夫です
6+
> 今回の内容は少し高度ですが、サンプルコードをコピーして使えばちゃんと動作します。最初は全てを理解する必要はありませんので、まずは手を動かして体験してみることから始めましょう
77
88
## コンテンツ管理の設定をしよう
99

@@ -34,7 +34,10 @@ export const collections = { blog };
3434

3535
### 解説
3636

37-
Astroには `defineCollection` という関数を定義し、それをエクスポートすることで、外部から型安全にコンテンツを参照する仕組みがあります。
37+
Astroには `defineCollection` という関数を用意して、それをエクスポートすることで、外部から安全にコンテンツを参照する仕組みがあります。
38+
39+
> [!NOTE]
40+
> これによって、ブログ記事などのコンテンツを簡単に管理できるようになります。また、TypeScriptの型チェック機能により、データの形式が正しいかどうかも自動で確認してくれます。
3841
3942
<details>
4043
<summary>より詳細な解説(TypeScriptに慣れている人向け)</summary>
@@ -43,11 +46,17 @@ Astroには `defineCollection` という関数を定義し、それをエクス
4346

4447
#### loader
4548

46-
コンテンツを読み込む方式を定義します。今回の場合、 `glob` という関数を用いて `src/content/blog` 以下の拡張子 `.md` のファイルを読み込むように指定しています。
49+
コンテンツを読み込む方式を定義します。
50+
51+
> [!NOTE]
52+
> loaderとは、ファイルをどのように読み込むかを決める設定です。今回は `glob` という機能を使って、`src/content/blog` フォルダ内のすべての `.md` ファイルを自動で見つけて読み込むように設定しています。
4753
4854
#### schema
4955

50-
スキーマという、loaderで読み込んだデータのデータ構造(今回の場合Markdownのフロントマター)を定義し、読み込み時にそのデータ構造と一致しているかをチェックします。
56+
スキーマ(schema)とは、データの構造や形式を定義するもので、ここではloaderで読み込んだデータのデータ構造(今回の場合Markdownのフロントマター)を定義し、読み込み時にそのデータ構造と一致しているかをチェックします。
57+
58+
> [!NOTE]
59+
> 簡単に言うと「このブログ記事にはtitleとcreatedが必須で、updatedは任意」といったルールを決めることです。こうすることで、間違ったデータが入ってもエラーで教えてくれます。
5160
5261
[Zod](https://zod.dev) というライブラリが元になっており、こうすることで予期しないデータ構造にエラーを出したり、コンテンツを読み込む際に型安全にオプションを使うことができます。
5362

@@ -108,7 +117,10 @@ const { Content } = await render(entry);
108117

109118
### 解説
110119

111-
Astroは `getStaticPaths()` という関数を使うことで、動的にルーティングを設定することができます。こうすることで、Markdownファイルを増やすだけで、自動でURLが設定されるようになり、管理の手間が省けるというわけです。
120+
Astroは `getStaticPaths()` という関数を使うことで、動的にルーティングを設定することができます。
121+
122+
> [!NOTE]
123+
> これは「どのURLでどのページを表示するか」をプログラムで自動的に決める機能です。こうすることで、Markdownファイルを増やすだけで、自動でURLが設定されるようになり、管理の手間が省けるというわけです。
112124
113125
<details>
114126
<summary>より詳細な解説(TypeScriptに慣れている人向け)</summary>

docs/ch2/4_blog_style.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# ブログのスタイルを調整しよう
22

3-
ここまででブログの記事を表示させることができましたが少し味気無いですね。CSSを書いてスタイルを調整していきましょう。
3+
ここまででブログの記事を表示させることができましたが、少し味気ないですね。CSSを書いてスタイルを調整していきましょう。
44

55
## 画像ファイルを読み込む
66

@@ -80,7 +80,7 @@ const image = imageModules[`../../images/${entry.data.cover}`];
8080
</style>
8181
```
8282

83-
Astroには `<Image />` というコンポーネントがあります。このコンポーネントに画像を渡すと、画像を自動で圧縮し、 `.webp` という拡張子で出力してくれます。ただファイルサイズが小さくなるだけでなく、現代のWebサイトは圧縮した画像形式である `.webp` `.avif` であることが求められているので、これはとてもありがたい機能ですよね
83+
Astroには `<Image />` というコンポーネントがあります。このコンポーネントに画像を渡すと、画像を自動で圧縮し、 `.webp` という拡張子で出力してくれます。ファイルサイズが小さくなるだけでなく、現代のWebサイトでは圧縮した画像形式である `.webp` `.avif` の利用が推奨されているため、これは非常に有用な機能です
8484

8585
## 残りのスタイルも調整する
8686

0 commit comments

Comments
 (0)