Pertanyaan yang diberi tag «interfaces»

Pertanyaan tentang pertimbangan desain terkait antarmuka, seperti pemrograman ke antarmuka.

3
Antarmuka umum vs umum?
Saya tidak ingat kapan saya menulis kelas generik terakhir kali. Setiap kali saya pikir saya membutuhkannya setelah berpikir saya membuat kesimpulan saya tidak membutuhkannya. Jawaban kedua untuk pertanyaan ini membuat saya meminta klarifikasi (karena saya belum bisa berkomentar, saya membuat pertanyaan baru). Jadi mari kita ambil kode yang diberikan sebagai …

4
Siapa yang memperluas antarmuka? Dan mengapa?
AFAIK, extendskelas dan implementsantarmuka orangtua kelas saya . Tapi saya mengalami situasi, di mana saya tidak bisa menggunakan implements SomeInterface. Ini adalah deklarasi tipe generik. Sebagai contoh: public interface CallsForGrow {...} public class GrowingArrayList <T implements CallsForGrow> // BAD, won't work! extends ArrayList<T> implementsDilarang menggunakan di sini secara sintaksis. Saya …


2
Prinsip paling tidak mengejutkan (POLA) dan antarmuka
Seperempat abad yang lalu ketika saya sedang belajar C ++, saya diajarkan bahwa antarmuka harus memaafkan dan sejauh mungkin tidak peduli tentang urutan metode yang dipanggil karena konsumen mungkin tidak memiliki akses ke sumber atau dokumentasi sebagai pengganti ini. Namun, setiap kali saya membimbing para programmer junior dan senior devs …

5
Apakah enum membuat antarmuka yang rapuh?
Perhatikan contoh di bawah ini. Setiap perubahan pada enum ColorChoice mempengaruhi semua subkelas IWindowColor. Apakah enum cenderung menyebabkan antarmuka yang rapuh? Adakah sesuatu yang lebih baik daripada enum untuk memungkinkan fleksibilitas polimorfik yang lebih banyak? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: …


5
Kapan menggunakan antarmuka (pengujian unit, IOC?)
Saya curiga saya membuat kesalahan anak sekolah di sini, dan saya sedang mencari klarifikasi. Banyak kelas dalam solusi saya (C #) - berani saya katakan mayoritas - Saya akhirnya menulis antarmuka yang sesuai untuk. Misalnya antarmuka "ICalculator" dan kelas "Kalkulator" yang mengimplementasikannya, meskipun saya tidak akan pernah mungkin mengganti kalkulator …

4
Bagaimana cara terbaik mengatur file kelas dan antarmuka?
Oke .. setelah semua diskusi saya mengubah pertanyaan saya sedikit untuk lebih mencerminkan contoh nyata yang saya hadapi. Saya memiliki dua kelas ModelOnedan ModelTwo, kelas-kelas ini melakukan jenis fungsi yang serupa tetapi tidak saling berhubungan. Namun saya memiliki kelas ketiga CommonFuncyang berisi beberapa fungsi publik yang diimplementasikan di keduanya ModelOnedan …

5
Penggunaan kata kunci "Menggunakan" di antarmuka C #
Ketika saya menggunakan C # untuk menulis beberapa kode dan saya mendefinisikan antarmuka menggunakan Visual Studio 2010, selalu menyertakan sejumlah pernyataan "menggunakan" (seperti yang ditunjukkan dalam contoh) using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace TestEngine.TestNameSpace { interface ITest1 { bool testMethod(int xyz); } } Saya ingin tahu untuk …

2
Ilegal di PHP: Apakah ada alasan desain OOP?
Warisan antarmuka di bawah ini ilegal di PHP, tapi saya pikir itu akan sangat berguna dalam kehidupan nyata. Apakah ada masalah antipattern atau terdokumentasi aktual dengan desain di bawah ini, sehingga PHP melindungi saya? <?php /** * Marker interface */ interface IConfig {} /** * An api sdk tool */ …

5
Mengirim objek dua kali ke metode yang sama atau menggabungkan dengan antarmuka gabungan?
Saya memiliki metode yang membuat file data setelah berbicara dengan papan digital: CreateDataFile(IFileAccess boardFileAccess, IMeasurer boardMeasurer) Di sini boardFileAccessdan boardMeasurermerupakan contoh yang sama dari Boardobjek yang mengimplementasikan keduanya IFileAccessdan IMeasurer. IMeasurerdigunakan dalam kasus ini untuk metode tunggal yang akan menetapkan satu pin di papan aktif untuk membuat pengukuran sederhana. Data …




6
Bisakah saya menganggap metode antarmuka sebagai metode abstrak?
Saya sedang memikirkan hal itu, dan saya memiliki beberapa keraguan. Ketika saya mendeklarasikan antarmuka, misalnya: public interface MyInterface { public void method1(); public void method2(); } Bisakah metode antarmuka ini dianggap abstrak? Yang saya maksud adalah bahwa konsep metode abstrak adalah: Metode abstrak adalah metode yang dideklarasikan, tetapi tidak mengandung …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.