¿Aborda go-idioma de Google los problemas en el post de Paul Graham '¿Por qué Arco no es especialmente Orientado a Objetos'?

StackOverflow https://stackoverflow.com/questions/1714004

  •  19-09-2019
  •  | 
  •  

Pregunta

¿Google de Golang abordar los problemas con los idiomas abordan en el post de Paul Graham ' ¿Por qué Arco no es especialmente Orientado a Objetos '?

¿Fue útil?

Solución

Mi sensación inicial hacia este es "Es demasiado pronto para decir"

  

1) Programación orientada a objetos es emocionante si tiene una   lengua estáticamente mecanografiada sin   cierres léxicos o macros. Para algo   grado, que ofrece una forma de evitar estos   limitaciones. (Véase Décimo de Greenspun   Regla.)

Ir apoya literales de funciones (ver docs ), que si estoy leyendo esto correctamente permiten a pasar funciones como parametros, si se define en otro lugar o creada ad-hoc.

  

2) Programación orientada a objetos es muy popular en las grandes empresas, ya que   se adapte a la forma en que escriben software. A   grandes empresas, el software tiende a ser   escrito por grande (y con frecuencia   cambiantes) de los equipos mediocres   programadores. Orientado a objetos   programación impone una disciplina en   estos programadores que impide cualquier   uno de ellos de hacer demasiado   dañar. El precio es que el   resultante código es hinchado con   protocolos y lleno de duplicación.   Esto no es un precio demasiado alto para las grandes   empresas, debido a que su software es   probablemente va a ser hinchado y lleno   la duplicación de todos modos.

Este punto es muy subjetivo para responder.

  

3) Programación orientada a objetos genera una gran cantidad de lo que parece   trabajo. En los días de plegado en acordeón,   había un tipo de programador que   Sólo sería poner cinco o diez líneas de   código en una página, precedida por veinte   líneas de elaboradamente formateado   los comentarios. Programación orientada a objetos   es como el crack para estas personas: se   permite incorporar todo esto   andamio de la derecha en su fuente   código. Algo que un hacker Lisp   podría manejar empujando un símbolo en   una lista de archivos se convierte en un conjunto de clases   y métodos. Por lo que es una buena herramienta si   desea convencer a ti mismo, o   otra persona, que está haciendo un montón   de trabajo.

Desde Go no es realmente un lenguaje orientado a objetos, es probable que pueda resolver el problema en cualquier fashon que se sienta cómodo.

  

4) si una lengua es en sí mismo un programa orientado a objetos, puede ser   extendido por los usuarios. Bien quizás. O   tal vez usted puede hacer aún mejor   ofreciendo las sub-conceptos de   programación orientada a objetos a la   carta. La sobrecarga, por ejemplo, es   No intrínsecamente ligada a clases.   Veremos.

Ir parece tener un enfoque interesante para los objetos, en las que no se les exige que preocuparse / desarrollar grandes árboles de objetos. Parece que las herramientas están presentes en el lenguaje para estructurar los datos en una forma orientada objeto sin que el bloqueo en un entorno orientado a objetos puro.

  

5) abstracciones orientado a objeto de mapa perfectamente en los dominios de cierta   determinados tipos de programas, como   simulaciones y sistemas CAD.

...

Otros consejos

Paul tiene algunos puntos interesantes, en general, he leído muchas de sus reflexiones. En este caso, no estamos de acuerdo. Es una tuerca Lisp, y una tuerca programa de mierda. Parece que empeñar difícil de entender programas como el trabajo de los grandes programadores. Sí, me doy cuenta de que es más matizada que eso, pero que realmente se reduce sólo a eso. Al final del día, ya sea su código es un trabajo fácil con, o no lo es. Y algunos programadores, los programadores que Pablo considere grandes, serán capaces de aguantar más basura que otros y aún así ser capaz de hacer cara o cruz de lo que pretende el código. Es una habilidad, pero con toda seguridad no es el único un buen programador necesidades.

Hablando de Arco, es una mierda, y si no me incluso las personas equivocadas en la comunidad Lisp lo creo -. Mi punto aquí es que incluso las personas inteligentes cometen errores

Una vez más, Pablo es un tipo inteligente, pero todo su enfoque en esta pieza en particular es de la marca que parece.

¡Espera, sin embargo, se van muy orientada a objetos? Parece totalmente agnóstico en ese frente. Puede utilizar programación orientada a objetos o FP o programación imperativo dentro de GO. Es decir, al estilo de prólogo "programación" sería un tramo, pero por lo demás ...

De hecho, yo diría que se parece Scala Ir a este respecto:. Hay algunos paradigmas de objetos por ahí, y sin embargo, también hay lambdas y typecasing por ahí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top