Les deux sont les mêmes, seuls les noms sont différents et tous parce que les conventions de dénomination de différence dans les frameworks Apple C/ObjC et le code Swift.
Il serait préférable de montrer comment il fonctionne sur exemple:
Supposons que nous créons le cadre SomeFramework
(SF
serait alors préfixe d'espace de noms) et dans ledit cadre, nous aurons le type Example
, avec le préfixe ce serait SFExample
.
La convention de dénomination pour C indique que le constructeur pour notre type SFExample
devrait être appelé SFExampleMake
.
La convention de dénomination pour Swift indique que le constucteur doit être SFExample.init
, qui peut être appelé SFExample(…)
.
Et quand vous importez des cadres ObjC/C dans votre projet Swift il y a namecast derrière la scène qui se SFExampleMake
à SFExample.init
ou SCNVector3Make
à SCNVector3.init
.
Alors SCNVector3 et SCNVector3Make sont strictement équivalents dans Swift? –