<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>未分類  |  OZの教える×プログラミング成長記</title>
	<atom:link href="https://oz006.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>https://oz006.com</link>
	<description></description>
	<lastBuildDate>Wed, 11 Jun 2025 05:12:31 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://oz006.com/wp-content/uploads/2024/10/cropped-OZLogo-32x32.png</url>
	<title>未分類  |  OZの教える×プログラミング成長記</title>
	<link>https://oz006.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Rails CRUD操作を学ぼう！初心者向け完全ガイド</title>
		<link>https://oz006.com/rails-crud/</link>
					<comments>https://oz006.com/rails-crud/#respond</comments>
		
		<dc:creator><![CDATA[oz]]></dc:creator>
		<pubDate>Wed, 11 Jun 2025 05:12:30 +0000</pubDate>
				<category><![CDATA[未分類]]></category>
		<guid isPermaLink="false">https://oz006.com/?p=716</guid>

					<description><![CDATA[Contents 第1章：CRUDって何？第2章：Railsでの準備 &#8211; コントローラーの基本第3章：Create（作成）- 新しい商品を作ろう3-1. newアクション（フォームを表示）3-2. フォームを [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="1000" height="1000" src="https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-11-14.11.41-A-conceptual-illustration-of-Ruby-CRUD-operations-Create-Read-Update-Delete-in-a-web-development-context.-The-image-shows-a-laptop-with-Ruby-code.webp" alt="" class="wp-image-718" srcset="https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-11-14.11.41-A-conceptual-illustration-of-Ruby-CRUD-operations-Create-Read-Update-Delete-in-a-web-development-context.-The-image-shows-a-laptop-with-Ruby-code.webp 1000w, https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-11-14.11.41-A-conceptual-illustration-of-Ruby-CRUD-operations-Create-Read-Update-Delete-in-a-web-development-context.-The-image-shows-a-laptop-with-Ruby-code-300x300.webp 300w, https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-11-14.11.41-A-conceptual-illustration-of-Ruby-CRUD-operations-Create-Read-Update-Delete-in-a-web-development-context.-The-image-shows-a-laptop-with-Ruby-code-150x150.webp 150w, https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-11-14.11.41-A-conceptual-illustration-of-Ruby-CRUD-operations-Create-Read-Update-Delete-in-a-web-development-context.-The-image-shows-a-laptop-with-Ruby-code-768x768.webp 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></figure>



<div id="rtoc-mokuji-wrapper" class="rtoc-mokuji-content frame2 preset6 animation-fade rtoc_open default" data-id="716" data-theme="Cocoon Child">
			<div id="rtoc-mokuji-title" class=" rtoc_left">
			<button class="rtoc_open_close rtoc_open"></button>
			<span>Contents</span>
			</div><ol class="rtoc-mokuji decimal_ol level-1"><li class="rtoc-item"><a href="#rtoc-1">第1章：CRUDって何？</a></li><li class="rtoc-item"><a href="#rtoc-2">第2章：Railsでの準備 &#8211; コントローラーの基本</a></li><li class="rtoc-item"><a href="#rtoc-3">第3章：Create（作成）- 新しい商品を作ろう</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-4">3-1. newアクション（フォームを表示）</a></li><li class="rtoc-item"><a href="#rtoc-5">3-2. フォームを作る（new.html.erb）</a></li><li class="rtoc-item"><a href="#rtoc-6">3-3. createアクション（実際に保存）</a></li></ul></li><li class="rtoc-item"><a href="#rtoc-7">第4章：Read（読み取り）- 商品を見よう</a></li><li class="rtoc-item"><a href="#rtoc-8">第5章：Update（更新）- 商品を編集しよう</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-9">5-1. editアクション（編集フォームを表示）</a></li><li class="rtoc-item"><a href="#rtoc-10">5-2. updateアクション（実際に更新）</a></li></ul></li><li class="rtoc-item"><a href="#rtoc-11">第6章：DRY原則で賢くコーディング</a></li><li class="rtoc-item"><a href="#rtoc-12">第7章：パーシャルでビューもDRYに</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-13">7-1. パーシャルファイル（_form.html.erb）</a></li><li class="rtoc-item"><a href="#rtoc-14">7-2. newビューで使用</a></li><li class="rtoc-item"><a href="#rtoc-15">7-3. editビューで使用</a></li></ul></li><li class="rtoc-item"><a href="#rtoc-16">第8章：Delete（削除）- 商品を削除しよう</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-17">削除ボタンの作成（show.html.erb）</a></li></ul></li><li class="rtoc-item"><a href="#rtoc-18">第9章：完成したコントローラー</a></li><li class="rtoc-item"><a href="#rtoc-19">第10章：まとめ &#8211; CRUDを覚えよう！</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-20">Railsのルール</a></li></ul></li><li class="rtoc-item"><a href="#rtoc-21">付録：よく使うRailsのメソッド一覧</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-22">コントローラーでよく使うメソッド</a></li><li class="rtoc-item"><a href="#rtoc-23">ビューでよく使うヘルパー</a></li></ul></li></ol></div><h2 id="rtoc-1"  class="wp-block-heading">第1章：CRUDって何？</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">プロ太先生、CRUDって何ですか？クラッド？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">CRUDは、4つの英単語の頭文字を取ったものなんだよ。</p>
</div></div>



<ul class="wp-block-list">
<li><strong>C</strong>reate（作成）- 新しいデータを作る</li>



<li><strong>R</strong>ead（読み取り）- データを見る・表示する</li>



<li><strong>U</strong>pdate（更新）- 既存のデータを変更する</li>



<li><strong>D</strong>elete（削除）- データを消す</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">なるほど！つまり、データの基本的な操作ってことですね。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！例えば、君がSNSに投稿するとき…<br>・新しい投稿を書く（Create）<br>・投稿を見る（Read）<br>・投稿を編集する（Update）<br>・投稿を削除する（Delete）<br>これ全部CRUDなんだ！</p>
</div></div>



<h2 id="rtoc-2"  class="wp-block-heading">第2章：Railsでの準備 &#8211; コントローラーの基本</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">じゃあ、実際にRailsで商品（Product）を管理するシステムを作ってみよう。まずは基本のコントローラーから見てみよう。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>class ProductsController &lt; ApplicationController
  # 商品一覧を表示するアクション
  def index
    @products = Product.all  # 全ての商品をデータベースから取得
  end

  # 個別の商品を表示するアクション
  def show
    @product = Product.find(params[:id])  # IDを使って特定の商品を取得
  end
end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><code>@products</code>と<code>@product</code>って何で@マークが付いてるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">いい質問だね！<strong><span class="marker-under">@マークが付いた変数は「インスタンス変数」と呼ばれて、コントローラーからビュー（画面）に値を渡すための特別な変数</span></strong>なんだ。</p>
</div></div>



<p class="wp-block-paragraph">覚え方：<strong>@マーク = アット（at）= そこにある</strong> つまり、画面でも使えるようにそこに置いておく変数だと思えばいいよ！</p>



<h2 id="rtoc-3"  class="wp-block-heading">第3章：Create（作成）- 新しい商品を作ろう</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">じゃあ、実際に新しい商品を作る機能を追加してみよう！</p>
</div></div>



<h3 id="rtoc-4"  class="wp-block-heading">3-1. newアクション（フォームを表示）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>class ProductsController &lt; ApplicationController
  def index
    @products = Product.all  # 全商品を表示用に取得
  end

  def show
    @product = Product.find(params[:id])  # 指定された商品を取得
  end

  def new
    @product = Product.new  # 新しい空の商品オブジェクトを作成
  end
end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><code>Product.new</code>って何ですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">これは「まっさらな商品の箱」を用意するイメージだよ。まだ中身は何も入っていないけど、これからユーザーが情報を入力するための準備をしているんだ。</p>
</div></div>



<h3 id="rtoc-5"  class="wp-block-heading">3-2. フォームを作る（new.html.erb）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>&lt;h1&gt;New product&lt;/h1&gt;

&lt;%= form_with model: @product do |form| %&gt;
  &lt;div&gt;
    &lt;%= form.label :name %&gt;        &lt;!-- 「商品名」というラベルを表示 --&gt;
    &lt;%= form.text_field :name %&gt;   &lt;!-- 商品名を入力するテキストボックス --&gt;
  &lt;/div&gt;

  &lt;div&gt;
    &lt;%= form.submit %&gt;             &lt;!-- 「Create Product」ボタンを表示 --&gt;
  &lt;/div&gt;
&lt;% end %&gt;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><code>form_with</code>って何ですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">これはRailsの魔法の道具だよ！<code>form_with</code>は、</p>



<ol class="wp-block-list">
<li>自動的にセキュリティ対策をしてくれる</li>



<li>送信先のURLを自動で決めてくれる</li>



<li>ボタンの文字も自動で決めてくれる</li>
</ol>
</div></div>



<p class="wp-block-paragraph">覚え方：<strong>form_with = フォーム・ウィズ = フォームと一緒に全部やってくれる</strong></p>



<h3 id="rtoc-6"  class="wp-block-heading">3-3. createアクション（実際に保存）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>def create
  # フォームから送られてきた安全なデータだけを使って新しい商品を作成
  @product = Product.new(product_params)
  
  if @product.save  # データベースに保存を試みる
    # 保存成功：商品詳細ページにリダイレクト
    redirect_to @product
  else
    # 保存失敗：エラーメッセージと一緒にフォームを再表示
    render :new, status: :unprocessable_entity
  end
end

private
  # セキュリティのため、許可されたパラメータのみを受け取る
  def product_params
    params.expect(product: [ :name ])  # 商品の名前のみ許可
  end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><code><strong><span class="marker-under">product_params</span></strong></code>って何ですか？なんで必要なんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">これは「セキュリティガード」だよ！<br>例えば、悪い人が「商品の価格を0円にしちゃおう」とか「管理者権限をもらっちゃおう」みたいな不正なデータを送ってきても、<code>product_params</code>が「あ、それは許可されていません！」と止めてくれるんだ。</p>
</div></div>



<h2 id="rtoc-7"  class="wp-block-heading">第4章：Read（読み取り）- 商品を見よう</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">実は、Readはもうできているんだよ！</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>def index
  @products = Product.all  # 全商品を取得（一覧表示用）
end

def show
  @product = Product.find(params[:id])  # 特定の商品を取得（詳細表示用）
end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">あ、本当ですね！indexとshowがReadなんですね。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！</p>



<ul class="wp-block-list">
<li><strong>index</strong> = 図書館の本棚全体を見る</li>



<li><strong>show</strong> = 特定の1冊を手に取って読む</li>
</ul>



<p class="wp-block-paragraph">こんなイメージだよ！</p>
</div></div>



<h2 id="rtoc-8"  class="wp-block-heading">第5章：Update（更新）- 商品を編集しよう</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">更新は作成とよく似ているよ。<br>editとupdateの2つのアクションが必要なんだ。</p>
</div></div>



<h3 id="rtoc-9"  class="wp-block-heading">5-1. editアクション（編集フォームを表示）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>def edit
  @product = Product.find(params[:id])  # 編集したい商品を取得
end</code></pre></div>



<h3 id="rtoc-10"  class="wp-block-heading">5-2. updateアクション（実際に更新）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>def update
  @product = Product.find(params[:id])  # 更新したい商品を取得
  
  if @product.update(product_params)  # 新しいデータで更新を試みる
    # 更新成功：商品詳細ページにリダイレクト
    redirect_to @product
  else
    # 更新失敗：エラーメッセージと一緒に編集フォームを再表示
    render :edit, status: :unprocessable_entity
  end
end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">createとupdateって似てますね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">違いはこれだけだよ。</p>



<ul class="wp-block-list">
<li><strong>create</strong>: <code>Product.new</code> → <code>save</code>（新しく作って保存）</li>



<li><strong>update</strong>: <code>Product.find</code> → <code>update</code>（既存を見つけて更新）</li>
</ul>
</div></div>



<h2 id="rtoc-11"  class="wp-block-heading">第6章：DRY原則で賢くコーディング</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">今のコードを見ると、同じことを何度も書いていることは分かるかな？。まず、改善前のコードを見てみよう！</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>class ProductsController &lt; ApplicationController
  def show
    @product = Product.find(params[:id])  # ←同じコード
  end

  def edit
    @product = Product.find(params[:id])  # ←同じコード
  end

  def update
    @product = Product.find(params[:id])  # ←同じコード
    # 更新処理...
  end

  def destroy
    @product = Product.find(params[:id])  # ←同じコード
    # 削除処理...
  end
end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">あ、本当ですね！<code>@product = Product.find(params[:id])</code>が4回も書いてある！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そうなんだ！これを「DRY原則」で改善しよう！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">DRY原則って何ですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">DRY = <strong>D</strong>on&#8217;t <strong>R</strong>epeat <strong>Y</strong>ourself（同じことを繰り返すな）という意味だよ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">ということで、<code>before_action</code>を使って、重複するコードをまとめよう！</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>class ProductsController &lt; ApplicationController
  # show, edit, update, destroyアクションの前に自動実行
  before_action :set_product, only: %i[ show edit update destroy ]

  def index
    @products = Product.all  # 全商品を取得
  end

  def show
    # @productは既にset_productで設定済み！
    # Product.find(params[:id])を書く必要がない
  end

  def new
    @product = Product.new  # 新しい商品オブジェクトを作成
  end

  def create
    @product = Product.new(product_params)  # フォームデータから商品を作成
    
    if @product.save  # 保存を試みる
      redirect_to @product  # 成功時は詳細ページへ
    else
      render :new, status: :unprocessable_entity  # 失敗時はフォーム再表示
    end
  end

  def edit
    # @productは既にset_productで設定済み！
    # Product.find(params[:id])を書く必要がない
  end

  def update
    # @productは既にset_productで設定済み！
    if @product.update(product_params)  # 更新を試みる
      redirect_to @product  # 成功時は詳細ページへ
    else
      render :edit, status: :unprocessable_entity  # 失敗時は編集フォーム再表示
    end
  end

  def destroy
    # @productは既にset_productで設定済み！
    @product.destroy           # データベースから削除
    redirect_to products_path  # 商品一覧ページにリダイレクト
  end

  private
    def set_product
      @product = Product.find(params[:id])  # IDから商品を検索
    end

    def product_params
      params.expect(product: [ :name ])  # 許可されたパラメータのみ取得
    end
end</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">わあ、すっきりしました！<br>4回書いていたコードが1回だけになりましたね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そうだね！これの何がいいかというと、</p>



<ol class="wp-block-list">
<li><strong>コードが短くなる</strong>: 同じことを何度も書かなくていい</li>



<li><strong>バグが減る</strong>: 修正は1箇所だけでOK</li>



<li><strong>読みやすい</strong>: 何をしているか一目瞭然</li>
</ol>



<p class="wp-block-paragraph">例えば、もし<code>Product.find(params[:id])</code>を<code>Product.find(params[:product_id])</code>に変更したくなったら、改善前は4箇所を修正する必要があったけど、今は1箇所だけでいいんだ！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">なるほど！修正し忘れでバグが起きることもなくなりますね。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！<code>before_action</code>は「アクションの前に自動で実行される準備係」だと思えばいいよ。</p>
</div></div>



<p class="wp-block-paragraph">覚え方：<strong>before_action = 前もって準備 = アクションの前にお膳立てしてくれる</strong></p>



<p class="wp-block-paragraph">実際の動作はこんな感じです。</p>



<ol class="wp-block-list">
<li>ユーザーが商品詳細ページにアクセス</li>



<li>Railsが「showアクションを実行するよ」と準備</li>



<li><strong>before_action</strong>が「ちょっと待って！まず商品を探してくるね」</li>



<li><code>set_product</code>が実行されて<code>@product</code>に商品が入る</li>



<li>やっと<code>show</code>アクションが実行される</li>
</ol>



<h2 id="rtoc-12"  class="wp-block-heading">第7章：パーシャルでビューもDRYに</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">コントローラーがすっきりしたら、今度はビューもDRYにしよう！<br>新規作成と編集で同じフォームを使っているから、パーシャル（部品）として切り出そう。</p>
</div></div>



<h3 id="rtoc-13"  class="wp-block-heading">7-1. パーシャルファイル（_form.html.erb）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>&lt;%= form_with model: product do |form| %&gt;
  &lt;div&gt;
    &lt;%= form.label :name %&gt;        &lt;!-- 商品名のラベル --&gt;
    &lt;%= form.text_field :name %&gt;   &lt;!-- 商品名の入力欄 --&gt;
  &lt;/div&gt;

  &lt;div&gt;
    &lt;%= form.submit %&gt;             &lt;!-- 送信ボタン（自動でテキスト設定） --&gt;
  &lt;/div&gt;
&lt;% end %&gt;</code></pre></div>



<h3 id="rtoc-14"  class="wp-block-heading">7-2. newビューで使用</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>&lt;h1&gt;New product&lt;/h1&gt;

&lt;%= render &quot;form&quot;, product: @product %&gt;  &lt;!-- パーシャルを呼び出し --&gt;
&lt;%= link_to &quot;Cancel&quot;, products_path %&gt;   &lt;!-- キャンセルリンク --&gt;</code></pre></div>



<h3 id="rtoc-15"  class="wp-block-heading">7-3. editビューで使用</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>&lt;h1&gt;Edit product&lt;/h1&gt;

&lt;%= render &quot;form&quot;, product: @product %&gt;  &lt;!-- 同じパーシャルを使用 --&gt;
&lt;%= link_to &quot;Cancel&quot;, @product %&gt;        &lt;!-- キャンセルリンク --&gt;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">パーシャルって何ですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">パーシャルは「部品」だよ！</p>



<p class="wp-block-paragraph">例えば、LEGOブロックを想像してみて。同じパーツを色んな場所で使い回せるでしょ？パーシャルも同じで、同じビューの部品を色んなページで使い回せるんだ。</p>
</div></div>



<p class="wp-block-paragraph">Point：</p>



<ul class="wp-block-list">
<li><strong>パーシャル = 部品 = 使い回せる画面の部品</strong></li>



<li><strong>ファイル名は_（アンダースコア）で始まる</strong></li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 id="rtoc-16"  class="wp-block-heading">第8章：Delete（削除）- 商品を削除しよう</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">最後は削除機能だ！これが一番シンプルだよ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>def destroy
  @product.destroy           # 商品をデータベースから削除
  redirect_to products_path  # 商品一覧ページにリダイレクト
end</code></pre></div>



<h3 id="rtoc-17"  class="wp-block-heading">削除ボタンの作成（show.html.erb）</h3>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>&lt;h1&gt;&lt;%= @product.name %&gt;&lt;/h1&gt;

&lt;%= link_to &quot;Back&quot;, products_path %&gt;           &lt;!-- 戻るリンク --&gt;
&lt;%= link_to &quot;Edit&quot;, edit_product_path(@product) %&gt;  &lt;!-- 編集リンク --&gt;
&lt;%= button_to &quot;Delete&quot;, @product, method: :delete, 
              data: { turbo_confirm: &quot;Are you sure?&quot; } %&gt;  &lt;!-- 削除ボタン --&gt;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><code>turbo_confirm</code>って何ですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">これは「本当に削除していいですか？」という確認ダイアログを表示してくれるんだ。間違って削除ボタンを押しちゃった時の「あー！」を防いでくれる優しい機能だよ。</p>
</div></div>



<p class="wp-block-paragraph">覚え方：<strong>turbo_confirm = ターボ確認 = 高速で確認してくれる</strong></p>



<h2 id="rtoc-18"  class="wp-block-heading">第9章：完成したコントローラー</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">さあ、完成したコントローラーを見てみよう！</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-ruby" data-lang="Ruby"><code>class ProductsController &lt; ApplicationController
  # 指定されたアクションの前に自動実行される準備メソッド
  before_action :set_product, only: %i[ show edit update destroy ]

  # C-R-U-D の R: 全商品を読み取り（一覧表示）
  def index
    @products = Product.all  # 全ての商品をデータベースから取得
  end

  # C-R-U-D の R: 特定商品を読み取り（詳細表示）
  def show
    # @productは既にset_productで設定済み
  end

  # C-R-U-D の C: 新規作成フォームを表示
  def new
    @product = Product.new  # 空の商品オブジェクトを作成
  end

  # C-R-U-D の C: 新しい商品を実際に作成・保存
  def create
    @product = Product.new(product_params)  # 安全なパラメータで商品作成
    
    if @product.save  # データベースへの保存を試みる
      redirect_to @product  # 成功：詳細ページへリダイレクト
    else
      # 失敗：エラーメッセージと共にフォーム再表示
      render :new, status: :unprocessable_entity
    end
  end

  # C-R-U-D の U: 編集フォームを表示
  def edit
    # @productは既にset_productで設定済み
  end

  # C-R-U-D の U: 商品を実際に更新
  def update
    if @product.update(product_params)  # 更新を試みる
      redirect_to @product  # 成功：詳細ページへリダイレクト
    else
      # 失敗：エラーメッセージと共に編集フォーム再表示
      render :edit, status: :unprocessable_entity
    end
  end

  # C-R-U-D の D: 商品を削除
  def destroy
    @product.destroy           # データベースから商品を削除
    redirect_to products_path  # 商品一覧ページへリダイレクト
  end

  private
    # 共通処理：IDから商品を検索して@productに設定
    def set_product
      @product = Product.find(params[:id])
    end

    # セキュリティ：許可されたパラメータのみを取得
    def product_params
      params.expect(product: [ :name ])  # 商品名のみ許可
    end
end</code></pre></div>



<h2 id="rtoc-19"  class="wp-block-heading">第10章：まとめ &#8211; CRUDを覚えよう！</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">プロ太先生、ありがとうございました！CRUDがよく分かりました。これでブログシステムも、ECサイトも、SNSも作れそうですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！CRUDはWebアプリケーションの基本中の基本。これをマスターすれば、どんなアプリでも作れるようになるよ。頑張って練習してね！</p>
</div></div>



<h3 id="rtoc-20"  class="wp-block-heading">Railsのルール</h3>



<ol class="wp-block-list">
<li><strong>DRY原則</strong>: 同じコードは書かない → <code>before_action</code>やパーシャルを使う</li>



<li><strong>Strong Parameters</strong>: セキュリティのため、許可されたデータのみ受け取る</li>



<li><strong>エラーハンドリング</strong>: 成功時はリダイレクト、失敗時は再表示</li>
</ol>



<h2 id="rtoc-21"  class="wp-block-heading">付録：よく使うRailsのメソッド一覧</h2>



<h3 id="rtoc-22"  class="wp-block-heading">コントローラーでよく使うメソッド</h3>



<ul class="wp-block-list">
<li><code>find(id)</code>: IDで1件検索</li>



<li><code>all</code>: 全件取得</li>



<li><code>new</code>: 新しいオブジェクト作成</li>



<li><code>save</code>: データベースに保存</li>



<li><code>update</code>: データベースの更新</li>



<li><code>destroy</code>: データベースから削除</li>



<li><code>redirect_to</code>: 別のページにリダイレクト</li>



<li><code>render</code>: ビューを表示</li>
</ul>



<h3 id="rtoc-23"  class="wp-block-heading">ビューでよく使うヘルパー</h3>



<ul class="wp-block-list">
<li><code>link_to</code>: リンクを作成</li>



<li><code>button_to</code>: ボタンを作成</li>



<li><code>form_with</code>: フォームを作成</li>



<li><code>render</code>: パーシャルを呼び出し</li>
</ul>



<p class="wp-block-paragraph">覚えておくと便利だよ！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oz006.com/rails-crud/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>JavaScriptのFunctionオブジェクトの正体！</title>
		<link>https://oz006.com/javascript-function/</link>
					<comments>https://oz006.com/javascript-function/#respond</comments>
		
		<dc:creator><![CDATA[oz]]></dc:creator>
		<pubDate>Fri, 06 Jun 2025 03:01:24 +0000</pubDate>
				<category><![CDATA[未分類]]></category>
		<guid isPermaLink="false">https://oz006.com/?p=680</guid>

					<description><![CDATA[Contents 第1章：関数って何だろう？ 第2章：関数も実はオブジェクトだった！ 第3章：関数オブジェクトの特別な能力 第4章：Functionコンストラクタの秘密 第5章：関数の種類いろいろ 第6章：実践的な使い方 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full"><img decoding="async" width="1000" height="1000" src="https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-06-12.02.21-A-conceptual-digital-artwork-representing-a-JavaScript-Function.-Abstract-visualization-with-code-elements-such-as-brackets-arrows-and-flow-lines.webp" alt="" class="wp-image-686" srcset="https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-06-12.02.21-A-conceptual-digital-artwork-representing-a-JavaScript-Function.-Abstract-visualization-with-code-elements-such-as-brackets-arrows-and-flow-lines.webp 1000w, https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-06-12.02.21-A-conceptual-digital-artwork-representing-a-JavaScript-Function.-Abstract-visualization-with-code-elements-such-as-brackets-arrows-and-flow-lines-300x300.webp 300w, https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-06-12.02.21-A-conceptual-digital-artwork-representing-a-JavaScript-Function.-Abstract-visualization-with-code-elements-such-as-brackets-arrows-and-flow-lines-150x150.webp 150w, https://oz006.com/wp-content/uploads/2025/06/DALL·E-2025-06-06-12.02.21-A-conceptual-digital-artwork-representing-a-JavaScript-Function.-Abstract-visualization-with-code-elements-such-as-brackets-arrows-and-flow-lines-768x768.webp 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></figure>



<div id="rtoc-mokuji-wrapper" class="rtoc-mokuji-content frame2 preset6 animation-fade rtoc_open default" data-id="680" data-theme="Cocoon Child">
			<div id="rtoc-mokuji-title" class=" rtoc_left">
			<button class="rtoc_open_close rtoc_open"></button>
			<span>Contents</span>
			</div><ol class="rtoc-mokuji decimal_ol level-1"><li class="rtoc-item"><a href="#rtoc-1">第1章：関数って何だろう？</a></li><li class="rtoc-item"><a href="#rtoc-2">第2章：関数も実はオブジェクトだった！</a></li><li class="rtoc-item"><a href="#rtoc-3">第3章：関数オブジェクトの特別な能力</a></li><li class="rtoc-item"><a href="#rtoc-4">第4章：Functionコンストラクタの秘密</a></li><li class="rtoc-item"><a href="#rtoc-5">第5章：関数の種類いろいろ</a></li><li class="rtoc-item"><a href="#rtoc-6">第6章：実践的な使い方</a></li><li class="rtoc-item"><a href="#rtoc-7">まとめ：関数オブジェクトの正体</a><ul class="rtoc-mokuji mokuji_ul level-2"><li class="rtoc-item"><a href="#rtoc-8">関数オブジェクトの特徴</a></li></ul></li></ol></div><h2 id="rtoc-1"  class="wp-block-heading">第1章：関数って何だろう？</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">プロ太先生！JavaScriptの関数って、よく分からないんです。関数って何なんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">いい質問だね、OZくん！関数っていうのは、『お料理のレシピ』みたいなものだと思ってみて。材料（データ）を入れると、決まった手順で調理して、完成品（結果）を返してくれるんだ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// これが「おにぎりを作る」レシピ（関数）
function makeOnigiri(ingredient) {
    return &quot;美味しい&quot; + ingredient + &quot;おにぎり&quot;;
}

// レシピを使って実際に作ってみよう！
let myOnigiri = makeOnigiri(&quot;鮭&quot;);
console.log(myOnigiri); // &quot;美味しい鮭おにぎり&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">あ！<code>ingredient</code>が材料で、<code>makeOnigiri</code>がレシピで、最後に美味しいおにぎりができるんですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！よく理解できているね。</p>
</div></div>



<h2 id="rtoc-2"  class="wp-block-heading">第2章：関数も実はオブジェクトだった！</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">でも先生、『Functionオブジェクト』って何ですか？関数とオブジェクトって違うものじゃないんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">実は、JavaScriptでは関数も『オブジェクト』の一種なんだよ。ビックリでしょ？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">え！？関数がオブジェクト？？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そうなんだ。JavaScriptでは『すべてがオブジェクト』と言われるくらい、いろんなものがオブジェクトなんだよ。関数を調べてみよう！</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 関数を作ってみよう
function sayHello(name) {
    return &quot;こんにちは、&quot; + name + &quot;さん！&quot;;
}

// 関数もオブジェクトだから、プロパティを調べられる！
console.log(typeof sayHello); // &quot;function&quot;
console.log(sayHello.name);   // &quot;sayHello&quot; ← 関数の名前
console.log(sayHello.length); // 1 ← パラメータの数</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">わあ！関数に<code>.name</code>とか<code>.length</code>とかがあるんですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そう！関数はオブジェクトだから、プロパティやメソッドを持っているんだ。さらに面白いことに、関数に新しいプロパティを追加することもできるよ！</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 関数にオリジナルのプロパティを追加！
sayHello.author = &quot;OZくん&quot;;
sayHello.version = &quot;1.0&quot;;

console.log(sayHello.author);  // &quot;OZくん&quot;
console.log(sayHello.version); // &quot;1.0&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">すごい！関数がまるで普通のオブジェクトみたいに使えるんですね！</p>
</div></div>



<h2 id="rtoc-3"  class="wp-block-heading">第3章：関数オブジェクトの特別な能力</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">関数オブジェクトには、普通のオブジェクトにはない特別な能力があるんだ。それは『呼び出せる』ということ！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">呼び出せる？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そう！関数は<code>()</code>をつけることで実行できるよね。これが関数オブジェクトの最大の特徴なんだ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 普通のオブジェクト
let normalObject = {
    name: &quot;普通のオブジェクト&quot;
};

// 関数オブジェクト
function specialObject() {
    return &quot;私は呼び出せるオブジェクトです！&quot;;
}

// 普通のオブジェクトは呼び出せない
// normalObject(); // エラーになる！

// 関数オブジェクトは呼び出せる！
console.log(specialObject()); // &quot;私は呼び出せるオブジェクトです！&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">さらに、関数オブジェクトには便利なメソッドもあるんだよ。<code>call()</code>と<code>apply()</code>っていうメソッドを使うと、関数の実行方法をコントロールできるんだ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">コントロール？どういうことですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">実はね、関数の中で<code>this</code>っていう特別なキーワードを使うことがあるんだ。<code>this</code>は『今、この関数を呼び出しているのは誰？』を表すんだよ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>function introduce(greeting, punctuation) {
    return greeting + &quot;、私は&quot; + this.name + &quot;です&quot; + punctuation;
}

let person = { name: &quot;OZくん&quot; };</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この<code>introduce</code>関数の中に<code>this.name</code>があるでしょ？この<code>this</code>が何を指すかを、<code>call()</code>や<code>apply()</code>で決められるんだ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">あ！<code>this</code>っていうのが『誰のname』かを指定するんですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！見てみよう。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>function introduce(greeting, punctuation) {
    return greeting + &quot;、私は&quot; + this.name + &quot;です&quot; + punctuation;
}

let person = { name: &quot;OZくん&quot; };

// call()を使って関数を実行
// call(誰のthisにするか, 第1引数, 第2引数, ...)
let message1 = introduce.call(person, &quot;こんにちは&quot;, &quot;！&quot;);
console.log(message1); // &quot;こんにちは、私はOZくんです！&quot;

// apply()を使って関数を実行（引数を配列で渡す）
// apply(誰のthisにするか, [引数1, 引数2, ...])
let message2 = introduce.apply(person, [&quot;おはよう&quot;, &quot;。&quot;]);
console.log(message2); // &quot;おはよう、私はOZくんです。&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">つまり、<code>person</code>オブジェクトを<code>this</code>として使って、<code>introduce</code>関数を実行しているんだ。だから<code>this.name</code>は<code>person.name</code>、つまり『OZくん』になるんだよ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">なるほど！別の人のオブジェクトを使ったらどうなるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">いい質問！試してみよう。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>let teacher = { name: &quot;プロ太先生&quot; };

// teacherをthisとして使う
let message3 = introduce.call(teacher, &quot;こんばんは&quot;, &quot;♪&quot;);
console.log(message3); // &quot;こんばんは、私はプロ太先生です♪&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">わあ！同じ関数なのに、違う人の名前が出てきた！すごい！でも先生、<code>call()</code>と<code>apply()</code>って何が違うんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">2つの違いは、引数の渡し方だけなんだよ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">引数の渡し方？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そう！簡単に覚える方法があるよ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// call() → 引数をComma（カンマ）で分けて渡す
introduce.call(person, &quot;こんにちは&quot;, &quot;！&quot;);
//                    ↑カンマ    ↑カンマ

// apply() → 引数をArray（配列）で渡す  
introduce.apply(person, [&quot;こんにちは&quot;, &quot;！&quot;]);
//                      ↑配列の中に全部入れる</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">「覚え方は『CallのC = Comma（カンマ）』、『ApplyのA = Array（配列）』だよ！」</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">なるほど！CとA！覚えやすいですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">もう少し詳しく見てみよう。引数がたくさんある時の違いが分かりやすいよ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>function makeMessage(greeting, name, age, hobby, punctuation) {
    return greeting + &quot;！私は&quot; + name + &quot;、&quot; + age + &quot;歳です。趣味は&quot; + hobby + &quot;です&quot; + punctuation;
}

let studentInfo = [&quot;こんにちは&quot;, &quot;OZくん&quot;, 14, &quot;プログラミング&quot;, &quot;♪&quot;];

// call()の場合：引数を一つずつカンマで分けて書く
let message1 = makeMessage.call(null, &quot;こんにちは&quot;, &quot;OZくん&quot;, 14, &quot;プログラミング&quot;, &quot;♪&quot;);

// apply()の場合：配列をそのまま渡せる！
let message2 = makeMessage.apply(null, studentInfo);

console.log(message1); 
console.log(message2); 
// どちらも同じ結果：「こんにちは！私はOZくん、14歳です。趣味はプログラミングです♪」</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">あ！<code>apply()</code>の方が配列を使えるから便利な場面もあるんですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！特に、引数の数が分からない時や、配列に入ったデータをそのまま関数に渡したい時は<code>apply()</code>が便利なんだ。でも基本的な機能は同じだよ。</p>
</div></div>



<h2 id="rtoc-4"  class="wp-block-heading">第4章：Functionコンストラクタの秘密</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">実はね、関数を作る方法は<code>function</code>キーワードだけじゃないんだよ。<code>Function</code>コンストラクタを使っても作れるんだ！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">コンストラクタ？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">コンストラクタっていうのは、オブジェクトを作るための特別な関数のことだよ。関数もオブジェクトだから、<code>Function</code>コンストラクタで作れるんだ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 普通の関数の書き方
function add1(a, b) {
    return a + b;
}

// Functionコンストラクタを使った書き方
let add2 = new Function(&#39;a&#39;, &#39;b&#39;, &#39;return a + b&#39;);

// どちらも同じ動きをする！
console.log(add1(3, 4)); // 7
console.log(add2(3, 4)); // 7

// どちらもFunctionオブジェクト
console.log(typeof add1); // &quot;function&quot;
console.log(typeof add2); // &quot;function&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">同じ関数が違う方法で作れるんですね！でも、なぜ2つの方法があるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><code>Function</code>コンストラクタは、プログラムの実行中に動的に関数を作りたい時に使うんだよ。でも、普通は最初の書き方の方が読みやすいから、そちらを使うことが多いんだ。</p>
</div></div>



<h2 id="rtoc-5"  class="wp-block-heading">第5章：関数の種類いろいろ</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">関数オブジェクトには実はいくつかの種類があるんだよ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">種類？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そう！見てみよう。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 1. 通常の関数宣言
function normalFunction() {
    return &quot;普通の関数です&quot;;
}

// 2. 関数式（変数に関数を代入）
let functionExpression = function() {
    return &quot;関数式です&quot;;
};

// 3. アロー関数（ES6から）
let arrowFunction = () =&gt; {
    return &quot;アロー関数です&quot;;
};

// 4. 即座に実行される関数（IIFE）
let result = (function() {
    return &quot;すぐに実行される関数です&quot;;
})();

console.log(normalFunction());      // &quot;普通の関数です&quot;
console.log(functionExpression());  // &quot;関数式です&quot;
console.log(arrowFunction());       // &quot;アロー関数です&quot;
console.log(result);               // &quot;すぐに実行される関数です&quot;</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">いろんな書き方があるんですね！でも、全部同じFunctionオブジェクトなんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">基本的にはそうだけど、少しずつ違いもあるんだよ。でも、どれも『呼び出せるオブジェクト』という点では同じなんだ。</p>
</div></div>



<h2 id="rtoc-6"  class="wp-block-heading">第6章：実践的な使い方</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">先生、関数オブジェクトの特性を活かした実際の使い方を教えてください！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">よし！関数を他の関数に渡したり、配列に入れたりする例を見てみよう。これは関数がオブジェクトだからできることなんだ。</p>
</div></div>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 関数を配列に入れる
let calculators = [
    function(a, b) { return a + b; },  // 足し算
    function(a, b) { return a - b; },  // 引き算
    function(a, b) { return a * b; },  // 掛け算
];

// 配列から関数を取り出して実行
console.log(calculators[0](5, 3)); // 8 (足し算)
console.log(calculators[1](5, 3)); // 2 (引き算)
console.log(calculators[2](5, 3)); // 15 (掛け算)

// 関数を他の関数に渡す（コールバック関数）
function processNumbers(num1, num2, operation) {
    return operation(num1, num2);
}

let result1 = processNumbers(10, 5, calculators[0]); // 15
let result2 = processNumbers(10, 5, calculators[1]); // 5
console.log(&quot;足し算の結果:&quot;, result1);
console.log(&quot;引き算の結果:&quot;, result2);</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">わあ！関数を変数みたいに扱えるんですね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通り！これを『第一級オブジェクト』と呼ぶんだよ。関数が他のデータ型と同じように扱えるということなんだ。</p>
</div></div>



<h2 id="rtoc-7"  class="wp-block-heading">まとめ：関数オブジェクトの正体</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">今日学んだことをまとめてみよう！</p>
</div></div>



<h3 id="rtoc-8"  class="wp-block-heading">関数オブジェクトの特徴</h3>



<ol class="wp-block-list">
<li><strong>関数はオブジェクト</strong>: プロパティやメソッドを持てる</li>



<li><strong>呼び出し可能</strong>: <code>()</code>をつけて実行できる特別な能力</li>



<li><strong>第一級オブジェクト</strong>: 変数に代入、配列に格納、他の関数に渡せる</li>



<li><strong>複数の作成方法</strong>: <code>function</code>宣言、関数式、アロー関数、<code>Function</code>コンストラクタ</li>



<li><strong>便利なメソッド</strong>: <code>call()</code>, <code>apply()</code>, <code>bind()</code>など</li>
</ol>



<p class="wp-block-paragraph">覚えておきたいポイント</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-js" data-lang="JavaScript"><code>// 関数は「呼び出せるオブジェクト」
function myFunction() {
    return &quot;Hello!&quot;;
}

// オブジェクトとしての性質
console.log(myFunction.name);   // 名前を取得
myFunction.customProperty = &quot;カスタムプロパティ&quot;; // プロパティ追加

// 関数としての性質
console.log(myFunction()); // 実行して結果を取得</code></pre></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">関数がこんなに奥深いものだったなんて！関数オブジェクトの正体がよく分かりました！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この理解があれば、JavaScriptをもっと深く学んでいけるよ。関数オブジェクトの特性を活かして、いろんなプログラムを作ってみてね！</p>
</div></div>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://oz006.com/javascript-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AWSとは？</title>
		<link>https://oz006.com/aws/</link>
					<comments>https://oz006.com/aws/#respond</comments>
		
		<dc:creator><![CDATA[oz]]></dc:creator>
		<pubDate>Mon, 04 Nov 2024 08:26:16 +0000</pubDate>
				<category><![CDATA[未分類]]></category>
		<guid isPermaLink="false">https://oz006.com/?p=371</guid>

					<description><![CDATA[「えぇ！？AWSって結局なんなん！！？？」 放課後のPC部室。部長のOZくんは、スマートフォンでニュースを読みながら、顧問のプロ太先生に質問を投げかけました。 Contents AWSの基本：クラウドコンピューティングの [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full"><img decoding="async" width="1000" height="1000" src="https://oz006.com/wp-content/uploads/2024/11/DALL·E-2024-11-03-23.20.35-A-conceptual-illustration-of-Amazon-Web-Services-AWS-showing-a-digital-cloud-platform-with-various-abstract-cloud-icons-and-technology-symbols-like.webp" alt="" class="wp-image-373" srcset="https://oz006.com/wp-content/uploads/2024/11/DALL·E-2024-11-03-23.20.35-A-conceptual-illustration-of-Amazon-Web-Services-AWS-showing-a-digital-cloud-platform-with-various-abstract-cloud-icons-and-technology-symbols-like.webp 1000w, https://oz006.com/wp-content/uploads/2024/11/DALL·E-2024-11-03-23.20.35-A-conceptual-illustration-of-Amazon-Web-Services-AWS-showing-a-digital-cloud-platform-with-various-abstract-cloud-icons-and-technology-symbols-like-300x300.webp 300w, https://oz006.com/wp-content/uploads/2024/11/DALL·E-2024-11-03-23.20.35-A-conceptual-illustration-of-Amazon-Web-Services-AWS-showing-a-digital-cloud-platform-with-various-abstract-cloud-icons-and-technology-symbols-like-150x150.webp 150w, https://oz006.com/wp-content/uploads/2024/11/DALL·E-2024-11-03-23.20.35-A-conceptual-illustration-of-Amazon-Web-Services-AWS-showing-a-digital-cloud-platform-with-various-abstract-cloud-icons-and-technology-symbols-like-768x768.webp 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></figure>



<p class="wp-block-paragraph">「えぇ！？AWSって結局なんなん！！？？」</p>



<p class="wp-block-paragraph">放課後のPC部室。部長のOZくんは、スマートフォンでニュースを読みながら、顧問のプロ太先生に質問を投げかけました。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="プロ太" class="speech-icon-image"/></figure><div class="speech-name">プロ太</div></div><div class="speech-balloon">
<p class="wp-block-paragraph">どうしたんですか？OZくん？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="OZ" class="speech-icon-image"/></figure><div class="speech-name">OZ</div></div><div class="speech-balloon">
<p class="wp-block-paragraph">先生、このニュースを見てください！！『多くの企業がAWSを活用してDXを推進』って書いてあるんですけど、<strong><span class="marker-under">AWS</span></strong>って何ですか？クラウドとも関係あるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="プロ太" class="speech-icon-image"/></figure><div class="speech-name">プロ太</div></div><div class="speech-balloon">
<p class="wp-block-paragraph">ちょうどいい質問です。今日の授業は、<strong><span class="marker-under">AWS</span></strong>について詳しく解説するつもりでした！</p>
</div></div>



<div id="rtoc-mokuji-wrapper" class="rtoc-mokuji-content frame2 preset6 animation-fade rtoc_open default" data-id="371" data-theme="Cocoon Child">
			<div id="rtoc-mokuji-title" class=" rtoc_left">
			<button class="rtoc_open_close rtoc_open"></button>
			<span>Contents</span>
			</div><ol class="rtoc-mokuji decimal_ol level-1"><li class="rtoc-item"><a href="#rtoc-1">AWSの基本：クラウドコンピューティングの世界</a></li><li class="rtoc-item"><a href="#rtoc-2">AWSの特徴：なぜ多くの企業が使うの？</a></li><li class="rtoc-item"><a href="#rtoc-3">AWSの主なサービス：実際に何ができるの？</a></li><li class="rtoc-item"><a href="#rtoc-4">身近なAWS活用例：こんなところでも使われている！</a></li><li class="rtoc-item"><a href="#rtoc-5">クラウドの未来：これからどうなるの？</a></li><li class="rtoc-item"><a href="#rtoc-6">AWS認定資格：スキルアップへの道</a></li><li class="rtoc-item"><a href="#rtoc-7">資格取得への近道：おすすめの順番</a></li><li class="rtoc-item"><a href="#rtoc-8">資格取得のメリット</a></li><li class="rtoc-item"><a href="#rtoc-9">資格試験の受験方法</a></li><li class="rtoc-item"><a href="#rtoc-10">まとめ：AWSの重要性</a></li></ol></div><h2 id="rtoc-1"  class="wp-block-heading">AWSの基本：クラウドコンピューティングの世界</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">まず、<strong><span class="marker-under">AWS</span></strong>って何の略なんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><strong><span class="marker-under">Amazon Web Services</span></strong>の略ですよ！Amazonが提供しているクラウドコンピューティングサービスのことなんです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">えっ！あのAmazonですか？ネットショッピングで有名のやつですよね？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そう、同じAmazonですよ。でも、<strong><span class="marker-under">AWSは一般消費者向けのショッピングサイトとは全く異なるサービス</span></strong>なんです。<span class="marker-under"><strong>企業やIT技術者向けのサービス</strong></span>といえばわかりやすいですね。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">へぇ～。でも、クラウドコンピューティングって何ですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">簡単に言うと、<strong><span class="marker-under-red">インターネットを通じてコンピュータの機能を必要な分だけ借りられるサービス</span></strong>のことです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">コンピュータを借りる？どういうことですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">例えば、学校の文化祭の写真をみんなで共有するウェブサイトを作りたいとします。従来なら、サーバーというコンピュータを購入して、設置場所を確保して、電源を用意して…といった準備が必要だったんです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">それは、大変そうですね、、、。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">でも、AWSを使えば、インターネット経由でサーバーを借りられるんです。必要な時に必要なだけ使って、使わない時は止めることもできます。まるで水道や電気のように使うことができるんです！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">なるほど！！使った分だけ払えばいいんですね！</p>
</div></div>



<h2 id="rtoc-2"  class="wp-block-heading">AWSの特徴：なぜ多くの企業が使うの？</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">AWSの良いところは、主に3つあるんです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">どんなところですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">まず1つ目は『柔軟性』ですね。必要に応じてコンピュータの能力を増やしたり減らしたりできます。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">例えば、どんな感じですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">文化祭の例で言えば、写真共有サイトへの<strong><span class="marker-under">アクセスが集中する文化祭当日は能力を増やして、普段は必要最小限に抑えるといった使い方</span></strong>ができるんです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">お～！それは便利ですね！！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">２つ目は、『コスト削減』です。自前でサーバーを用意する必要がないから、初期費用を抑えられます。使った分だけ支払えばいいですからね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">なるほど！！じゃあ3つ目は？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">『信頼性』ですね。Amazonが世界中にデータセンターを持っていて、24時間365日安定して使えるんです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">世界中に！？すごいですね！！</p>
</div></div>



<h2 id="rtoc-3"  class="wp-block-heading">AWSの主なサービス：実際に何ができるの？</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">AWSには、様々なサービスがあるんです。代表的なものをいくつか紹介しますね。</p>
</div></div>



<p class="wp-block-paragraph"><strong><span class="marker-under">EC2（Elastic Compute Cloud）</span></strong></p>



<ul class="wp-block-list">
<li>仮想サーバーを借りられるサービス</li>



<li>Webサイトやアプリの運用に使われる</li>
</ul>



<p class="wp-block-paragraph"><span class="marker-under"><strong>S3（Simple Storage Service）</strong></span></p>



<ul class="wp-block-list">
<li>データを保存できるストレージサービス</li>



<li>写真や動画、バックアップデータの保存に便利</li>
</ul>



<p class="wp-block-paragraph"><strong><span class="marker-under">RDS（Relational Database Service）</span></strong></p>



<ul class="wp-block-list">
<li>データベースを簡単に構築・運用できるサービス</li>



<li>ユーザー情報や商品情報の管理に使う</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">へぇ～。でも、難しそうですね…</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">確かに最初は難しく感じるかもしれません。でも、実は私たちの身近なところでAWSが使われているんです。</p>
</div></div>



<h2 id="rtoc-4"  class="wp-block-heading">身近なAWS活用例：こんなところでも使われている！</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">えっ、本当ですか？どんなところで？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">例えば、OZ君が良く見るNetflixの動画配信サービスもAWSを使っているんですよ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">えぇっ、マジですか！？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そうです。他にも、</p>



<ul class="wp-block-list">
<li>多くのスマートフォンゲーム</li>



<li>SNSサービス</li>



<li>教育関連のウェブサイト</li>



<li>銀行のオンラインバンキング</li>
</ul>



<p class="wp-block-paragraph">などなど、実は私たちの生活の様々な場面でAWSが使われているんです。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">へぇ～。知らないうちに使っていたんですね。</p>
</div></div>



<h2 id="rtoc-5"  class="wp-block-heading">クラウドの未来：これからどうなるの？</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">でも先生、最近は<span class="marker-under-blue">他のクラウドサービス</span>も出てきていますよね？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通りです！！<strong>Microsoft Azure</strong>や<strong>Google Cloud Platform</strong>なども強力なサービスを提供しています。ただ、AWSは市場シェアでトップを走っていて、常に新しいサービスを開発しています。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">クラウドって、これからもっと広がっていくんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">間違いないですね。特に、</p>



<ul class="wp-block-list">
<li><strong>AI（人工知能）サービス</strong></li>



<li><strong>IoT（モノのインターネット）</strong></li>



<li><strong>ビッグデータ分析 </strong><br>といった最新技術との組み合わせで、<br>さらに可能性が広がっていくと考えられているんだ。</li>
</ul>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">うわぁ〜！！そんなの聞くと、なんだかワクワクしてきました！！</p>
</div></div>



<h2 id="rtoc-6"  class="wp-block-heading">AWS認定資格：スキルアップへの道</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">ちなみに、<strong><span class="marker-under">AWS認定資格</span></strong>というものがあって、自分のAWSに関する知識やスキルを証明できるんです！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">へぇ～！どんな資格があるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">大きく分けて4つのカテゴリーがあります。</p>



<ol class="wp-block-list">
<li><strong>基礎レベル（Foundational）</strong></li>



<li><strong>アソシエイトレベル（Associate）</strong></li>



<li><strong>プロフェッショナルレベル（Professional）</strong></li>



<li><strong>専門知識（Specialty）</strong><br>です。</li>
</ol>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">難しそう…どれから始めればいいんですか？</p>
</div></div>



<h2 id="rtoc-7"  class="wp-block-heading">資格取得への近道：おすすめの順番</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">まずは、<strong>基礎レベルの『<span class="marker-under">AWS Certified Cloud Practitioner</span>』から始める</strong>ことをお勧めします。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">クラウドプラクティショナー？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そう。これはAWSの基本的な知識を問う試験なんです！<strong><span class="marker-under">クラウドの概念や、主要なAWSサービス、セキュリティ、料金などの基礎</span></strong>を学べます。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">次はどうすればいいですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph"><strong>基礎レベルの次は、アソシエイトレベル</strong>に進むのが一般的ですね。<strong>アソシエイトレベルには3つの資格</strong>があります。</p>
</div></div>



<ol class="wp-block-list">
<li><strong>AWS Solutions Architect Associate</strong>
<ul class="wp-block-list">
<li>AWSの設計に関する基本的な知識を証明</li>



<li><span class="marker-under"><strong>最も人気があり</strong></span>、汎用的な資格</li>



<li>多くの人がここから始める</li>
</ul>
</li>



<li><strong>AWS Developer Associate</strong>
<ul class="wp-block-list">
<li>アプリケーション開発に関する知識を証明</li>



<li>プログラミングが好きな人向け</li>
</ul>
</li>



<li><strong>AWS SysOps Administrator Associate</strong>
<ul class="wp-block-list">
<li>システム運用に関する知識を証明</li>



<li>インフラ運用に興味がある人向け</li>
</ul>
</li>
</ol>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">へぇ～。Solutions Architectが人気なんですね。</p>
</div></div>



<h2 id="rtoc-8"  class="wp-block-heading">資格取得のメリット</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">資格を取得することで、いくつかのメリットがありますよ。主なメリットは、、</p>
</div></div>



<ol class="wp-block-list">
<li><strong>就職・転職に有利</strong>
<ul class="wp-block-list">
<li>IT企業での評価が高い</li>



<li>履歴書にアピールポイントとして書ける</li>
</ul>
</li>



<li><strong>給与アップの可能性</strong>
<ul class="wp-block-list">
<li>資格保持者は比較的高い給与を得られることが多い</li>



<li>特に上位資格は評価が高い</li>
</ul>
</li>



<li><strong>技術力の証明</strong>
<ul class="wp-block-list">
<li>自分のスキルを客観的に示せる</li>



<li>国際的に通用する資格</li>
</ul>
</li>



<li><strong>学習のモチベーション</strong>
<ul class="wp-block-list">
<li>目標を持って勉強できる</li>



<li>体系的な知識が身につく</li>
</ul>
</li>
</ol>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">すごいですね！でも、難しそう…</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">確かに簡単ではないけど、計画的に準備すれば合格できますよ。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">どうやって勉強すればいいですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">一般的なおすすめの学習方法を紹介しますね。</p>
</div></div>



<ol class="wp-block-list">
<li><strong>公式のトレーニング</strong>
<ul class="wp-block-list">
<li>AWSが提供する無料のデジタルトレーニング</li>



<li>Webセミナーやワークショップ</li>
</ul>
</li>



<li><strong>問題集・参考書</strong>
<ul class="wp-block-list">
<li>各資格に対応した問題集</li>



<li>オンライン学習プラットフォーム</li>
</ul>
</li>



<li><strong>ハンズオン経験</strong>
<ul class="wp-block-list">
<li>AWS無料枠を使った実践</li>



<li>サンプルプロジェクトの作成</li>
</ul>
</li>



<li><strong>コミュニティ活動</strong>
<ul class="wp-block-list">
<li>AWS User Groupへの参加</li>



<li>勉強会への参加</li>
</ul>
</li>
</ol>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">結構時間がかかりそうですね…</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そうですね。目安として、</p>



<ul class="wp-block-list">
<li><strong>Cloud Practitioner</strong>: 1-2ヶ月の学習</li>



<li><strong>Solutions Architect Associate</strong>: 2-3ヶ月の学習</li>



<li><strong>その他のアソシエイト資格</strong>: 2-3ヶ月の学習</li>



<li><strong>プロフェッショナル資格</strong>: 6ヶ月以上の学習と実務経験</li>
</ul>



<p class="wp-block-paragraph">といった感じですね。</p>
</div></div>



<h2 id="rtoc-9"  class="wp-block-heading">資格試験の受験方法</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">試験はどうやって受けるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">試験は主にオンラインで受験できますよ。</p>
</div></div>



<ol class="wp-block-list">
<li><strong>試験形式</strong>
<ul class="wp-block-list">
<li>多肢選択式</li>



<li>複数回答式</li>



<li>時間は資格によって異なる（65-180分）</li>
</ul>
</li>



<li><strong>受験料</strong>
<ul class="wp-block-list">
<li>Cloud Practitioner: 100 USD（約15,000円）</li>



<li>アソシエイト: 150 USD（約22,000円）</li>



<li>プロフェッショナル: 300 USD（約44,000円）</li>



<li>専門知識: 300 USD（約44,000円）</li>
</ul>
</li>



<li><strong>言語</strong>
<ul class="wp-block-list">
<li>日本語で受験可能</li>



<li>英語の方が最新の問題に対応できる</li>
</ul>
</li>
</ol>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ02.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">けっこう高いんですね…ちなみに、再試験はできるんですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">もちろんです！不合格の場合は14日後から再受験が可能です。ただし、その場合も同じ料金がかかるので、しっかり準備してから受験することをお勧めします。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">あ！？ちなみに試験は、<span class="marker-under"><strong>いつ受験できる</strong></span>んですか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">基本的には、<strong><span class="marker-under">年中いつでも受験可能</span></strong>です。大きく分けて2つの受験方法があるんです。</p>
</div></div>



<ol class="wp-block-list">
<li><strong>テストセンターでの受験</strong>
<ul class="wp-block-list">
<li>全国の指定テストセンターで受験</li>



<li>予約した日時に会場で受験</li>



<li>身分証明書が必要</li>
</ul>
</li>



<li><strong>オンライン受験</strong>
<ul class="wp-block-list">
<li>自宅や任意の場所からオンラインで受験</li>



<li>予約した日時にウェブカメラを使用して受験</li>



<li>静かな個室環境が必要</li>



<li>身分証明書とウェブカメラが必要</li>
</ul>
</li>
</ol>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">すごい！いつでも自由に選べて、オンラインでも受けられるんですね！！便利です！！</p>
</div></div>



<h2 id="rtoc-10"  class="wp-block-heading">まとめ：AWSの重要性</h2>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">今日は、AWSについて理解できましたか？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">はい！要するに、</p>



<ol class="wp-block-list">
<li>AWSはAmazonが提供するクラウドコンピューティングサービス</li>



<li>必要な時に必要なだけコンピュータリソースを使える</li>



<li>柔軟性、コスト削減、信頼性が特徴</li>



<li>様々なサービスがあり、私たちの生活でも使われている</li>



<li>これからも発展が期待される <br><br>&#8230;ということですよね？</li>
</ol>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">その通りです！よく理解できていますね。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">でも、先生！！まだまだ知りたいことがたくさんあります！！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そうですね。特に興味があれば、AWSの無料枠を使って実際に試してみるのもいいかもしれないですね。</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-11 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ03.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">えぇ！？無料で試せるんですか！？</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-8 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/プロ太01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">ある程度の範囲内なら無料で使えます。ただし、クレジットカードが必要だから、これは大人と相談してからにしましょうね！</p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-7 sbs-stn sbp-l sbis-sb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oz006.com/wp-content/uploads/2024/10/OZ01.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">はい！ありがとうございました、先生！</p>
</div></div>



<p class="wp-block-paragraph">このように、AWSは現代のIT社会を支える重要なインフラストラクチャとなっています。高校生の皆さんも、将来的にはこうしたクラウドサービスを使う機会が増えていくことでしょう。技術の進歩は日々めざましく、これからも新しいサービスや可能性が生まれていくはずです。</p>



<p class="wp-block-paragraph">皆さんも、ぜひAWSやクラウドコンピューティングに興味を持ってみてください！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oz006.com/aws/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
