Gracias o la A2A. Esta es una pregunta difícil de responder sin que se convierta en una jerga técnica. La base de la tecnología de la información es la invención de una máquina que es una computadora en general. Esa es una máquina que puede resolver varios problemas diferentes dándole diferentes conjuntos de instrucciones o programación para utilizar con flexibilidad los datos de entrada para calcular los datos de salida de diferentes maneras. Las computadoras han existido al menos desde la época griega, pero no eran generales, es decir, estas computadoras fueron diseñadas para resolver un solo problema. ¡Estas máquinas antiguas no se pudieron reprogramar, su programación era parte del propio dispositivo y no se podía cambiar sin reconstruir toda la máquina!
Computadora más antigua del mundo: el Mecanismo de Antikythera tiene su programación integrada en el tamaño de los engranajes, la colocación de sus partes y el número de dientes en sus engranajes.
La diferencia entre la computadora en general y las computadoras especializadas es la base de la tecnología de la información. Como mencioné, ha habido computadoras durante mucho tiempo, pero estas computadoras no separaron el problema computacional a resolver del diseño de la computadora en sí. Por ejemplo, los antiguos tenían computadoras que podían calcular la posición de la luna y los planetas en el cielo según la fecha. No se puede pedir a la misma computadora que calcule la trayectoria de una bola de cañón dada la elevación de cañón y la velocidad de salida. El acto de separar el problema computacional del diseño del funcionamiento interno de las computadoras liberadas por computadora para resolver un sinfín de problemas y es la base de nuestro mundo moderno de tecnología de la información.
- ¿Cuál es el mejor grado para trabajos de TI?
- ¿Cuál tiene mejor trabajo, IT o Core?
- ¿Por qué se subestima la rama de ingeniería de TI en comparación con la rama de ingeniería de CSE?
- ¿Debo dejar mi trabajo actual de TI?
- ¿Cuáles son algunas de las grandes herramientas de CRM para las empresas de TI?
BABY, la primera computadora que ejecuta un programa desde la memoria almacenada
¿Cómo se liberó el diseño de una computadora de problemas específicos? El diseño de la computadora general se basa en el trabajo de un grupo de matemáticos de los siglos XIX y XX. Dos personas importantes fueron Alan Turing y John Van Neumann. Alan Turing describió matemáticamente lo que significa ser capaz de calcular un problema en general; Es decir, lo que significa computabilidad. Su máquina de Turing teórica podría resolver cualquier problema computable en una serie de pasos. Van Neumann diseñó la primera computadora digital práctica, que es la base de EDVAC, una computadora antigua que podía almacenar una serie de pasos, es decir, un programa en su memoria que implementa las ideas de Turing, que era la clave para ser reprogramable. Básicamente, lo que tenemos desde la computadora de Van Neumann hoy en día son solo mejoras en la tecnología que implementa el diseño de Van Neumann.
EDVAC, una práctica computadora digital basada en el diseño articulado por Van Neumann.
Lo que ha impulsado la TI en nuestro mundo moderno es la tecnología subyacente que implementa el diseño de Van Neumann, los chips de silicio, las unidades de disco, la velocidad de la red, etc. han mejorado más allá de los sueños más locos. La velocidad de las computadoras se ha duplicado una y otra vez y, al mismo tiempo, se ha miniaturizado. Esto ha permitido la potencia computacional necesaria en nuestros teléfonos inteligentes, para algoritmos de aprendizaje profundo, tomografía computarizada, etc. Cuanto más potente y compacto sea el motor de computación, más variados son los problemas que puede resolver.
Microscopio electrónico Vista de una pequeña porción de la computadora moderna de uso general.
Los programadores profesionales son muy conscientes de la potencia del diseño de Van Neumann para separar el diseño subyacente del problema que se está resolviendo. Esto es lo que los ingenieros de software llaman un patrón. Como dije, esta idea de generalizar la computación es realmente la base de TI. Si observamos la historia de la comunicación entre computadoras, vemos un patrón similar a las ideas revolucionarias de Van Neumann. Las antiguas redes entre computadoras fueron diseñadas para resolver un problema específico. Estas redes fueron diseñadas para pasar tipos de mensajes muy específicos entre computadoras. Luego viene DARPA y su ARPANET, que en realidad fue el primer tipo de red de propósito general, y el auge que tenemos de Internet. Otro ejemplo es separar los datos de cómo se muestran y el auge que tenemos de la World Wide Web. Separando el teléfono móvil del tipo de información que pueden usar, haciéndolos para propósitos generales, no solo llamadas de voz y boom, obtenemos iPhones y Android. Separa el uso de los datos de su contenido interno y obtenemos bases de datos.
Una red en capas separó la implementación del hardware subyacente de su uso por aplicaciones. La red física no importa para la aplicación.
Otra forma de pensar sobre todo esto, es que el diseño general de una computadora no hace ninguna suposición sobre los problemas que resolverá. Este patrón también se conoce como ocultación de información. En otras palabras, los detalles específicos del problema que se resuelve con el diseño de la computadora de Van Neumann están ocultos en la programación. A la computadora en sí no le importa lo que hacen los programas, solo sabe cómo ejecutar el programa en sí.
El diseño orientado a objetos oculta información específica de ideas más generales
A principios de la década de 1980, los programadores comenzaron a utilizar nuevos lenguajes de programación de computadoras, llamados lenguajes orientados a objetos, que se basan en la ocultación de información. Estos nuevos lenguajes permitieron a los programadores crear marcos como .NET, JEE, etc. que hacen posible que las aplicaciones potentes que tenemos hoy en día sean más baratas, ya que pueden estar más enfocadas en el problema que están resolviendo en lugar de la plomería subyacente y los detalles de cada persona. ordenadores.
Una red neuronal que puede aprender
Estamos viendo ahora, otra revolución como la revolución de Turing y Van Neumann. Las computadoras están empezando a programarse a través del aprendizaje. Los programas ya no tienen pasos individuales inherentes a las computadoras de Van Neumann, pero funcionan más como nuestros cerebros. Esto hace que las computadoras puedan resolver problemas que están más allá de la programación normal de computadoras. Estamos al comienzo de esta nueva revolución. Creo que traerá cambios igualmente profundos a nuestra sociedad como la computadora general.