Import Wildcard, seperti dari import PyQt4 *, merupakan sumber perdebatan biasa dalam komuniti pengaturcaraan. Walau bagaimanapun, ramai pembangun bersetuju bahawa mereka harus dielakkan secara amnya.
Nama yang layak diutamakan berbanding nama lain. Adalah lebih baik untuk menyatakan secara eksplisit modul dari mana anda mengimport, menggunakan sintaks seperti dari PyQt4.QtCore import Qt dan bukannya dari PyQt4 import Qt. Nama yang layak memudahkan untuk mengesan kebergantungan kod dan ralat nyahpepijat.
Mereka juga mengurangkan risiko perlanggaran antara modul. Jika dua modul mentakrifkan fungsi dengan nama yang sama, anda perlu mengimport salah satu daripadanya secara eksplisit untuk mengelakkan kekaburan. Import kad bebas memudahkan untuk mengabaikan perlanggaran sedemikian, yang membawa kepada ralat yang tidak dijangka.
Akhir sekali, import kad bebas boleh menyukarkan untuk menguji kod anda. Contohnya, jika anda mengejek kelas daripada pustaka pihak ketiga, lebih mudah untuk berbuat demikian jika anda mempunyai rujukan yang layak kepada kelas tersebut.
Jika anda ingin mengurangkan bilangan baris dalam penyata import anda, anda boleh membuat alias untuk modul. Sebagai contoh, daripada menulis daripada PyQt4.QtCore import Qt, QPointF, QRectF, anda boleh menulis:
import PyQt4 Qt = PyQt4.QtCore
Pendekatan ini membolehkan anda menggunakan Qt.QPointF, Qt.QRectF, dsb. tanpa perlu secara eksplisit melayakkan setiap nama.
Pilihan lain ialah menggunakan pengimportan terpilih. Daripada mengimport semua kelas daripada modul, anda boleh mengimport hanya kelas yang anda perlukan:
from PyQt4.QtCore import QPointF, QRectF from PyQt4.QtGui import QGraphicsItem, QGraphicsScene
Ini lebih bertele-tele daripada menggunakan import kad bebas, tetapi ia mempunyai kelebihan hanya mengimport kelas yang sebenarnya anda gunakan .
Walaupun import kad bebas boleh menggoda, ia biasanya tidak disyorkan. Nama yang layak lebih mudah dibaca, kurang terdedah kepada ralat dan lebih mudah untuk diuji. Jika anda sedang mencari cara untuk mengurangkan bilangan baris dalam penyata import anda, pertimbangkan untuk menggunakan alias atau pengimportan terpilih.
Atas ialah kandungan terperinci Import Wildcard: Untuk Digunakan atau Tidak Digunakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!