La API de BBj

Es muy importante comprender como empezaremos a usar la sintaxis de objetos en BBj. Entender bien este concepto desde el principio, servirá muchísimo para adentrarnos en el conocimiento de los incontables elementos de BBj bajo la sintaxis de objetos.
¿Qué debemos entender por objetos cuando hablamos de la POO?
Los manuales de POO definen un objeto como un componente de software que encapsula estado y un comportamiento. Los objetos permiten dar forma al software en términos y abstracciones reales. En términos estrictos, un objeto es una instancia de una clase.

¿Qué es una clase?
Al igual que los objetos en la vida real, el mundo de la POO agrupa los objetos de acuerdo con sus comportamientos y atributos comunes. Tomemos un ejemplo de biología: los perros, gatos, elefantes y humanos se clasifican como mamíferos, porque tienen características comunes aunque estamos hablando de especies distintas. De la misma forma, en el mundo del software, las clases agrupan a todos aquellos objetos que tienen alguna relación. Por lo tanto, debemos entender que una clase define los atributos y comportamientos comunes que comparte un tipo de objeto. Los objetos de un tipo dado comparten los mismos comportamientos y atributos (luego comentaremos que se entiende por comportamiento y que se entiende por atributo).

Las clases actúan muy parecido a un molde para galletas, en el sentido que una clase se utiliza para crear o “instanciar” un objeto; tal como un molde se usa para crear galletas.

Los atributos son las características externas y visibles de una clase.

Un comportamiento es la acción que realiza un objeto cuando se le pasa información.

POO en BBj

Recurriendo al paradigma de la POO, BASIS definió a BBj como un conjunto de clases que los desarrolladores podemos utilizar. Esto nos lleva a la necesidad de entender el lenguaje de una manera distinta. Si antes veíamos a BBx y Vpro5 como un lenguaje con un conjunto de comandos, funciones, variables y mnemónicos que podemos utilizar, ahora podemos ver a BBj como un conjunto de piezas base que podemos utilizar para armar nuestras aplicaciones (tenemos los moldes para hacer galletas de las más variadas figuras).

Por lo tanto, tenemos que aprender a “instanciar” o crear los objetos que iremos necesitando a partir de las clases base existentes en BBj.

Con el fin de facilitarnos el aprendizaje y el uso de estas clases, BBj presenta mucha de la funcionalidad disponible en una estructura de árbol en la que podemos ir adentrándonos conforme van surgiendo las necesidades. Conviene aclarar que la forma de programar que conocemos de BBx y Vpro5 se conserva casi en un 100%. La virtud de los nuevos conceptos es que podemos lograr exactamente la misma funcionalidad pero recurriendo a la sintaxis de objetos. Es más, hasta podemos trabajar combinados elementos de la vieja escuela con elementos de la nueva. Quizás esa sea la tónica en tus primeros programas en BBj, pues donde falte el conocimiento de cómo hacer algo en sintaxis de objetos, te servirá de salvavidas utilizar la modalidad de programación a la que estas habituado actualmente.

El objeto BBjAPI es el punto de entrada para crear y usar objetos BBj. Si queremos comenzar a desarrollar programas con sintaxis de objetos, esto será lo primero que veremos en todo programa BBj. Bajo el BBjAPI se encuentran alistados los principales objetos de BBj. Estos son:

BBjAPI

  • BBjAdmin
  • BBjConfig
  • BBjFileSystem
  • BBjPrinter
  • BBjRecordSet
  • BBjSysGui
  • BBjMDI
  • BBjThinClient

Nuestros primeros esfuerzos se centrarán principalmente en una de las ramas: el BBjSysGui. El manual incluido con la instalación está estructurado considerando esta ramificación. Por lo que seguir la secuencia de elementos será muy natural.

Publicado en: BBj, Tutoriales

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>