viernes, 22 de enero de 2010

lenguajes de programacion POO

CONSULTA
1. tipos de lenguaje de programacion : *http://factoriaonrails.blogspot.com/2009/06/hosting-gratuito-de-ruby-on-rails.html

Los tipos de lenguajes de programación los podemos clasificar en dos grandes grupos. Los lenguajes de programación de bajo nivel y los de alto nivel. El tipo de lenguaje de programación de bajo nivel depende totalmente de la máquina, en este caso de la computadora u ordenador, estos solos entienden el lenguaje binario o el código máquina, que consiste en ceros y unos. Es decir, que para realizar cualquier acción, solo utilizan este tipo de lenguaje de programación.

Los lenguajes de programación más cercanos a la arquitectura del hardware pertenecen al tipo de lenguajes de programación de bajo nivel. Mientras que los lenguajes de programación que se encuentran más próximos a los usuarios y programadores pertenecen al tipo de lenguajes de programación de alto nivel.

El tipo de lenguaje de programación de bajo nivel es totalmente dependiente de la computadora u ordenador, es decir que no podemos utilizarlo en cualquier otra. Este tipo de lenguaje de programación está prácticamente diseñado a la medida del hardware y aprovecha las características de este. Dentro de este tipo de lenguajes de programación podemos citar al lenguaje máquina y al lenguaje ensamblador.

Dentro del tipo de lenguajes de programación de alto nivel tenemos a todos aquellos lenguajes de programación que son más afines al lenguaje natural que al lenguaje máquina. Estos lenguajes de programación son completamente independientes de la arquitectura del hardware de la computadora u ordenador. Por lo que en general, un programa escrito con un lenguaje de programación de alto nivel lo podemos utilizar en cualquier otra computadora.

Estos lenguajes de programación de alto nivel solo necesitan un traductor que entienda el código fuente y las características de la máquina para poder funcionar correctamente.

También es conocido el tipo de lenguaje de programación de medio nivel, que es una mezcla entre los dos anteriores. A este tipo de lenguajes de programación pertenecen todos aquellos lenguajes que llevan a cabo acciones como: acceder a registros del sistema, usar direcciones de memoria (características de los lenguajes de programación de bajo nivel) pero a la vez efectúan operaciones de los lenguajes de alto nivel. Dentro de este tipo de lenguajes de programación de nivel medio tenemos al lenguaje de programación C.


C: Bastante antiguo pero todavía muy muy muy usado para programación a bajo nivel (eso significa casi como hablarle a la PC en su idioma) Se usa para desarrollar drivers, aplicaciones de DOS y casi en cualquier programa de Unix/Linux vas a tener que programar en C. Es también el favorito de las universidades para enseñar a programar, junto con Pascal que es del estilo.


C++: Es uno de los ejemplos de "orientado a objetos". Muy utilizado para hacer aplicaciones más grandes ya que introduce el concepto de clase y objeto. Para tener una idea rápida, una clase es un "molde" para hacer objetos. Un objeto sería algo así como un conjunto de funciones (procedimientos, rutinas) y variables. Otros lenguajes orientados a objeto que podrías llegar a ver es el Smalltalk que dicen es el único "TOTALMENTE" orientado a objetos. Eso es porque en C++ no todo es un objeto, pero en Smalltalk si. También tenes el Visual C++, que es de Microsoft y te permite hacer todo lo que te puedas imaginar en aplicaciones windows. Es más, si no me equivoco, Windows mismo (el sistema operativo) está escrito en Visual C++.

C# y C++ .NET: Es lo "último" de programación de Microsoft. Según MS si queres estar en el futuro tienes que saber .NET. Es el C++ pero con más clases predefinidas (podes hacer más escribiendo menos, ya que el lenguaje te provee de código pre-escrito, listo para usar). Según tengo entendido el MSN Messenger está programado en C++ .NET.


Java: Es la competencia de SUN para los lenguajes de Billy. También tiene un montón de clases predefinidas para ayudar a programar y es un lenguaje muy similar al C++ en cuanto a su sintaxis (forma de escribir). Lo bueno de Java es que no depende de la plataforma. Puede andar tanto en MAC como en UNIX o en Windows.


Visual Basic: Es el preferido de los que necesitan programar una aplicación en tiempo record. Creo que se pueden llegar a hacer sistemas casi completos en un día. Sumamente intuitivo y fácil: prácticamente se "dibujan" los programas arrastrando botones, cuadros de texto, etc. También para tener acceso a base de datos es uno de los preferidos. Tantas ventajas sin contra? Si tiene contra... los programas resultantes son muy pesados y cuanto más complejos más lentos y menos eficientes. Adicionalmente es bastante complicado tener acceso a recursos de bajo nivel como puertos, drivers, etc, que con C y C++ no hay problema. Recomendado para principiantes.


