Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
私の考える初学者がBlazorできるまでの学習方法
Search
tomokusaba
August 23, 2024
Programming
1
440
私の考える初学者がBlazorできるまでの学習方法
私の考える初学者がBlazorできるまでの学習方法
.NETラボ 勉強会 2024年8月
https://dotnetlab.connpass.com/event/326381/
tomokusaba
August 23, 2024
Tweet
Share
More Decks by tomokusaba
See All by tomokusaba
Visual StudioのGitHub Copilotでいろいろやってみる
tomokusaba
1
4
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
1
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
370
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
220
.NET Conf 2024の振り返り
tomokusaba
0
270
.NET Conf 2024 .NETラボ 勉強会 2024年12月
tomokusaba
1
45
C#/.NETのこれまでのふりかえり
tomokusaba
1
240
Cloud Adoption Framework にみる組織とクラウド導入戦略
tomokusaba
2
840
Cloud Adoption Frameworkにみる組織とクラウド導入戦略(縮小版)
tomokusaba
1
300
Other Decks in Programming
See All in Programming
仕様変更に耐えるための"今の"DRY原則を考える / Rethinking the "Don't repeat yourself" for resilience to specification changes
mkmk884
0
150
Linux && Docker 研修/Linux && Docker training
forrep
24
4.5k
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
150
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
120
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
1
240
Writing documentation can be fun with plugin system
okuramasafumi
0
120
2024年のWebフロントエンドのふりかえりと2025年
sakito
2
250
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
900
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
110
Open source software: how to live long and go far
gaelvaroquaux
0
630
Conform を推す - Advocating for Conform
mizoguchicoji
3
690
チームリードになって変わったこと
isaka1022
0
200
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
KATA
mclloyd
29
14k
How GitHub (no longer) Works
holman
314
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Automating Front-end Workflow
addyosmani
1368
200k
Gamification - CAS2011
davidbonilla
80
5.1k
Navigating Team Friction
lara
183
15k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
960
Six Lessons from altMBA
skipperchong
27
3.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Transcript
私の考える初学者がBlazorで きるまでの学習方法 株式会社SAKURUG プロダクトDiv 草場 友光 .NETラボ勉強会2024年8月
自己紹介 • コミュニティ活動を通じて知識をアッ プデートしています。 • 2022/08-2025 Microsoft MVP (Developer Technologies)
• tomo_kusaba
宣伝 【VISION】ひとの可能性を開花させる企業であり続ける VISIONに共感できる仲間募集中。
注意 • 個人の見解・解釈が多分に入っています。 • 見解の相違・事実誤認などありましたらご指摘ください。 • #dotnetlabでtweetすると左側に表示されます
今日の目的 • Blazorはとても有用なWebフレームワークです。 • Blazorで開発できるようになるまでC#初心者を想定してどの ような学習コンテンツで学習したらよいか? • どのように学習するとより知識が定着しやすいかを紹介しこれか らBlazorでバリバリ開発するぞという方の助けになればと思い ます。
流れ • C#の文法の学習 • .NETの学習 • ASP.NET Coreの学習 • Blazorの学習
• (Option)EntityFremeCoreの学習 • (Option)Fluent UI Blazorの学習 • (Option)NUnit • (Option)Playwright
学習のポイント その1 • コードはコピペしない! • 必ず、キーボードで1字1字入力しましょう • 実際、コピペした人と、写経した人ではのびが違います!
学習のポイント その2 • コードは動かしてみよう • 自分なりに工夫していじってみよう
C#の学習 • 独習C#
続・C#の学習 • https://learn.microsoft.com/ja- jp/collections/7q6yuyx4kq6q10
続続・C#の学習 • https://ufcpp.net/study/csharp/ • C#1.0~C#最新までの新機能をおさらい →基本的に新しい言語機能が正義!
.NETの学習 • Microsoft Learnでどうぞ • https://learn.microsoft.com/ja- jp/collections/xjrpco5z5ewgej
.NETの学習ポイントその1 • 日付時刻の取り扱い • クラウドにホストする場合はUTCでの取り扱うのが基本 • 表示時にJTCに変換する必要あり(UTC⇔JSTについて確認) • . NET
8で追加された時間抽象化(TimeProvider)についての取り扱 いについて確認
.NETの学習ポイントその2 • カルチャーに依存したライブラリについての認識 • Stringクラスに特に多くカルチャー依存したメソッドが数多く存在します。 • ローカルとクラウドで実行結果が異なることがあります。 • Strings.StrConvのように日本ローケルやアジアローケール以外でそも そも実行不可な列挙体メンバーによってはメソッドもあります。
.NETの学習ポイントその3 • 汎用ホスト(Generic Hosts) • ASP.NET Coreの汎用ホストにも続く基礎的な内容 • 以下の機能を提供することは全く変わらないので抑えておくこと •
DI機構 • ログ • 構成 • IHostedServiceの実装
汎用ホストについて参考 • .NETラボでも過去汎用ホストについて何回も語られています • .NETラボ勉強会2022年8月 .NET Core Options Pattern(髙尾 哲朗)
• .NETラボ勉強会2022年9月 汎用ホストをいろいろカスタマイズして みる(髙尾 哲朗) • .NETラボ勉強会2022年10月 ASP. NET Core 汎用ホスト概要(草 場 友光) • .NETラボ勉強会2022年12月 .NET 汎用ホスト(Generic Host)っ てなにもの?(高萩 俊行(とっちゃん))
ASP.NET Coreの学習 • Microsoft Learnでどうぞ
続・ASP.NET Coreの学習 • 空のプロジェクトから始めるBlazor • https://youtu.be/8Uy4QfF9wQY?si=9Lakuuqej3D d3ys0
ASP.NET Coreの学習のポイント • 汎用ホストを侮るな • 過去、.NETラボ勉強会でも何回も取り上げられているとおり重 要ポイントです。 • 特に、DI(Dependency Injection)についてはBlazorの
サービス機構を語る上で基礎的な内容になってます。
Blazorの学習 • Microsoft Learnでどうぞ
Blazorの学習 • https://jsakamoto.github.io/self-learning-materials-for-blazor- jp/Blazor%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E 3%82%B7%E3%83%A7%E3%83%B3%E3%83%97%E3%83%AD%E3%82%B0 %E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%87%AA%E7%BF%9 2%E6%9B%B8-v.8.0.1.pdf • https://github.com/jsakamoto/self-learning-materials-for-blazor- jp?tab=readme-ov-file
Blazorの学習ポイント • Blazor Web Appsになってレンダリングの問題が複雑化してま す。サーバーで動いてるのか、クライアント側で動いてるのか、イン タラクティブ性はどうかを意識しながら確認すること。 • Razorコンポーネントがんばる! •
状態管理のやりかた!
EntityFrameworkCoreの学習 • Microsoft Learnでどうぞ
EntityFrameworkCoreのポイント • データアクセスはLINQで行う • 従来通りSQLによるデータアクセスも検討
Fluent UI Blazorの学習 • Fluent UIの設計原則についてを学ぶ • Fluent UI Blazorは現在Fluent
UI1に基づいているが原理原則は 変わらないのでこちらを参照するとよい
Fluent UI Blazorの学習 • Fluent UI Blazorのデモページでどうぞ • 具体的なFluent UI
Blazorのコンポーネントの使用法についてはデモ ページを参照することでわかる
NUnit の学習 • Playwrightとの親和性から単体テストにはNUnitを推奨 • NUnit Documentationを読む!
Playwright(.NET)の学習 • .NETラボ勉強会2024年2月 C#でのPlaywrightを使った E2Eテストの実際(草場 友光)参照 • Playwright for .NET
Docs参照
おしまい おしまい