Tanda seru berarti banyak hal, dan kadang-kadang Anda tidak bisa mengatakan banyak hal darinya selain "ini berbahaya, hati-hati".
Seperti yang orang lain katakan, dalam metode standar sering digunakan untuk menunjukkan metode yang menyebabkan objek bermutasi, tetapi tidak selalu. Perhatikan bahwa banyak metode standar mengubah receiver mereka dan tidak memiliki tanda seru ( pop
, shift
, clear
), dan beberapa metode dengan tanda seru tidak mengubah penerima mereka ( exit!
). Lihat artikel ini misalnya.
Perpustakaan lain mungkin menggunakannya secara berbeda. Dalam Rails, tanda seru seringkali berarti bahwa metode ini akan mengeluarkan pengecualian pada kegagalan daripada gagal secara diam-diam.
Ini adalah konvensi penamaan tetapi banyak orang menggunakannya dengan cara yang sedikit berbeda. Dalam kode Anda sendiri, aturan praktis yang baik adalah menggunakannya setiap kali suatu metode melakukan sesuatu yang "berbahaya", terutama ketika dua metode dengan nama yang sama ada dan salah satunya lebih "berbahaya" daripada yang lain. "Berbahaya" bisa berarti hampir apa saja.