swiftdoc style nshipster mark example comment code xcode swift comments

xcode - style - swiftdoc



Swift: Entendiendo// MARK (3)

La sintaxis // MARK: y // MARK: - en Swift funciona de manera idéntica a la #pragma mark #pragma mark - y a la #pragma mark #pragma mark - sintaxis en Objective-C.

Al usar esta sintaxis (más // TODO: y // FIXME: , puede obtener información adicional para mostrar en la barra de salto rápido.

Considere estas pocas líneas de código fuente:

// MARK: A mark comment lives here. func isPrime(_ value: UInt) -> Bool { return true }

Y como referencia, la barra de salto rápido está en la parte superior de Xcode:

Existe principalmente para ayudar con la navegación rápida dentro del archivo.

Tenga en cuenta que el guión ( // MARK: - ) hace que aparezca una buena línea de separación. Considere este comentario de MARK :

// MARK: - A mark comment lives here.

La línea de separación gris más oscura justo encima de la opción en negrita en ese menú proviene del tablero.

Además, podemos lograr esta línea de separación sin un comentario simplemente al no tener ningún texto después del guión:

// MARK: -

Como se mencionó, // TODO: y // FIXME: comentarios también aparecerán aquí.

// MARK: - Prime functions func isPrime(_ value: UInt) -> Bool { // TODO: Actually implement the logic for this method return true } func nthPrime(_ value: UInt) -> Int { // FIXME: Returns incorrect values for some arguments return 2 }

  • Los FIXME obtienen un pequeño ícono de curita que los ayuda a destacarse.
  • El ícono MARK se ve como una tabla de contenido
  • Los íconos TODO se parecen más a una lista de verificación

Al hacer clic en cualquier línea en la barra de salto rápido lo lleva directamente a esa línea en el código fuente.

¿Cuál es el propósito de escribir comentarios en Swift como:

// MARK: This is a comment

Cuando también puedes hacer:

// This is a comment

¿Qué logra el // MARK ?


MARK simplemente agrega un MARK visual en la barra de salto como este:

ex // MARK: Core Data Stack


Siempre puedes usar

// MARK: - Properties var name: String // MARK: - Methods func display() { } init(name: String, rollNumber: Int) { // TODO: add configuration code self.name = name } // FIXME: bug XYZ func fixBug() { }