¿El software real usa más declaraciones if y else?

si (a) {
} más si (b) {
}

Es estructuralmente diferente de:

si (a) {
} más {
}
si (b) {
} más {
}

Y:

si (a) {/ * … * /}
si (b) {/ * … * /}
si (c) {/ * … * /}

es diferente de:

interruptor (a) {/ * … * /
}

Por supuesto, estas diferencias estructurales dependen del idioma que esté utilizando. Java puede funcionar diferente de Perl, y PHP es diferente de Javascript. Por ejemplo, hay una recolección de basura opcional en PHP, pero en Javascript está todo el asunto del “carroñero”. Visual Basic tiene Ifs y Elses completamente diferentes según lo mencionado por otro respondedor. Comprenda lo que está haciendo la tecnología subyacente: ¿qué significa la diferencia de sintaxis para la funcionalidad resultante?

También hay “mejores prácticas”, pero en realidad no están hablando de un aspecto del lenguaje como el anterior a menos que estemos en idiomas o marcos de navegador.

C y C ++ también los tienen, pero generalmente es algo después de la especificación. Por ejemplo, en C / C ++, desea rellenar los parámetros de macros con paréntesis porque ayuda a compartimentar el reemplazo literal proporcionado por el programador cuando se utiliza la macro.

Ejemplo:

#definir UMIN (a, b) ((a) <(b)? (a): (b))

Al agregar el paréntesis, estamos protegiendo al compilador de los excesos cuando se utilizan ciertos tipos de parámetros. Estamos afirmando al compilador que el parámetro “a” es una unidad en sí mismo, no un nombre parcial o que debe interpretarse como una sección porque de lo contrario pueden producirse confusiones.

Al igual que lo recomiendo al usar printf () para convertir cada parámetro a su tipo previsto para evitar un comportamiento indefinido. Este es un consejo, una mejor práctica, pero no una regla difícil y rápida. Rómpelo y descubrirá por qué lo hago, pero puede romperse.

Tal vez todos deberíamos mirar la especificación y el comportamiento del compilador en lugar de la opinión de algunos expertos sobre la mejor manera de hacer las cosas.

¿Estás siguiendo estas filosofías y técnicas?

  • SÓLIDO
  • SECO
  • MVC

Asegúrese de evitarlos cuando no tengan un propósito superior. No siempre uso el “SO” de SOLID, para casos especiales, en ciertos momentos, etc. MVC es extremadamente suelto en comparación con DRY, que literalmente significa “No te repitas”

Mi filosofía es “si funciona de la manera que usted quiere, déjelo”: si la sintaxis del código (y la estructura que proporciona) proporciona un medio para un fin, entonces está cumpliendo su mejor propósito.

Si desea escribir software “lenta pero correctamente, teniendo en cuenta la opinión de todos, incluso si es la corrección del estilo”, nunca terminará sus proyectos.

Las casas de software burocrático generalmente no producen trabajo muy rápido. Estos son los que tienen muchos procesos que supuestamente mejoran la calidad del código, pero introducen mucho papeleo. De acuerdo, algunos trabajos requieren un mantenimiento cuidadoso y minucioso. Cortar la burocracia, al menos en las recomendaciones de otros. Hay tantos, por lo general, es solo una forma de criticar pasivamente agresivamente, aunque algunos consejos son bien tomados.

Solo hay algunas métricas para el “software correcto”:

  • “¿Qué tan bien funciona?” (¿Se verifica que funciona? ¿Qué pasa con los casos de esquina? ¿Consume más recursos de los que necesita? ¿Es rápido?)
  • “¿Qué tan rápido funciona?” (¿Podría optimizarse aún más?)
  • “¿Qué tan fácil es de usar?” (¿Requiere documentación esotérica que haga referencia? ¿Es intuitivo y está escrito ‘inteligentemente’?)
  • “¿Qué tan fácil es modificar?” (¿Qué tan claramente escrito está? ¿Está bien documentado? ¿Funcionará en una variedad de plataformas o hay una manera de portar el código rápidamente?)
  • “¿Cuánto tiempo se tardó en hacer?” (¿Qué tan costoso de desarrollar?)
  • “¿Cuánto vale?” (¿Qué tan rentable es? ¿Qué utilidad proporciona? ¿Es esta la utilidad más posible o la utilidad óptima? ¿Está “completa”? ¿La usan otros?)

Es muy difícil obtener el 100% en todas las categorías. Solo hay mucho tiempo en el día.

Mira esta tetera: Shadertoy

