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
380
私の考える初学者が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
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
.NET Conf 2024の振り返り
tomokusaba
0
220
.NET Conf 2024 .NETラボ 勉強会 2024年12月
tomokusaba
1
24
C#/.NETのこれまでのふりかえり
tomokusaba
1
220
Cloud Adoption Framework にみる組織とクラウド導入戦略
tomokusaba
2
790
Cloud Adoption Frameworkにみる組織とクラウド導入戦略(縮小版)
tomokusaba
1
290
Semantic Kernelの最新状況及び入門
tomokusaba
0
260
Fluent UI Blazor 最新Update
tomokusaba
1
310
アクセシビリティの観点からみたFluent UI Blazorのすすめ
tomokusaba
1
380
Other Decks in Programming
See All in Programming
rails stats で紐解く ANDPAD のイマを支える技術たち
andpad
1
290
事業成長を爆速で進めてきたプロダクトエンジニアたちの成功談・失敗談
nealle
3
1.4k
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
330
バグを見つけた?それAppleに直してもらおう!
uetyo
0
170
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
350
.NET 9アプリをCGIとして レンタルサーバーで動かす
mayuki
1
770
第5回日本眼科AI学会総会_AIコンテスト_3位解法
neilsaw
0
170
Jakarta EE meets AI
ivargrimstad
0
230
HTTP compression in PHP and Symfony apps
dunglas
2
1.7k
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
180
Security_for_introducing_eBPF
kentatada
0
110
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
650
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
Site-Speed That Sticks
csswizardry
2
190
Making Projects Easy
brettharned
116
5.9k
The Pragmatic Product Professional
lauravandoore
32
6.3k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
RailsConf 2023
tenderlove
29
940
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Docker and Python
trallard
41
3.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.2k
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参照
おしまい おしまい