SQL: Casi cualquier persona que quiera programar en PHP o VB (Visual Basic) con base de datos TAMBIÉN debería saber SQL: un lenguaje para manejar base de datos y hacerle consultas a sus tablas.

2. programacion orientada a objetos POO(todos los terminos, que es una clase....) http://www.desarrolloweb.com/articulos/499.php

Clases en POO

Las clases son declaraciones de objetos, también se podrían definir como abstracciones de objetos. Esto quiere decir que la definición de un objeto es la clase. Cuando programamos un objeto y definimos sus características y funcionalidades en realidad lo que estamos haciendo es programar una clase. En los ejemplos anteriores en realidad hablábamos de las clases coche o fracción porque sólo estuvimos definiendo, aunque por encima, sus formas.

Propiedades en clases

Las propiedades o atributos son las características de los objetos. Cuando definimos una propiedad normalmente especificamos su nombre y su tipo. Nos podemos hacer a la idea de que las propiedades son algo así como variables donde almacenamos datos relacionados con los objetos.

Métodos en las clases

Son las funcionalidades asociadas a los objetos. Cuando estamos programando las clases las llamamos métodos. Los métodos son como funciones que están asociadas a un objeto.

Objetos en POO

Los objetos son ejemplares de una clase cualquiera. Cuando creamos un ejemplar tenemos que especificar la clase a partir de la cual se creará. Esta acción de crear un objeto a partir de una clase se llama instanciar (que viene de una mala traducción de la palabra instace que en inglés significa ejemplar). Por ejemplo, un objeto de la clase fracción es por ejemplo 3/5. El concepto o definición de fracción sería la clase, pero cuando ya estamos hablando de una fracción en concreto 4/7, 8/1000 o cualquier otra, la llamamos objeto.

Para crear un objeto se tiene que escribir una instrucción especial que puede ser distinta dependiendo el lenguaje de programación que se emplee, pero será algo parecido a esto.

miCoche = new Coche()

Con la palabra new especificamos que se tiene que crear una instancia de la clase que sigue a continuación. Dentro de los paréntesis podríamos colocar parámetros con los que inicializar el objeto de la clase coche.

Estados en objetos

Cuando tenemos un objeto sus propiedades toman valores. Por ejemplo, cuando tenemos un coche la propiedad color tomará un valor en concreto, como por ejemplo rojo o gris metalizado. El valor concreto de una propiedad de un objeto se llama estado.

Para acceder a un estado de un objeto para ver su valor o cambiarlo se utiliza el operador punto.

miCoche.color = rojo

El objeto es miCoche, luego colocamos el operador punto y por último el nombre e la propiedad a la que deseamos acceder. En este ejemplo estamos cambiando el valor del estado de la propiedad del objeto a rojo con una simple asignación.

herencia y el polimorfismo que son unas de las posibilidades más potentes de la POO.?????????????????????????
La herencia sirve para crear objetos que incorporen propiedades y métodos de otros objetos. Así podremos construir unos objetos a partir de otros sin tener que reescribirlo todo.



3. construir un objeto en ruby

class Perro
#variables
attr_accessor :nombre
attr_accessor :edad
attr_accessor :raza

#metodo,acciones del sistema
def self.llenar
arr = Array.new
i = 0
#ciclo haga
loop do
puts "ingrese edad o enter para salir"
edad = gets.chomp
return arr if edad == ""
puts "Ingrese nombre "
nombre = gets.chomp
puts "Ingrese raza "
raza = gets.chomp.to_i

obj = Perro.new
obj.edad = apodo
obj.nombre = nombre
obj.raza = edad
arr[i] = obj

i=i+1
end
end

def self.imprimir(arr)
arr.each do |item|
puts "nombre: #{item.nombre} raza : #{item.raza} Edad:
#{item.edad}"
end
end

end

arr = Perro.llenar
Perro.imprimir(arr)




4. subir al blog



bibliografia:
*http://es.kioskea.net/contents/langages/langages.php3 (lenguaje de programcion)
*http://diario-ruby-facil.blogspot.com/2007/09/rubyiii-bucles-y-condiciones.html(apendiendo ruby)
*http://rubytutorial.wikidot.com/clases-objetos(aprendiendo ruby)
http://150.185.75.30/atiwiki/index.php/RUBY_ON_RAILS(ruby ejecutar en trminar)
http://es.kioskea.net/contents/poo/objet.php3(definicion de objeto)
*http://rubytutorial.wikidot.com/metodos(crear metodos paso a paso)
*http://www.emagister.com/manual/ (cursos gratis)