Se nunca escoitaches falar de Alan Kay, polo menos escoitaches as súas famosas citas. Por exemplo, esta cita de 1971:
A mellor forma de prever o futuro é inventándoo.
A mellor forma de prever o futuro é inventándoo.
Alan ten unha carreira moi colorida en informática. Recibiu
No noso
Sobre o desenvolvemento de software
Alan Kay cre que a revolución informática aínda está por chegar (
o problema é feble, ideas e ferramentas pouco escalables, preguiza, falta de coñecemento, etc.
Describe ben esta situación
O que Andy dá, Bill quítao
Andy deu, Bill tomou
Andy Grove, CEO de Intel, e Bill Gates, entón CEO de Microsoft.
Mellorar o estado actual de desenvolvemento foi o obxectivo do proxecto de investigación
No seu informe revelador
Alan considera Internet, protocolos TCP/IP, intérpretes LISP,
Chama a Internet (TCP/IP) un dos poucos proxectos de software a gran escala que foi deseñado correctamente, e o seu nivel de complexidade está en equilibrio co nivel de complexidade (complicación vs complexidade). Con menos de 20 liñas de código, o proxecto funciona como un sistema vivo e dinámico capaz de soportar miles de millóns de nodos e nunca estivo fóra de liña desde o seu lanzamento inicial en setembro de 1969. Simplemente deixamos de considerar que Internet é un proxecto de software normal creado por persoas:
Internet está tan ben desenvolvida que moitas persoas trátana como un recurso natural, como o Océano Pacífico, en lugar dun produto do traballo humano. Cando foi a última vez que vimos unha tecnoloxía tan estable, clara e sen erros? En comparación, a Rede é unha tontería. A web foi creada por afeccionados.
Sobre a programación orientada a obxectos
O primeiro que me interesou foi o seu
Pensei nos obxectos como células biolóxicas e/ou ordenadores individuais nunha rede que só podían comunicarse mediante mensaxes.
e experiencia en matemáticas:
A miña experiencia en matemáticas fíxome entender que cada obxecto pode ter varias álxebras, pódense combinar en familias, e isto pode ser moi útil.
Ideas para a unión tardía e poderosas metacaracterísticas de LISPa:
A segunda fase é comprender a LISPa e usar esa comprensión para crear estruturas máis sinxelas, máis pequenas e poderosas e unir posteriormente.
E pronto Alan comezou a apoiar a idea de que as linguaxes dinámicas son
A vinculación tardía permite que as ideas que viñeron máis tarde no proceso de desenvolvemento se incorporen ao proxecto con menos esforzo (en comparación con sistemas enlazados anteriores como C, C++, Java, etc.)
E o potencial de cambios sobre a marcha e iteracións máis rápidas:
Unha das ideas clave é que o sistema debería seguir funcionando durante as probas, especialmente mentres se realizan cambios. Incluso os cambios importantes deben ser graduales e non tardar máis dunha fracción de segundo.
que falta en
Se usas linguaxes de encadernación inicial, como fai a maioría da xente, encárgase do que xa escribiu. Xa non será posible reformulalo facilmente.
Sorprendentemente, os seus pensamentos sobre OOP limitáronse a isto:
OOP para min son mensaxes, retención e protección local, ocultación estatal e vinculación tardía de todo. Isto pódese facer en Smalltalk e en LISP.
E nada sobre a herdanza. Este non é o OOP
Gustaríame ter usado o termo "obxecto" para este tema hai moito tempo porque fai que moitas persoas se centren na menor das ideas.
A gran idea de que carecen as linguaxes OO modernas de tipo estático:
A gran idea son as "mensaxes"
El cre en centrarse nas mensaxes, o acoplamento solto e as interaccións do módulo en lugar de nas partes internas dun obxecto:
A clave para crear bos sistemas escalables é traballar os mecanismos de comunicación entre módulos, e non traballar as súas propiedades internas e o seu comportamento.
Parécenlle linguas escritas de forma estática
Non estou en contra dos tipos, pero non coñezo ningún tipo de sistema que non cause dor. Así que aínda me gusta a escritura dinámica.
Algúns idiomas populares hoxe en día usan a mensaxe de Smalltalk para transmitir ideas, encadernación tardía e
Destrúe todo e crea algo mellor
Alan ten unha teoría interesante sobre o desenvolvemento da informática:
Paréceme que só hai un tipo de informática, e que a ciencia é como construír pontes. Alguén constrúe pontes, e alguén destrúeas e crea novas teorías. E hai que seguir tendo pontes.
Acerca de LISP
Alan Kay cre Lisp
mellor linguaxe de programación de todos os tempos
E que todo graduado en informática debería estudalo:
A maioría das persoas que cursan títulos en CS non entenden a importancia de Lisp. Lisp é a idea máis importante da informática.
Sobre o ambiente e o contexto adecuados
Adoita lembrar a atmosfera única
O punto de vista vale 80 puntos de coeficiente intelectual.
Alan Kay di:
A historia de ARPA/PARC demostra como unha combinación de visión, financiamento modesto, o contexto e o proceso axeitados poden nacer máxicamente novas tecnoloxías que non só impactan na civilización senón que tamén crean un enorme valor para a sociedade.
E é certo.
- Impresoras láser
- Programación orientada a obxectos / Smalltalk
- Ordenadores persoais
- Ethernet/computación distribuída
- GUI / rato de ordenador / WYSIWYG
E en
PS
Fonte: www.habr.com