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
490
私の考える初学者が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
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
130
Generative AI for Beginners .NETの紹介
tomokusaba
1
270
Visual StudioのGitHub Copilotでいろいろやってみる
tomokusaba
1
340
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
320
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
420
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
230
.NET Conf 2024の振り返り
tomokusaba
0
290
.NET Conf 2024 .NETラボ 勉強会 2024年12月
tomokusaba
1
53
C#/.NETのこれまでのふりかえり
tomokusaba
1
260
Other Decks in Programming
See All in Programming
安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記
sakuraikotone
5
2.2k
보일러플레이트 코드가 진짜 나쁜 건가요?
gaeun5744
0
370
RCPと宣言型ポリシーについてのお話し
kokitamura
2
140
RailsでCQRS/ESをやってみたきづき
suzukimar
2
1.5k
CQRS+ES勉強会#1
rechellatek
0
390
Kubernetesで実現できるPlatform Engineering の現在地
nwiizo
2
1.7k
Windows版PHPのビルド手順とPHP 8.4における変更点
matsuo_atsushi
0
360
WordPress Playground for Developers
iambherulal
0
120
JavaOne 2025: Advancing Java Profiling
jbachorik
1
310
MCP世界への招待: AIエンジニアが創る次世代エージェント連携の世界
gunta
2
520
令和トラベルにおけるコンテンツ生成AIアプリケーション開発の実践
ippo012
1
250
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
790
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Writing Fast Ruby
sferik
628
61k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.1k
Done Done
chrislema
183
16k
For a Future-Friendly Web
brad_frost
176
9.6k
Become a Pro
speakerdeck
PRO
27
5.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
28
2k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Visualization
eitanlees
146
15k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
Fireside Chat
paigeccino
37
3.3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
11
610
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参照
おしまい おしまい