Is vs Can
Menurut rekomendasi konvensi penamaan Microsoft , "Apakah" dan "Bisa" tidak apa-apa (dan demikian pula "Memiliki") sebagai awalan untuk Boolean.
Dalam bahasa Inggris biasa, "Is" akan digunakan untuk mengidentifikasi sesuatu tentang tipe itu sendiri, bukan apa yang dapat dilakukannya. Sebagai contoh, IsFixed, IsDerivedFrom, IsNullablesemua dapat ditemukan dalam jenis CLR dan metode. Dalam semua kasus ini, "Is" diikuti oleh kata sifat .
Sementara itu, "dapat" lebih jelas menunjukkan kemampuan, misalnya CanEdit, CanRead, CanSeek. Dalam setiap kasus ini, dapat diikuti oleh kata kerja .
Karena "Dukungan" adalah kata kerja, saya pikir dalam kasus Anda CanSupportContentTypelebih baik.
Alternatif yang lebih pendek
Di sisi lain, konvensi mengatakan awalan adalah opsional. Terlebih lagi, itu agak curang untuk memasukkan jenis argumen dalam nama metode, karena pengembang dapat melihat jenis argumen di intellisense. Jadi Anda bisa memberi nama metode Anda Supportsdan mendefinisikannya seperti ini:
public bool Supports(System.Net.Mime.ContentType contentType)
... yang lebih pendek dan masih dengan jelas mengomunikasikan tujuannya. Anda akan menyebutnya seperti ini:
ContentType contentType = new ContentType("text/plain");
var someClass = new MediatorsClass();
bool ok = someClass.Supports(contentType);
Atau sebagai kompromi, mungkin ini yang terbaik:
public bool CanSupport(System.Net.Mime.ContentType contentType)