Ir al contenido principal

Diferencias POO Java y PHP



En estos ultimos dias me he dedicado a aprender sobre PHP, asi que les comparto mis apuntes, haber si a alguien les sirve, no pretendo tomar el tema bastante profundo, sólo quiero darles una vista rápida sobre el tema 
En el mundo de orientada a objetos PHP no se queda atrás, he aprendido sobre el mundo de orientada a objetos gracias a Java, pero alcanzo a notar que no es muy distinto programar POO en PHP. ¿porque? Sencillo, noto lo siguiente:

Clase en Java

class MiClase{


     private int propiedad1;
     private String propiedad2;
     private int propiedad3 = 10;

     //Definimos un constructor
     public MiClase(String var){
         this.propiedad2 = var;
     }

     //definimos un metodo simple
     public void holaMundo(){
          System.out.println(“hola mundo ”+ propiedad2 +”!");
     }
}


Clase en PHP

class MiClase{


    private $propiedad1;
    private $propiedad2;
    private $propiedad3 = 10;

    //Definimos un constructor
    function __construct($var){
        $this->propiedad2 = $var;
    }

    //definimos un metodo simple
    public function holaMundo(){
        echo”hola mundo”.$this->propiedad2.“!” ;
    }

}



Lo que alcanzo a notar de estas dos implementaciones de la Clase MiClase es lo siguiente:
  • tienes la una estructura muy pero muy parecida, todo el codigo se ve que casi identico en los dos lenguajes.
  • Las variables cambian un poco, ya que php es lenguaje de tipos dinamico y no se requiere decir que tipo de dato es, ademas que para PHP pueda reconocer una variable debe empezar con el caracter $.
  • Los métodos o funciones son muy similares, podemos definir el acceso del método con public, private, etc. en los dos lenguajes. Pero existe una diferencia que en PHP debemos agregar la palabra clave function.
  • Estructuralmente los contructores de ambas clases son muy parecidas, pero podemos apreciar que en PHP el metodo o funcion para definir un contructor es __contruct() y en Java es el mismo nombre de la clase.
  • Por ultimo puedo notar que para acceder a las funciones o propiedades de un objeto, en Java se accede através del “.” y en php se accede a traves de los carácteres “->;”.
Mas Informacion al respecto: Php hispano

    Comentarios

    1. Holas joanzare,

      Que bueno que le estes viendo lo mas positvo al desarrollo, mira que ya estoy como 5 años en esto del desarrollo 2 en Java y luego 3 en PHP, la verdad hay muchas diferencias en el manejo puro de Java y la pseudo-orientacion-a-objetos de PHP, pero no es mi intencion poner mal a uno y bien al otro, mas bien inducirte a que puedas manejar PHP con el mayor sentido a orientacion a objetos que al simple scripting q normalmente nos dan las busquedas que le hacemos al google, y tampoco olvides que de la mano va el diseño (lo que mas te puedo aconsejar es el Diseño por Contrato). Dale y sigue con ese impetu y espero puedas dar muchas mas publicaciones en tu blog al respecto.

      Un saludo desde Bolivia man y felicidades!

      ResponderEliminar

    Publicar un comentario

    Danos tu opinón:

    Entradas populares de este blog

    Imágenes en Java

    En la Universidad programamos en Java, asi que he decidido agregar los apuntes que voy haciendo a lo largo de la carrera, asi hago una retroalimentación, ya que cuando reescribo mis apuntes me los aprendo más :D En este caso escribiré como cargar las imágenes desde Java con el API que viene en el jdk de Sun. En el ejemplo cargaremos una imagen en un JFrame. Como se ve en la figura de la derecha: Entonces comencemos: Imagenes en Java Se mostrará como cargar y guardar un archivo de imagen en java, usando la librerias de la API de Java. Es importante saber que el API se basa en el contenido del archivo. La Mayoria de las imagenes contiene un “Magic Number ” en sus primeros bytes que identifican el formato del archivo. Las Clases Básicas que se usan para manipular imagenes desde son: java.awt.Image java.awt.image.BufferedImage La Clase Image es abstracta , en sus metodos describe el funcionamiento de una Imagen. La Clase BufferedImage se extiende de Image asi hereda ...

    Error compilando código C++ en Mac Maverick

    Estaba desarrollando un pequeño proyecto hecho en C++, usando un MacBook con Sistema Operativo Lion , todo iba bien hasta que decidí actualizar   Maverick. Al tratar de compilar mi proyecto de nuevo me llevo la sorpresa de que aparecía el siguiente error: Al parecer no encontraba los headers de algunas librerías, he investigando un poco me encontré  que en Maverick cambió la ubicación de los header ( que cosas =/ ). La solución es sencilla sólo sigue estos pasos: Abre una terminal escribe: xcode-select --install Aparecerá una ventana que te preguntará si quieres instalar las herramientas, acepta. Espera a que terminé.  Con esto podrán de nuevo compilar sus proyectos de C++. Happy coding...

    Libros sobre GNU/Linux

    Les dejo una serie de libros de los más completos de GNU/LINUX, que a más de uno les va servir, ya sea un usuario novato o un usuario avanzado. Temas tomados por los libros: Administracion en Redes Administracion Basica de GNU/LINUX Introduccion al Desarrollo de Software (En lenguajes C,C++ y Java) Ingenieria en Software Desarrollo Web en linux Cuestiones Legales Introduccion a GNU/Linux Instalar Servidores Linux Administración Avanzada de gnu/linux temas de migración de Sistema Se los recomiendo ampliamente espero les sirva... LINK: http://cid-561d2d570dd7152b.skydrive.live.com/self.aspx/P%C3%BAblico/linux%5E_expert.rar Estos libros estan bajo licencia GPL, asi que se libre para compartir la información Saludos....