Download Lenguajes de programación - 3er-PAR-FDP

Document related concepts
no text concepts found
Transcript
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
3.1- Características del lenguaje de programación.
1:. Legibilidad un lenguaje de alto nivel buena voluntad permiten escribir programas en algunas formas que se
asemejan a una descripción bastante-Inglés de los algoritmos subyacentes. Si se tiene cuidado, la codificación se
puede hacer de una manera que es esencialmente auto-documentación.
2:. Portabilidad-Los lenguajes de alto nivel, que es esencialmente independiente de la máquina, debe ser capaz
de desarrollar software portátil.
3:. Generalidad La mayoría de los lenguajes de alto nivel permite la escritura de una amplia variedad de
programas, aliviando así el programador de la necesidad de ser experto en muchas lenguas distintas.
4:. La brevedad del lenguaje debe tener la capacidad para implementar el algoritmo con menor cantidad de
código. Programas expresadas en lenguajes de alto nivel son a menudo considerablemente más bajos que sus
equivalentes de bajo nivel.
5:. Comprobación de errores Ser humano, un programador es probable que comete muchos errores en el
desarrollo de un programa de ordenador. Muchos lenguajes de alto nivel de ejecución de una gran cantidad de
comprobación
de
errores
tanto
en
tiempo
de
compilación
como
en
tiempo
de
ejecución.
6. Costo: El costo final de un lenguaje de programación es una función de muchas de sus características.
7. Notación Familiar: Un lenguaje debe tener notación familiar, para que pueda ser entendido por la mayoría de
los programadores.
8: Rápido. Traducción Debe admitir traducción rápida.
9:. Eficiencia Se debe permitir la generación de código objeto eficiente.
10:. Modularidad Es deseable que los programas se pueden desarrollar en el lenguaje como un conjunto de
módulos compilados por separado, con los mecanismos adecuados para garantizar la libre coherencia entre estos
módulos.
11:. Ampliamente disponible lenguaje debe ser ampliamente disponible y debe ser posible para proporcionar
traductores para todas las máquinas principales y para todos los sistemas operativos más importantes.
Lenguajes de programación
Artículo Tabla de contenidos
Lenguaje de programación
Un lenguaje de programación" es un lenguaje diseñado para describir el conjunto de
acciones consecutivas que un equipo debe ejecutar. Por lo tanto, un lenguaje de
programación es un modo práctico para que los seres humanos puedan dar instrucciones a
una computadora.
Por otro lado, el término "lenguaje natural" define un medio de comunicación compartido
por un grupo de personas (por ejemplo: inglés o francés).
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
Los lenguajes que los equipos usan para comunicarse entre ellos no tienen nada que ver con
los lenguajes de programación; se los conoce como protocolos de comunicación. Se trata de
dos conceptos totalmente diferentes. Un lenguaje de programación es muy estricto:
A CADA instrucción le corresponde UNA acción de procesador.
El lenguaje utilizado por el procesador se denomina lenguaje máquina. Se trata de datos
tal como llegan al procesador, que consisten en una serie de 0 y 1 ( datos binarios).
El lenguaje máquina, por lo tanto, no es comprensible para los seres humanos, razón por la
cual se han desarrollado lenguajes intermediarios comprensibles para el hombre. El código
escrito en este tipo de lenguaje se transforma en código máquina para que el procesador
pueda procesarlo.
El ensamblador fue el primer lenguaje de programación utilizado. Es muy similar al
lenguaje máquina, pero los desarrolladores pueden comprenderlo. No obstante, este
lenguaje se parece tanto al lenguaje máquina que depende estrictamente del tipo de
procesador utilizado (cada tipo de procesador puede tener su propio lenguaje máquina).
Así, un programa desarrollado para un equipo no puede ser portado a otro tipo de equipo.
El término "portabilidad" describe la capacidad de usar un programa de software en
diferentes tipos de equipos. Para poder utilizar un programa de software escrito en un
código ensamblador en otro tipo de equipo, ¡a veces será necesario volver a escribir todo el
programa!
Por lo tanto, un lenguaje de programación tiene varias ventajas:
•
•
es mucho más fácil de comprender que un lenguaje máquina:
permite mayor portabilidad, es decir que puede adaptarse fácilmente para ejecutarse
en diferentes tipos de equipos.
Lenguajes de programación imperativos y funcionales
Los lenguajes de programación generalmente se dividen en dos grupos principales en base
al procesamiento de sus comandos:
•
•
lenguajes imperativos;
lenguajes funcionales.
Lenguaje de programación imperativo
Un lenguaje imperativo programa mediante una serie de comandos, agrupados en bloques y
compuestos de órdenes condicionales que permiten al programa retornar a un bloque de
comandos si se cumple la condición. Estos fueron los primeros lenguajes de programación
en uso y aún hoy muchos lenguajes modernos usan este principio.
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
No obstante, los lenguajes imperativos estructurados carecen de flexibilidad debido a la
secuencialidad de las instrucciones.
Lenguaje de programación funcional
Un lenguaje de programación funcional(a menudo llamado lenguaje procedimental) es
un lenguaje que crea programas mediante funciones, devuelve un nuevo estado de resultado
y recibe como entrada el resultado de otras funciones. Cuando una función se invoca a sí
misma, hablamos de recursividad.
Interpretación y compilación
Los lenguajes de programación pueden, en líneas generales, dividirse en dos categorías:
•
•
lenguajes interpretados
lenguajes compilados
Lenguaje interpretado
Un lenguaje de programación es, por definición, diferente al lenguaje máquina. Por lo
tanto, debe traducirse para que el procesador pueda comprenderlo. Un programa escrito en
un lenguaje interpretado requiere de un programa auxiliar (el intérprete), que traduce los
comandos de los programas según sea necesario.
Lenguaje compilado
Un programa escrito en un lenguaje "compilado" se traduce a través de un programa anexo
llamado compilador que, a su vez, crea un nuevo archivo independiente que no necesita
ningún otro programa para ejecutarse a sí mismo. Este archivo se llama ejecutable.
Un programa escrito en un lenguaje compilado posee la ventaja de no necesitar un
programa anexo para ser ejecutado una vez que ha sido compilado. Además, como sólo es
necesaria
una
traducción,
la
ejecución
se
vuelve
más
rápida.
Sin embargo, no es tan flexible como un programa escrito en lenguaje interpretado, ya que
cada modificación del archivo fuente (el archivo comprensible para los seres humanos: el
archivo a compilar) requiere de la compilación del programa para aplicar los cambios.
Por otra parte, un programa compilado tiene la ventaja de garantizar la seguridad del código
fuente. En efecto, el lenguaje interpretado, al ser directamente un lenguaje legible, hace que
cualquier persona pueda conocer los secretos de fabricación de un programa y, de ese
modo, copiar su código o incluso modificarlo. Por lo tanto, existe el riesgo de que los
derechos de autor no sean respetados. Por otro lado, ciertas aplicaciones aseguradas
necesitan confidencialidad de código para evitar las copias ilegales (transacciones
bancarias, pagos en línea, comunicaciones seguras...).
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
Lenguajes intermediarios
Algunos lenguajes pertenecen a ambas categorías (LISP, Java, Python...) dado que el
programa escrito en estos lenguajes puede, en ciertos casos, sufrir una fase de compilación
intermediaria, en un archivo escrito en un lenguaje ininteligible (por lo tanto diferente al
archivo fuente ) y no ejecutable (requeriría un interprete). Los applets Java, pequeños
programas que a menudo se cargan en páginas web, son archivos compilados que sólo
pueden ejecutarse dentro de un navegador web (son archivos con la extensión .class).
Algunos ejemplos de lenguajes ampliamente usados
A continuación, encontrará una breve lista de los lenguajes de programación actuales:
Lenguaje
ADA
BASIC
C
C++
Cobol
Fortran
Java
MATLAB
Cálculos
matemáticos
LISP
Pascal
PHP
Inteligencia artificial
Perl
Principal área de aplicación
Tiempo real
Programación para fines educativos
Programación de sistema
Programación de sistema orientado a
objeto
Administración
Cálculo
Programación orientada a Internet
Cálculos matemáticos
Compilado/interpretado
Lenguaje compilado
Lenguaje interpretado
Lenguaje compilado
Lenguaje compilado
Lenguaje compilado
Lenguaje intermediario
Lenguaje interpretado
Cálculos matemáticos
Lenguaje interpretado
Inteligencia artificial
Educación
Desarrollo de sitios web dinámicos
Inteligencia artificial
Procesamiento de cadenas de caracteres
Lenguaje intermediario
Lenguaje compilado
Lenguaje interpretado
Lenguaje interpretado
Lenguaje interpretado
Lenguaje compilado
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
3.2 - ESTRUCTURA BÁSICA DE UN
PROGRAMA
Java
Plataforma de software desarrollada por Sun Microsystems. Esta plataforma ha sido
desarrollada de tal manera que los programas desarrollados para ella puedan ejecutarse de
la misma forma en diferentes tipos de arquitecturas y dispositivos computacionales.
La plataforma Java consta de tres partes:
• El lenguaje de programación
• Máquina virtual de Java
• API Java
Originalmente llamado OAK por Ingenieros de Sun Microsystems, Java fue diseñado para
correr en computadoras embebidas. Sin embargo, en 1995, dada la atención que estaba
produciendo la Web, Sun Microsystems la distribuyó para sistemas operativos tales como
Microsoft Windows.
El lenguaje mismo adopta la sintaxis de C++, pero su funcionamiento es muy similar al de
Smalltalk. Incorpora sincronización y manejo de tareas en el lenguaje mismo (similar a
Ada) e incorpora interfaces como un mecanismo alternativo a la herencia múltiple de C++.
A fines del siglo XX, Java llegó a ser el lenguaje de mayor acogida para programas de
servidor. Utilizando una tecnología llamada JSP (similar a ASP de Microsoft), se hizó muy
fácil escribir páginas dinámicas para sitios de Internet. Sumado a esto, la tecnología
de JavaBeans, al incorporarse con JSP, permitía utilizar el patrónMVC (Modelo-VistaControlador) que ya tanto se había aplicado a interfaces gráficas.
Java llegó a ser extremadamente popular cuando Sun Microsystems introdujo la plataforma
y el modelo de programación J2EE (Java 2 Enterprise Edition). Este modelo permite una
separación entre la presentación de los datos al usuario (JSP o Applets), el modelo de datos
(EJB), y el control (Servlets). Enterprise Java Beans (EJB) que es una tecnología de objetos
distribuídos que pudo lograr el sueño de muchas empresas como Microsoft e IBM de crear
una plataforma de objetos distribuídos con un monitor de transacciones. Con este nuevo
estándar, empresas como BEA, IBM, Sun Microsystems, Oracle y otros crearon nuevos
"servidores de aplicaciones" que tuvieron gran acogida en el mercado.
Además de programas del servidor, Java permite escribir programas de interfaz gráfica o
textual. Además se pueden correr programas de manera incorporada o embebida en los
navegadores web de Internet, aunque esto nunca llegó a popularizarse como se esperaba en
un principio.
Los programas en Java generalmente son compilados a un lenguaje intermedio o bytecode,
y luego interpretados por una máquina virtual (JVM). Esta última sirve como una
plataforma de abstracción entre la máquina y el lenguaje permitiendo que se pueda "escribir
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
el programa una vez, y correrlo en cualquier lado". También existen compiladores nativos
de Java, tanto comercial como libre. El compilador GCC de GNU compila Java a código de
máquina con algunas limitaciones al año 2002.
Estructura básica del programa
Empezaremos de inmediato con una mirada a un programa Java. Para la mayoría
de este curso todos los programas tendrán la misma estructura básica, que se
reproduce a continuación. Este contiene todas las partes esenciales de código que
debe incluirse en cualquier programa.
Simple clase pública
{
public static void main (String argv [])
{
/ / Código del programa va aquí
}
}
Entonces, ¿qué significa todo esto?
Simple clase pública
Los programas Java se componen de clases, por lo que la primera línea
dice que vamos a definir la clase AA y hemos decidido llamarlo simple,
aunque, por supuesto que podríamos llamar de otro nombre. (El convenio
es para los nombres de clase para comenzar con una letra mayúscula.) The
Simple clase es todo lo contenido en el exterior conjunto de llaves {};. El
propósito de la palabra alpúblico es algo que vendrá más adelante,
mientras tanto, usted debe Siempre lo uso.
estáticos public void principal (String argv [])
Las clases contienen métodos, y esta línea (3) es el inicio
del método llamado principal. Cuando la computadora ejecuta cualquier
programa en Java que se observa, para el método principal y lleva a cabo
independientemente de las instrucciones se encuentran dentro de
ella. Todos los programas deben contener uno (y sólo uno) método
principal.
líneas 04.06
Instrucciones para lo que el principal método se debe hacer en forma de un
código Java que va en el método principal - es decir, dentro de las
correspondientes llaves, {} . El / / alguna parte ...en la línea 5 se llama
un comentario, una nota a sí mismo oa otros de leer el archivo que es
ignorado por el equipo. Hay otras maneras de escribir comentarios que se
cubrirán en breve.
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
También tenga en cuenta la forma en la clase de todas las otras líneas han sido
sangría de cuatro espacios, y en el que todo método es sangría en otros cuatro
espacios. Los espacios no tienen ningún efecto en el programa - que sólo son
utilizadas para hacer la estructura del programa sea más claro para ver de un
vistazo. También puede utilizar las líneas en blanco de vez en cuando para mayor
claridad también
Ejemplo:
import javax.swing.JFrame;
import javax.swing.JLabel;
public class HolaMundo extends javax.swing.JFrame {
public static void main(String[] args) {
System.out.println("Vamos a crear una ventana que ponga \"HolaMundo\"");
new HolaMundo();
}
public HolaMundo() {
super("HolaMundo");
JLabel etiqueta = new JLabel("HolaMundo");
etiqueta.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
getContentPane().add(etiqueta);
setSize(400,200);
addWindowListener(
new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
System.exit(0);
}
}
);
setVisible(true);
}
}
-.-.-.-.-.-.-.-.-
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
Existen dos tipos de lenguajes claramente diferenciados; los lenguajes de bajo nivel y los
de alto nivel.
El ordenador sólo entiende un lenguaje conocido como código binario o código máquina,
consistente en ceros y unos. Es decir, sólo utiliza 0 y 1 para codificar cualquier acción.
Los lenguajes más próximos a la arquitectura hardware se denominan lenguajes de bajo
nivel y los que se encuentran más cercanos a los programadores y usuarios se
denominan lenguajes de alto nivel.
Lenguajes de bajo nivel
Son lenguajes totalmente dependientes de la máquina, es decir que el programa que se
realiza con este tipo de lenguajes no se pueden migrar o utilizar en otras maquinas.
Al estar prácticamente diseñados a medida del hardware, aprovechan al máximo las
características del mismo.
Dentro de este grupo se encuentran:
•
El lenguaje maquina: este lenguaje ordena a la máquina las operaciones
fundamentales para su funcionamiento. Cnsiste en la combinación de 0's y 1's
para formar las ordenes entendibles por el hardware de la maquina.
Este lenguaje es mucho más rápido que los lenguajes de alto nivel.
La desventaja es que son bastantes difíciles de manejar y usar, además de tener
códigos fuente enormes donde encontrar un fallo es casi imposible.
•
El lenguaje ensamblador es un derivado del lenguaje maquina y esta formado por
abreviaturas de letras y números llamadas mnemotécnicos. Con la aparición de
este lenguaje se crearon los programas traductores para poder pasar los
programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja
con respecto al código máquina es que los códigos fuentes eran más cortos y los
programas creados ocupaban menos memoria. Las desventajas de este lenguaje
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
siguen siendo prácticamente las mismas que las del lenguaje ensamblador,
ñadiendo la dificultad de tener que aprender un nuevo lenguaje difícil de probar y
mantener.
Lenguajes de alto nivel
Son aquellos que se encuentran más cercanos al lenguaje natural que al lenguaje
máquina.
Están dirigidos a solucionar problemas mediante el uso de EDD's (estructuras dinamicas
de datos).
Nota: EDD's son las abreviaturas de Estructuras Dinamicas de Datos, algo muy
utilizado en todos los lenguajes de programación. Son estructuras que pueden
cambiar de tamaño durante la ejecución del programa. Nos permiten crear
estructuras de datos que se adapten a las necesidades reales de un programa.
Se tratan de lenguajes independientes de la arquitectura del ordenador. Por lo que, en
principio, un programa escrito en un lenguaje de alto nivel, lo puedes migrar de una
máquina
a
otra
sin
ningún
tipo
de
problema.
Estos lenguajes permiten al programador olvidarse por completo del funcionamiento
interno de la maquina/s para la que están diseñando el programa. Tan solo necesitan un
traductor que entiendan el código fuente como las características de la maquina.
Suelen usar tipos de datos para la programación y hay lenguajes de propósito general
(cualquier tipo de aplicación) y de propósito especifico (como FORTRAN para trabajos
científicos).
Lenguajes de Medio nivel
Se trata de un termino no aceptado por todos, pero q seguramente habrás oído. Estos
lenguajes se encuentran en un punto medio entre los dos anteriores. Dentro de estos
lenguajes podría situarse C ya que puede acceder a los registros del sistema, trabajar con
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
direcciones de memoria, todas ellas características de lenguajes de bajo nivel y a la vez
realizar operaciones de alto nivel.
Generaciones
La evolución de los lenguajes de programación se puede dividir en 5 etapas o
generaciones.
•
Primera generación: lenguaje maquina.
•
Segunda generación: se crearon los primeros lenguajes ensambladores.
•
Tercera generación: se crean los primeros lenguajes de alto nivel. Ej. C, Pascal,
Cobol…
•
Cuarta generación. Son los lenguajes capaces de generar código por si solos, son
los llamados RAD, con lo cuales se pueden realizar aplicaciones sin ser un experto
en el lenguaje. Aquí también se encuentran los lenguajes orientados a objetos,
haciendo posible la reutilización d partes del código para otros programas. Ej.
Visual, Natural Adabes…
•
Quinta generación: aquí se encuentran los lenguajes orientados a la inteligencia
artificial. Estos lenguajes todavía están poco desarrollados. Ej. LISP
¿Qué es una variable?
Una variable es un contenedor que almacena un valor significativo que se puede
utilizar a través de un programa. Por ejemplo, en un programa que determina el
impuesto sobre los artículos que pueden tener algunas variables - una variable que
almacena el precio normal de un elemento y otro variable que almacena el precio total
de un artículo después de que el impuesto se calcula sobre el mismo. Variables de
almacenar esta información en la memoria de una computadora y el valor de una
variable puede cambiar a lo largo de un programa.
Declaración de variables
Una variable en el programa puede almacenar datos numéricos, mientras que otra
variable puede almacenar datos de texto. Java tiene palabras especiales para indicar
qué tipo de datos de cada variable almacena. Use estas palabras clave al declarar las
variables para establecer el tipo de datos de la variable.
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
Ejemplo:
char aCharacter; aNumber int;
Usted puede asignar un valor a una variable al mismo tiempo que se declara. Este
proceso se conoce como lainicialización:
Ejemplo:
aCharacter char = 'a'; aNumber int = 10;
Declarar una variable y luego le da un valor:
char aCharacter; aCharacter = 'a'; aNumber int; aNumber = 10;
NOTA: Una variable debe ser declarada con un tipo de datos o un error se generará! El
tipo de datos de una variable debe ser utilizado sólo una vez con el nombre de la variable
- durante la declaración. Después de eso, puede hacer referencia a la variable por su
nombre sin el tipo de datos.
APLICACION DE EJEMPLO: HOLA MUNDO
En Java, prácticamente todo son clases (objetos). El lenguaje obliga a la programación
orientada a objetos y no permite la posibilidad de programar mediante ninguna otra
técnica que no sea ésta. Por esta razón, un programa estará formado por uno o varios
ficheros fuente y en cada uno de ellos habrá definida una o varias clases.
En un fichero fuente puede declararse una o más clases y tendrá un aspecto similar a
este:
class
…
}
class
…
}
…
class
…
}
Clase1
{
Clase2
{
ClaseN
{
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
Una clase está formada por una parte correspondiente a la declaración, y otra
correspondiente al cuerpo de la misma:
Declaración de clase {
Cuerpo de clase
}
En la plantilla anterior se ha simplificado el aspecto de la Declaración de clase, pero sí
que puede asegurarse que la misma contendrá, como mínimo, la palabra reservada class
y el nombre que recibe la clase.
El cuerpo de las clases comienza con una llave abierta({) y termina con una llave cerrada
(}).
Dentro del cuerpo de la clase se declaran los atributos y los métodos de la clase.
Para que un programa se pueda ejecutar, debe contener una clase que tenga un método
main con la siguiente declaración:
public static void main( String argumentos [] )
Hola, mundo
En primer lugar, vamos a ver qué estructura debería tener el típico programa con el que
se empieza en cualquier lenguaje de programación y que proporciona una primera visión
de la sintaxis del lenguaje y que comienza a transmitir una serie de sentimientos de
aceptación o de rechazo en el programador. El programa simplemente mostrará en
pantalla el mensaje "hola, mundo" y terminará.
Este ejemplo habrá que crearlo mediante un editor cualquiera y guardar el fichero con el
nombre Hola.java (ATENCIÓN: Es importante que tenga el mismo nombre que la clase
"Hola", distinguiendo entre mayúsculas y minúsculas).
class Hola
{
public static void main(String argumentos[])
{
System.out.println("hola, mundo");
}
}
}
El lenguaje Java, al igual que C, distingue entre mayúsculas y minúsculas, por lo que es
importante transcribirlo literalmente.
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
También hay que comentar que en el nombre del fichero fuente también se hace
distinción entre mayúsculas y minúsculas a la hora de compilarlo, aunque el sistema
operativo empleado no haga esta distinción. La extensión del mismo debe ser .java
Para compilar el programa, hay que teclear:
javac Hola.java
El compilador creará un fichero que se llama Hola.class que contiene el código
bytecode ("pseudoejecutable")
Para ejecutarlo:
java Hola
Se escribe únicamente el nombre de la clase Hola y no Hola.class u Hola.java ??El
intérprete Java buscará el fichero Hola.class en los directorios especificados en la variable
de entorno CLASSPATH y, si lo encuentra y tiene método main(), lo ejecutará.
El resultado de la ejecución será la visualización en pantalla del mensaje: hola, mundo
Explicación del programa Hola.java línea a línea:
Este simple programa, a pesar de no ser muy extenso, contiene muchos de los conceptos
de la programación orientada a objetos en Java. No se pretende que, a partir del mismo,
se aprendan y comprendan la totalidad de los aspectos de la POO y la sintaxis del Java,
pero sí que puede afirmarse que una vez comprendida y asimilada su filosofía, se estará
en un punto bastante cercano a los conocimientos básicos necesarios para entenderlos.
La primera línea del programa declara una clase llamada Hola, que es descendiente, al no
indicar
nosotros
que
herede
de
otra
clase,
de
la
clase
Object.
Entre las llaves de la clase Hola, se declaran los atributos y los métodos de la clase. Todo
lo que se encuentre entre la llave abierta ( { ) y la llave cerrada ( } ) pertenece a la clase
Hola.
En
nuestro
ejemplo,
únicamente
tiene
un
método:
main.
Las llaves no sirven únicamente para marcar el inicio y el fin de una clase. Se utilizan para
marcar principio y final de bloques de código y se interpretan mediante el método LIFO
(Last In First Out) donde el último en entrar es el primero en salir. En el ejemplo existen,
además de las llaves abierta y cerrada de la clase, otras llaves abierta y cerrada dentro
del método main(). Que se interpreten mediante el método LIFO significa que la llave
cerrada ( } ) del método main() parentiza el bloque abierto por la última llave ( { ) antes de
ésta.
Todo programa independiente escrito en Java empieza a ejecutarse (como en C) a partir
del método main(). Se pueden compilar clases que no posean método main(), pero el
intérprete Java no podrá ejecutarlas inicialmente, aunque sí pueden ejecutarse si son
llamadas desde otro método en ejecución. Veremos en posteriores capítulos que la forma
de crear los applets es distinta y no necesita declarar este método.
Declaración del método main():
•
•
•
public: indica que el método main() es público y, por tanto, puede
ser llamado desde otras clases. Todo método main() debe ser público
para poder ejecutarse desde el intérprete Java (JVM).
TEMA 3- INTRODUCCIÓN A LA PROGRAMACIÓN
•
•
•
•
•
•
static: indica que la clase no necesita ser instanciada para poder
utilizar el método al que califica. (No se crea ninguna instancia u
objeto de la clase Hola). También indica que el método es el mismo
para todas las instancias que pudieran crearse.
void: indica que la función main no devuelve ningún valor.
El método main debe aceptar siempre, como parámetro, un vector de strings, que
contendrá los posibles argumentos que se le pasen al programa en la línea de
comandos, aunque como es nuestro caso, no se utilice.
Si no se han comprendido muy bien todos estos conceptos no importa, de momento.
Hay una regla sencilla que nunca falla:
El método main() siempre se declara de la misma forma: public static void main(String
argumentos[])
La instrucción que realmente realiza el trabajo efectivo de nuestro programa es la
siguiente: System.out.println("hola, mundo");
Este línea indica que se va a ejecutar el método println(), encargado de mostrar un valor a
través de la salida estándar (en nuestro caso, un String) y después realizar un retorno de
carro y nueva línea. Este método pertenece al atributo out. Este atributo se encuentra
incluido dentro de la clase System.
Como curiosidad (de momento), cabe mencionar que esta clase es static (no hemos
declarado ningún objeto de la clase System).
¿Un poco complicado para simplemente mostrar un mensaje en pantalla? Es posible que
sí lo sea para aquellos que aún no conocen la programación orientada a objetos, pero una
vez conocidos y asimilados los conceptos de la POO (Programación Orientada a Objetos)
el programa es bastante sencillo y lógico.
Para aquellos que conozcan C++ pensarán que es bastante parecido a lo que habrían
escrito en su "lenguaje favorito". Este colectivo comprobará que es mucho más fácil que C
y tiene algunas ventajas.
Después de haber tomado contacto con Java, vamos a describir los elementos que
componen el lenguaje.