SlideShare uma empresa Scribd logo
1 de 17
 En este tema nos ocupamos del concepto de abstracción, dedicando la mayor
atención a la abstracción de datos, además de presentar un practico ejemplo para
la comprensión de este tema.
 Abstracción
 Aislar
 Datos
 Características esenciales
 Objeto
 Código
 Reutilizar
 Datos relevantes
 Objetivo
 Descomponer
 Partes
 Subpartes
 La abstracción consiste en aislar un elemento de su contexto o del resto de los
elementos que lo acompañan. En programación, el término se refiere al énfasis en
el "¿qué hace?" más que en el "¿cómo lo hace?" (Característica de caja negra). El
común denominador en la evolución de los lenguajes de programación, desde los
clásicos o imperativos hasta los orientados a objetos, ha sido el nivel de
abstracción del que cada uno de ellos hace uso.
 La abstracción de datos es una técnica de diseño de programas, su utilización es
independiente del lenguaje de programación.
 Los lenguajes de programación son las herramientas mediante las cuales los
diseñadores de lenguajes pueden implementar los modelos abstractos. La
abstracción ofrecida por los lenguajes de programación se puede dividir en dos
categorías: abstracción de datos (pertenecientes a los datos) y abstracción de
control (perteneciente a las estructuras de control).
 Los diferentes paradigmas de programación han aumentado su nivel de
abstracción, comenzando desde los lenguajes de máquina, lo más próximo al
computador y más lejano a la comprensión humana; pasando por los lenguajes de
comandos, los imperativos, la orientación a objetos (POO), la Programación
Orientada a Aspectos (POA); u otros paradigmas como la programación
declarativa, etc.
 La abstracción encarada desde el punto de vista de la programación orientada a
objetos expresa las características esenciales de un objeto, las cuales distinguen al
objeto de los demás. Además de distinguir entre los objetos provee límites
conceptuales. Entonces se puede decir que la encapsulación separa las
características esenciales de las no esenciales dentro de un objeto. Si un objeto
tiene más características de las necesarias los mismos resultarán difíciles de usar,
modificar, construir y comprender.
 La misma genera una ilusión de simplicidad dado a que minimiza la cantidad de
características que definen a un objeto.
 Durante años, los programadores se han dedicado a construir aplicaciones muy
parecidas que resolvían una y otra vez los mismos problemas. Para conseguir que
sus esfuerzos pudiesen ser utilizados por otras personas se creó la POO que
consiste en una serie de normas para garantizar la interoperabilidad entre
usuarios de manera que el código se pueda reutilizar.
 A grandes rasgos, la abstracción, permite que dispongamos de las características
de un objeto que necesitemos. Si necesitamos el objeto Persona, podríamos poner
nombre, edad, dirección, estado civil, etc. Si lo necesitamos en un sistema
administrativo, pero, si lo requerimos para el área de biología, dentro de sus
atributos quizá tengamos, ADN, RND, Gen x1, Gen x2, etc., y los atributos antes
mencionados no sean requeridos. En general, podemos decir que Persona cuenta
con todos los atributos mencionados aquí, pero por el proceso de abstracción
excluimos todos aquellos que no tienen cabida en nuestro sistema. Se define como
un método por el cual se rescatan los datos relevantes y se ignoran los
irrelevantes.
 Consiste en visualizar tu objetivo en tu mente, y descomponerlo en varias partes,
y a su vez, descomponer estas partes en otras subpartes, y así sucesivamente,
hasta tener partes elementales y atómicos que no se pueden descomponer (o que
no convienen).
Supongamos que queremos programar una silla.
Bueno, pero que es una silla? Como esta compuesta?
La silla tiene un respaldo, y patas
Bueno, entonces ya tenemos ahora dos objetos separados, Respaldo y Patas, que
juntos forman una silla.
Bueno, ¿pero que tienen las patas?
Bueno, tienen madera.
Entonces tenemos un nuevo objeto, Madera, que forma una Pata, que junto a
Respaldo, forman una silla.
Pero ¿que tiene el Respaldo? bueno, tiene un Almohadón. Y el Almohadón? Bueno,
tiene algodón.
 Entonces, hemos descompuesto una silla, en varias partes atómicas, obteniendo el