/ * Gracias Coyote !!! * / #definir A (i) vec2 (4 * (T [i] y 63) -120,3 * (T [i] >> 6) -40) -q
/ * Creado por Sebastien Durand-2014 * / #define G (a) para (int i = 0; i <a; i ++)
/ * Licencia Creative Commons * / #define U (a, b) (ax * by-bx * ay)
/ * Atribución – No comercial * / #define N normalize
/*ShareAlike3.0 UnportedLicense. * / #define W vec3

flotador K, a, t
, z = 0.; W
CORREOS;
int [] T =
int [] (30,46,110,242,690,
1074,1966,2029, 1964,2092, 2209,2270, 2466,2595
2590,1743,1793,1345, 896, 652,2107,1976, 1591,
1077,944); flotante B (int i) {vec2 q = P.xy, m = A (i), n = A (i + 1), o = A (i +
2); flotante x = .5 * U (o, m), y = U (n, o), z = U (m, n); q = m * (x + y) + n * (zy) – o * (x + z
); qx = -qx; m- = n + = no; K = abrazadera (.5 * U ((o + (y * zx * x) * q .yx / dot
(q, q)), m) / (x + x + y + z), 0., 1.); return sqrt (dot (q = o + K * (n-o + K
* m), q) + P * P) .z;} flotante M (W p) {P = p + O; a = min (min (B (15), B (17)) – 6.
, max (Py-50., min (abs (B (20) -7.) – 1., B (22) * (. 25 + .75 * K) -8.))); P.
xz / = N (P.xz); Pz = 0 .; G (7) a = min (a, (B (i + i) -2.) * .7);
return a;} void mainImage (out vec4 o, vec2 p) {vec2 r = iResolution
.xy; o = o-o + .8-.3 * longitud (p = (p + pr) / ry); WY = W (0,1,0), u = cruz (O
= N (W (cos (t = iDate.w) ,. 6-iMouse.y / ry, sin (t))), Y), d = N (px * u +
py * cross (u, O) -OO), E = Y / 1e3, L = N (3. * Y + O); O * = 3e2; G (99
&& z <5e2) z + = t = M (d * z); if (t <Ey) {O + = z * d; u = N (W (M (E.
yxx), M (E), M (E.xxy)) – M (EE)); z = .3; G (30) z = min (z
, M (L * (t + = 2.)) / T); o = mezclar (o, .4 * (Y * max (z + z, 0.)
+ Y) .grbb + pow (max (punto (reflejar (L, u), d
), 0.), 1e3), – punto (u, d));}}

If, else, if else, etc. son las declaraciones condicionales de cualquier lenguaje de programación. Se utilizan para formar bucles condicionales para operaciones. Cada lenguaje de programación tendrá estos en algún punto del código. Incluso si no se usan en la escala periférica, en el nivel subyacente de todos los códigos, estos bucles deben estar presentes.

Si, de lo contrario, los bucles son las características básicas de la programación. Todos los softwares y programas ficticios normalmente usarán estas declaraciones en todas partes.

Si, de lo contrario, son las características básicas de la mayoría de todos los lenguajes de programación. Los softwares usan if, else , así como switch, case también se usan en casos flexibles.

More Interesting

¿Cuáles son algunas buenas aplicaciones de tareas que puedo usar (aparte de ChoreMonster)?

¿Qué aplicación es mejor para el análisis del mercado de valores en la India?

Telegram VS Echofin. ¿Qué aplicación es mejor para chats y señales financieras?

Tengo un archivo de texto pesado que es de 100 MB. No me sorprendió cuando se bloqueó mi editor de texto cuando intenté abrirlo. Pero, ¿por qué una computadora con 8 GB de memoria no puede abrir un archivo de texto de 100 MB?

¿Cuál es el mejor ERP para escuelas y colegios?

¿Cuál es el mejor software de gestión de proyectos de equipo (nube) para un equipo de marketing de inicio?

¿Cuál es el mejor software de recuperación de datos para recuperar datos de una partición RAW?

¿Cuál es el mejor software de seguimiento de tiempo para el trabajo de consultoría por hora, especialmente uno basado en la web?

¿Qué tan importante es Jabber (XMPP) para una aplicación de chat de próxima generación?

¿Cuál es el futuro de las aplicaciones a pedido?

¿Cuál es la calidad de Nuance Dragon NaturallySpeaking frente al software de Apple y Google?

¿Qué empresas usan el software Creo?

¿Debo volver a solicitar un trabajo que me dijo que mi solicitud no puede pasar debido a un pequeño ajuste estratégico?

¿Qué software utilizan los grandes estudios de animación como Pixar o DreamWorks?

¿Cómo solicitar un certificado de nacimiento en Andhra Pradesh para los nacidos en los años 90? ¿Qué es "el proceso en particular"? O si es posible, ¿hay alguna aplicación en línea?