Soumettre la recherche
Mettre en ligne
継承辺りのもしかしたらマイナーかもしれない C#
•
Télécharger en tant que PPTX, PDF
•
0 j'aime
•
1,103 vues
M
m ishizaki
Suivre
継承辺りのもしかしたらマイナーかもしれない C#
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 32
Télécharger maintenant
Recommandé
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
MagicOnion入門
MagicOnion入門
torisoup
30分でわかるマイクロサービスアーキテクチャ 第2版
30分でわかるマイクロサービスアーキテクチャ 第2版
Naoki (Neo) SATO
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
こわくない Git
こわくない Git
Kota Saito
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
NTT DATA Technology & Innovation
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
Kohei Tokunaga
Tackling Complexity
Tackling Complexity
Yoshitaka Kawashima
Recommandé
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
MagicOnion入門
MagicOnion入門
torisoup
30分でわかるマイクロサービスアーキテクチャ 第2版
30分でわかるマイクロサービスアーキテクチャ 第2版
Naoki (Neo) SATO
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
こわくない Git
こわくない Git
Kota Saito
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
NTT DATA Technology & Innovation
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
Kohei Tokunaga
Tackling Complexity
Tackling Complexity
Yoshitaka Kawashima
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
例外設計における大罪
例外設計における大罪
Takuto Wada
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
async/await のしくみ
async/await のしくみ
信之 岩永
Go入門
Go入門
Takuya Ueda
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Shigenori Sagawa
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Yahoo!デベロッパーネットワーク
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
BigQuery Query Optimization クエリ高速化編
BigQuery Query Optimization クエリ高速化編
sutepoi
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
Teppei Sato
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013
DQNEO
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
Yusuke Suzuki
A quick tour of the Cysharp OSS
A quick tour of the Cysharp OSS
Yoshifumi Kawai
C# Tokyo guide 20191024
C# Tokyo guide 20191024
m ishizaki
C# Tokyo ガイド 2020/02
C# Tokyo ガイド 2020/02
m ishizaki
Contenu connexe
Tendances
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
例外設計における大罪
例外設計における大罪
Takuto Wada
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
async/await のしくみ
async/await のしくみ
信之 岩永
Go入門
Go入門
Takuya Ueda
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Shigenori Sagawa
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Yahoo!デベロッパーネットワーク
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
BigQuery Query Optimization クエリ高速化編
BigQuery Query Optimization クエリ高速化編
sutepoi
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
Teppei Sato
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013
DQNEO
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
Yusuke Suzuki
A quick tour of the Cysharp OSS
A quick tour of the Cysharp OSS
Yoshifumi Kawai
Tendances
(20)
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
例外設計における大罪
例外設計における大罪
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
async/await のしくみ
async/await のしくみ
Go入門
Go入門
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Docker Compose 徹底解説
Docker Compose 徹底解説
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
BigQuery Query Optimization クエリ高速化編
BigQuery Query Optimization クエリ高速化編
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
A quick tour of the Cysharp OSS
A quick tour of the Cysharp OSS
Similaire à 継承辺りのもしかしたらマイナーかもしれない C#
C# Tokyo guide 20191024
C# Tokyo guide 20191024
m ishizaki
C# Tokyo ガイド 2020/02
C# Tokyo ガイド 2020/02
m ishizaki
わんくま名古屋#33(20141115) モノ作り半生
わんくま名古屋#33(20141115) モノ作り半生
Yasuhiko Yamamoto
C# Tokyo はじめました
C# Tokyo はじめました
m ishizaki
Trident Wcan2009
Trident Wcan2009
TRIDENT
C# Tokyo コミュニティについて
C# Tokyo コミュニティについて
m ishizaki
Unity/CSharp 2
Unity/CSharp 2
tagawakiyoshi
Unity/CSharp 1 - pptx
Unity/CSharp 1 - pptx
tagawakiyoshi
C# Tokyo コミュニティについて Short 版
C# Tokyo コミュニティについて Short 版
m ishizaki
いつでもどこでも .NET
いつでもどこでも .NET
Yuta Matsumura
Unity/CSharp 3
Unity/CSharp 3
tagawakiyoshi
C# Tokyo コミュニティ案内
C# Tokyo コミュニティ案内
m ishizaki
「アジャイル型開発におけるプラクティス活用リファレンスガイド」の勘所と活用方法
「アジャイル型開発におけるプラクティス活用リファレンスガイド」の勘所と活用方法
toshihiro ichitani
Webシステムプログラミング概要20150630
Webシステムプログラミング概要20150630
義広 河野
Android バインド ライブラリ
Android バインド ライブラリ
m ishizaki
M5Stackで授業をやってみた
M5Stackで授業をやってみた
Junichi Akita
大学生のTwitter利用に関する定量分析―利用目的とサービス設計の関係―
大学生のTwitter利用に関する定量分析―利用目的とサービス設計の関係―
Hisao Soyama
Intelli code
Intelli code
m ishizaki
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
rip jyr
遷移図生成ツール blockdiag の紹介 @ Pycon mini JP 2011/01
遷移図生成ツール blockdiag の紹介 @ Pycon mini JP 2011/01
Takeshi Komiya
Similaire à 継承辺りのもしかしたらマイナーかもしれない C#
(20)
C# Tokyo guide 20191024
C# Tokyo guide 20191024
C# Tokyo ガイド 2020/02
C# Tokyo ガイド 2020/02
わんくま名古屋#33(20141115) モノ作り半生
わんくま名古屋#33(20141115) モノ作り半生
C# Tokyo はじめました
C# Tokyo はじめました
Trident Wcan2009
Trident Wcan2009
C# Tokyo コミュニティについて
C# Tokyo コミュニティについて
Unity/CSharp 2
Unity/CSharp 2
Unity/CSharp 1 - pptx
Unity/CSharp 1 - pptx
C# Tokyo コミュニティについて Short 版
C# Tokyo コミュニティについて Short 版
いつでもどこでも .NET
いつでもどこでも .NET
Unity/CSharp 3
Unity/CSharp 3
C# Tokyo コミュニティ案内
C# Tokyo コミュニティ案内
「アジャイル型開発におけるプラクティス活用リファレンスガイド」の勘所と活用方法
「アジャイル型開発におけるプラクティス活用リファレンスガイド」の勘所と活用方法
Webシステムプログラミング概要20150630
Webシステムプログラミング概要20150630
Android バインド ライブラリ
Android バインド ライブラリ
M5Stackで授業をやってみた
M5Stackで授業をやってみた
大学生のTwitter利用に関する定量分析―利用目的とサービス設計の関係―
大学生のTwitter利用に関する定量分析―利用目的とサービス設計の関係―
Intelli code
Intelli code
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
遷移図生成ツール blockdiag の紹介 @ Pycon mini JP 2011/01
遷移図生成ツール blockdiag の紹介 @ Pycon mini JP 2011/01
Plus de m ishizaki
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
m ishizaki
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
m ishizaki
Xamarin で良くやっていたあれを MAUI でする話
Xamarin で良くやっていたあれを MAUI でする話
m ishizaki
「スタバ」する話
「スタバ」する話
m ishizaki
エンジニアと「スタバ」ツイートについて
エンジニアと「スタバ」ツイートについて
m ishizaki
Build 2022 / Uno Platform
Build 2022 / Uno Platform
m ishizaki
7 つの Blazor
7 つの Blazor
m ishizaki
C# Tokyo コミュニティ説明 202205 版
C# Tokyo コミュニティ説明 202205 版
m ishizaki
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
m ishizaki
2022 抱負
2022 抱負
m ishizaki
モバイルディスプレイ
モバイルディスプレイ
m ishizaki
Windows フォームアプリ 2022
Windows フォームアプリ 2022
m ishizaki
dotnet tool
dotnet tool
m ishizaki
C#10
C#10
m ishizaki
C# 9 のおすすめ新機能
C# 9 のおすすめ新機能
m ishizaki
C# Tokyo コミュニティ説明 2021/01/29 版
C# Tokyo コミュニティ説明 2021/01/29 版
m ishizaki
秋葉原 C# もくもく会
秋葉原 C# もくもく会
m ishizaki
C# Tokyo guide 2020/12/25
C# Tokyo guide 2020/12/25
m ishizaki
C# Tokyo コミュニティ案内 20201217
C# Tokyo コミュニティ案内 20201217
m ishizaki
C# Tokyo コミュニティ説明 2020/11/27 版
C# Tokyo コミュニティ説明 2020/11/27 版
m ishizaki
Plus de m ishizaki
(20)
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
Xamarin で良くやっていたあれを MAUI でする話
Xamarin で良くやっていたあれを MAUI でする話
「スタバ」する話
「スタバ」する話
エンジニアと「スタバ」ツイートについて
エンジニアと「スタバ」ツイートについて
Build 2022 / Uno Platform
Build 2022 / Uno Platform
7 つの Blazor
7 つの Blazor
C# Tokyo コミュニティ説明 202205 版
C# Tokyo コミュニティ説明 202205 版
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
2022 抱負
2022 抱負
モバイルディスプレイ
モバイルディスプレイ
Windows フォームアプリ 2022
Windows フォームアプリ 2022
dotnet tool
dotnet tool
C#10
C#10
C# 9 のおすすめ新機能
C# 9 のおすすめ新機能
C# Tokyo コミュニティ説明 2021/01/29 版
C# Tokyo コミュニティ説明 2021/01/29 版
秋葉原 C# もくもく会
秋葉原 C# もくもく会
C# Tokyo guide 2020/12/25
C# Tokyo guide 2020/12/25
C# Tokyo コミュニティ案内 20201217
C# Tokyo コミュニティ案内 20201217
C# Tokyo コミュニティ説明 2020/11/27 版
C# Tokyo コミュニティ説明 2020/11/27 版
継承辺りのもしかしたらマイナーかもしれない C#
1.
/ 31 【オンライン】2023年! C#
Tokyo イベント 石崎 充良 継承辺りのもしかしたら マイナーかもしれない C# 1
2.
/ 31 自己紹介 石崎 充良
( @mishi_cs ) C# Tokyo コミュニティ管理メンバー GitHub: https://github.com/m-ishizaki blog: https://rksoftware.hatenablog.com/ 2
3.
/ 31 今回は継承のお話し 3
4.
/ 31 今日はクラスの継承のお話です クラスの継承、 使っていますか? インターフェイスの実装でなくて。 4
5.
/ 31 クラスの継承とは 5
6.
/ 31 インターフェイス 6
7.
/ 31 何故インターフェイスなのか? 7
8.
/ 31 クラスではできない 8 埼玉なの? 群馬なの? ちなみに、できてしまうと
9.
/ 31 インターフェイスでは 9 明示的なインターフェイスの実装
10.
/ 31 目次 今回は継承のお話し
背景 この辺りのメソッドの実装の種類 abstract メソッド virtual メソッド interface の明示的な実装 interface のデフォルト実装 まとめ 10
11.
/ 31 背景 11
12.
/ 31 C# 11
の新機能 「ジェネリック型数値演算のサポート - インターフェイスの static virtual メンバー」 という機能が追加されました。 インターフェイスに「 static virtual 」なメンバーが定義できます インターフェイスに「 static abstract 」なメンバーが定義できます 12
13.
/ 31 こんなことができます 13
14.
/ 31 virtual、abstract、interface の実装 14 完全に理解していますか? 私は正直、自信がないです。
15.
/ 31 この辺りのメソッド の実装の種類 15
16.
/ 31 種類 • abstract
メソッド • virtual メソッド • interface の明示的な実装 • interface のデフォルト実装 16 class での仕様 interface での仕様
17.
/ 31 abstract メソッド 17
18.
/ 31 abstract メソッド
abstract クラスにしか定義できない abscract クラスでは実装ができない 導出クラス (サブクラス・子クラス) では実装をしなければならない 18 プログラマによる実装漏れを言語レベルで無くしてくれる 極めて実装者への配慮にあふれた機能。 インターフェイスとテストが主流の現代ではまず見かけない。
19.
/ 31 virtual メソッド 19
20.
/ 31 virtual メソッド
君は導出クラス (サブクラス・子クラス) で実装してもいいし、しなくてもいい virtual メソッドの宣言には実装が必要 20 プログラマによる実装の自由が認められた使い勝手の良い機能。 abstract ではなくこちらの方が見かける。 カスタマイズ可能な UI コンポーネントなどでは見かける。 virtual でも abstract でもない場合は
21.
/ 31 interface の明示的な 実装 21
22.
/ 31 インターフェイスの明示的な実装 複数のインターフェイスに同じメソッドがあった場合に、どのインターフェイスの実 装かを明示して実装できる 22 インターフェイスが違えば必要な実装は違う場合もある。 そんな時でも安心安全な機能。 人気も本当に 最高なのか? 人気は千葉に 譲るかもしれない
23.
/ 31 インターフェイスの型から呼び出す 呼び出し方 23 普通の実装がある場合
24.
/ 31 interface の デフォルト実装 24
25.
/ 31 通常、interface メソッドは実装が必要 25
26.
/ 31 インターフェイスに実装を書く
インターフェイスの型から呼び出す (実装クラスの型からは呼び出せない) デフォルト実装 26 インターフェイスに 実装がある
27.
/ 31 実装クラスに実装がある場合 実装クラスの型からも呼べるようになる
インターフェイスの型から呼ばれても実装クラスの実装が呼ばれる 27 virtual メソッドに似ている。覚えやすい
28.
/ 31 デフォルト実装と基底クラスの実装 インターフェイスの実装とクラスの継承をしていて、基底クラスに同じメソッドが あった場合は、基底クラスの実装が呼ばれる 28
29.
/ 31 デフォルト実装の明示的な実装 インターフェイスのデフォルト実装に対して明示的な実装も可能 29
30.
/ 31 まとめ 30
31.
/ 31 まとめ クラスの継承とインターフェイスの実装、完全に理解した
インターフェイスの static virtual メンバーも怖くない ↓のコードも一目で理解できる 31
32.
/ 31 ありがとうございました。 32 【オンライン】2023年! C#
Tokyo イベント 石崎 充良
Télécharger maintenant