siguiente gráfico:
> Madera > Pata >>>>>>>>>>>>>>>>>>>> SILLA
> Algodón > Almohada > Respaldo >>>>>>^
 A la hora de programar, lo ideal es empezar desde lo mas abstracto (partes mas
pequeñas) y luego seguir por las partes menos abstractas (mas grandes).
Ya que, sin Madera, no se puede obtener una Pata, y sin una Pata, no se puede
obtener una Silla.
Se comenzarías programando la Madera y el Algodón, luego la Pata y la
Almohada, luego el Respaldo y finalmente, la Silla.
Por esto es muy importante la abstracción de datos, ya que tener este tipo de
mecánica para programar te permite tener un programa mas estable.
Si quieres que la silla sea de oro, simplemente, modificas el elemento Madera para
que sea Oro, y eso afectaría la pata y a la silla. No modificarías el código de TODA
la silla entera (que seria tu único elemento si no utilizas la abstracción).
 public class Conjunto {
 private char recipiente[ ];
 private int tam;
 public Conjunto(){
 recipiente = new char[256];
 tam = 0;
 }
 public Conjunto(Conjunto S){
 recipiente = new char[256];
 for (int i = 0; i < S.length; i++)
 recipiente[i] = S. recipiente[i];
 tam = S.tam;
 }
 La programación orientada a objetos es la agregación de varias técnicas de
programación que se han desarrollado con el correr del tiempo. Su uso se está
difundiendo mucho por la importancia que tiene el desarrollo de interfaces para
programas, las que de una manera muy natural pueden implementarse usando
técnicas de abstracción y programación por objetos. Aunque usar la abstracción de
datos podría resultar difícil, es más difícil no hacerlo, pues en algunos casos se
dura el doble de tiempo programando, vale la pena el esfuerzo, pues la mejora en
la modularidad de los programas que produce aumenta mucho su calidad.
 https://mx.answers.yahoo.com/question/index?qid=20120218143642AAdjplm

Mais conteúdo relacionado

Mais procurados

Mais procurados (19)

Presentación poo
Presentación pooPresentación poo
Presentación poo
 
1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos
 
Modelo Dinamico
Modelo DinamicoModelo Dinamico
Modelo Dinamico
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a Objetos
 
Analisis y diseño de sistemas
Analisis y diseño de sistemasAnalisis y diseño de sistemas
Analisis y diseño de sistemas
 
Analisis y diseño orientado a objetos exposicion
Analisis y diseño orientado a objetos exposicionAnalisis y diseño orientado a objetos exposicion
Analisis y diseño orientado a objetos exposicion
 
Diapositivas de la poo
Diapositivas de la pooDiapositivas de la poo
Diapositivas de la poo
 
12 Clase Analisis Orientado A Objetos
12 Clase Analisis Orientado A Objetos12 Clase Analisis Orientado A Objetos
12 Clase Analisis Orientado A Objetos
 
Abstraccion ppt
Abstraccion pptAbstraccion ppt
Abstraccion ppt
 
Poo presentacion
Poo presentacionPoo presentacion
Poo presentacion
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A Objetos
 
e.si.m.l.p
 e.si.m.l.p e.si.m.l.p
e.si.m.l.p
 
Programacion Orientada A Objetos
Programacion Orientada A ObjetosProgramacion Orientada A Objetos
Programacion Orientada A Objetos
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
 
Copia de e.si.m.l.p
Copia de e.si.m.l.pCopia de e.si.m.l.p
Copia de e.si.m.l.p
 
Copia de e.si.m.l.p
Copia de e.si.m.l.pCopia de e.si.m.l.p
Copia de e.si.m.l.p
 
Realizarmanipulacion
RealizarmanipulacionRealizarmanipulacion
Realizarmanipulacion
 
Realizarmanipulacion
RealizarmanipulacionRealizarmanipulacion
Realizarmanipulacion
 
Tecnologia orientado a objetos
Tecnologia orientado a objetosTecnologia orientado a objetos
Tecnologia orientado a objetos
 

Semelhante a Abstracción de datos en java

Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A ObjetosAndrés
 
Fundamentos del Enfoque OO
Fundamentos del Enfoque OOFundamentos del Enfoque OO
Fundamentos del Enfoque OOsullinsan
 
Paradigma de poo
Paradigma de pooParadigma de poo
Paradigma de poopixeleante
 
Paradigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a ObjetosParadigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a ObjetosJose Sanchez
 
Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)
Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)
Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)Avanet
 
Taller campus party .net
Taller campus party .netTaller campus party .net
Taller campus party .netcampus party
 
Taller campus party
Taller campus partyTaller campus party
Taller campus partycampus party
 
Programacion estructurad de base de datos
Programacion estructurad de base de datosProgramacion estructurad de base de datos
Programacion estructurad de base de datosJuan Moran Sanchez
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetosCarlos Esteves
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetosCarlos Esteves
 

Semelhante a Abstracción de datos en java (20)

Abstraccion
AbstraccionAbstraccion
Abstraccion
 
Abstraccion
AbstraccionAbstraccion
Abstraccion
 
Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A Objetos
 
Fundamentos del Enfoque OO
Fundamentos del Enfoque OOFundamentos del Enfoque OO
Fundamentos del Enfoque OO
 
Paradigma de poo
Paradigma de pooParadigma de poo
Paradigma de poo
 
Paradigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a ObjetosParadigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a Objetos
 
Compu 1
Compu 1Compu 1
Compu 1
 
Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)
Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)
Taller Campus Party 2011: Desarrollo de Aplicaciones con .NET (Sesión 1)
 
Expo
ExpoExpo
Expo
 
Taller campus party .net
Taller campus party .netTaller campus party .net
Taller campus party .net
 
Taller campus party
Taller campus partyTaller campus party
Taller campus party
 
Programacion estructurad de base de datos
Programacion estructurad de base de datosProgramacion estructurad de base de datos
Programacion estructurad de base de datos
 
Intro oo
Intro ooIntro oo
Intro oo
 
Intro oo
Intro ooIntro oo
Intro oo
 
Intro oo
Intro ooIntro oo
Intro oo
 
Programacion o.o.
Programacion o.o.Programacion o.o.
Programacion o.o.
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 

Último

actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoJosDanielEstradaHern
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxnandoapperscabanilla
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVGiustinoAdesso1
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxdkmeza
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosJonathanCovena1
 

Último (20)

actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° grado
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCV
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 

Abstracción de datos en java

  • 1.
  • 2.  En este tema nos ocupamos del concepto de abstracción, dedicando la mayor atención a la abstracción de datos, además de presentar un practico ejemplo para la comprensión de este tema.
  • 3.  Abstracción  Aislar  Datos  Características esenciales  Objeto  Código  Reutilizar  Datos relevantes  Objetivo
  • 5.  La abstracción consiste en aislar un elemento de su contexto o del resto de los elementos que lo acompañan. En programación, el término se refiere al énfasis en el "¿qué hace?" más que en el "¿cómo lo hace?" (Característica de caja negra). El común denominador en la evolución de los lenguajes de programación, desde los clásicos o imperativos hasta los orientados a objetos, ha sido el nivel de abstracción del que cada uno de ellos hace uso.
  • 6.  La abstracción de datos es una técnica de diseño de programas, su utilización es independiente del lenguaje de programación.  Los lenguajes de programación son las herramientas mediante las cuales los diseñadores de lenguajes pueden implementar los modelos abstractos. La abstracción ofrecida por los lenguajes de programación se puede dividir en dos categorías: abstracción de datos (pertenecientes a los datos) y abstracción de control (perteneciente a las estructuras de control).
  • 7.  Los diferentes paradigmas de programación han aumentado su nivel de abstracción, comenzando desde los lenguajes de máquina, lo más próximo al computador y más lejano a la comprensión humana; pasando por los lenguajes de comandos, los imperativos, la orientación a objetos (POO), la Programación Orientada a Aspectos (POA); u otros paradigmas como la programación declarativa, etc.
  • 8.  La abstracción encarada desde el punto de vista de la programación orientada a objetos expresa las características esenciales de un objeto, las cuales distinguen al objeto de los demás. Además de distinguir entre los objetos provee límites conceptuales. Entonces se puede decir que la encapsulación separa las características esenciales de las no esenciales dentro de un objeto. Si un objeto tiene más características de las necesarias los mismos resultarán difíciles de usar, modificar, construir y comprender.  La misma genera una ilusión de simplicidad dado a que minimiza la cantidad de características que definen a un objeto.
  • 9.  Durante años, los programadores se han dedicado a construir aplicaciones muy parecidas que resolvían una y otra vez los mismos problemas. Para conseguir que sus esfuerzos pudiesen ser utilizados por otras personas se creó la POO que consiste en una serie de normas para garantizar la interoperabilidad entre usuarios de manera que el código se pueda reutilizar.
  • 10.  A grandes rasgos, la abstracción, permite que dispongamos de las características de un objeto que necesitemos. Si necesitamos el objeto Persona, podríamos poner nombre, edad, dirección, estado civil, etc. Si lo necesitamos en un sistema administrativo, pero, si lo requerimos para el área de biología, dentro de sus atributos quizá tengamos, ADN, RND, Gen x1, Gen x2, etc., y los atributos antes mencionados no sean requeridos. En general, podemos decir que Persona cuenta con todos los atributos mencionados aquí, pero por el proceso de abstracción excluimos todos aquellos que no tienen cabida en nuestro sistema. Se define como un método por el cual se rescatan los datos relevantes y se ignoran los irrelevantes.
  • 11.  Consiste en visualizar tu objetivo en tu mente, y descomponerlo en varias partes, y a su vez, descomponer estas partes en otras subpartes, y así sucesivamente, hasta tener partes elementales y atómicos que no se pueden descomponer (o que no convienen).
  • 12. Supongamos que queremos programar una silla. Bueno, pero que es una silla? Como esta compuesta? La silla tiene un respaldo, y patas Bueno, entonces ya tenemos ahora dos objetos separados, Respaldo y Patas, que juntos forman una silla. Bueno, ¿pero que tienen las patas? Bueno, tienen madera. Entonces tenemos un nuevo objeto, Madera, que forma una Pata, que junto a Respaldo, forman una silla. Pero ¿que tiene el Respaldo? bueno, tiene un Almohadón. Y el Almohadón? Bueno, tiene algodón.
  • 13.  Entonces, hemos descompuesto una silla, en varias partes atómicas, obteniendo el siguiente gráfico: > Madera > Pata >>>>>>>>>>>>>>>>>>>> SILLA > Algodón > Almohada > Respaldo >>>>>>^
  • 14.  A la hora de programar, lo ideal es empezar desde lo mas abstracto (partes mas pequeñas) y luego seguir por las partes menos abstractas (mas grandes). Ya que, sin Madera, no se puede obtener una Pata, y sin una Pata, no se puede obtener una Silla. Se comenzarías programando la Madera y el Algodón, luego la Pata y la Almohada, luego el Respaldo y finalmente, la Silla. Por esto es muy importante la abstracción de datos, ya que tener este tipo de mecánica para programar te permite tener un programa mas estable. Si quieres que la silla sea de oro, simplemente, modificas el elemento Madera para que sea Oro, y eso afectaría la pata y a la silla. No modificarías el código de TODA la silla entera (que seria tu único elemento si no utilizas la abstracción).
  • 15.  public class Conjunto {  private char recipiente[ ];  private int tam;  public Conjunto(){  recipiente = new char[256];  tam = 0;  }  public Conjunto(Conjunto S){  recipiente = new char[256];  for (int i = 0; i < S.length; i++)  recipiente[i] = S. recipiente[i];  tam = S.tam;  }
  • 16.  La programación orientada a objetos es la agregación de varias técnicas de programación que se han desarrollado con el correr del tiempo. Su uso se está difundiendo mucho por la importancia que tiene el desarrollo de interfaces para programas, las que de una manera muy natural pueden implementarse usando técnicas de abstracción y programación por objetos. Aunque usar la abstracción de datos podría resultar difícil, es más difícil no hacerlo, pues en algunos casos se dura el doble de tiempo programando, vale la pena el esfuerzo, pues la mejora en la modularidad de los programas que produce aumenta mucho su calidad.