Hola, a todos sean bienvenidos a este post, hoy les dare algunos consejos sobre las generalidades de programar, sobre similitudes y diferencias que pueden encontrar en los distintos lenguajes de programacion, como algunos son mas propietarios de sus lenguajes y otros intentan estandarizar todo para ponerlo mas alcance de la gente, como decidir por tal o cual lenguaje, y como saber un poco mas, con el preambulo terminado pasemos a los consejos.

Anuncios

En todos los lenguajes de programacion van a tener un factor en comun, estas son las variables. Las variables en todos los lenguajes son de varios tipos basicos:

  • String, sirven para almacenar texto
  • Float, almacenan numeros con comas
  • Double, idem al anterior pero con mayor precision
  • Integer, almacena solo numeros enteros
  • Boolean, almacena dos estados logicos: true (verdadero) o false (falso)

Despues podran tener variables especiales o crearlas, como en el caso de C++, pero en todos los casos esas son las variables bases a ser utilizadas por todos los lenguajes, otro tipo de variable muy utilizado son los arrays (arreglos) para almacenar una secuencia de datos en una sola variable, en todos los lenguajes se utilizan de la misma forma:

variable[posicion] = informacion
numero[0]=1

Algunos lenguajes permiten otras formas de busqueda en el array pero en todos los lenguajes se debe realizar por posicion, es decir el valor numerico donde se almaceno la informacion, la cual puede ser un numero o un texto (esto ultimo no todos los lenguajes lo aceptan) y cuando lo recuperemos nos lo devolvera, otra costumbre mantenida por los lenguajes de tipo script (javascript, php, perl, etc) o lenguajes basados en C o C++ (pascal) siempre al final de la linea llevan un punto y coma (;) esto indicara el final de la linea, en cambio en lenguajes de Microsoft basados en Basic, por ejemplo VBscript o Visual Basic, no necesitan este delimitador y el cambio de linea sera el Enter.

Anuncios

Otras de las sutiles diferencias entre lenguajes esta dada por la forma de crear funciones adicionales, por ejemplo en la mayoria de los lenguajes del tipo GNU, o software libre, los cuales al estar basados en C o C++, para crearlos se utilizara de la siguiente forma:

function NombreFuncion(variables)
{
instrucciones...
}

Como pueden ver primero definimos el tipo, en este caso function, en C++ se define de forma distinta les recomiendo este post, para definir que es una funcion y luego veremos entre dos llaves ({}) el bloque definido con las instrucciones para esa funcion, las llaves definiran el principio y el fin de la funcion, en cambio en los de tipo Basic (Qbasic, VBScript, Visual Basic, ASP) las funciones se definen por medio de las palabras clave sub o function pero se hace de la siguiente forma:

sub NombreFuncion(variables)
...
instrucciones...
...
end sub

La diferencia mas grande es la ausencia de las llaves y la presencia de un delimitador, en este caso es end sub, si hubiese function iria end function, esto aplica tambien al condicional if donde en lenguajes de tipo script, llevara la siguiente sintaxis:

if (a == b)
{
.... instrucciones ....
}

Primero tendremos la condicion y luego entre llaves iran las instrucciones, en cambio en lenguajes del tipo Basic, el condicional es de la siguiente forma:

if (a = b) then
....instrucciones....
end if

Como pueden ver aca es un poco mas como hablar en ingles porque la traduccion sera si se cumple la condicion luego ejecutara las instrucciones y por ultimo le decimos fin del si, como pueden ver para algunos es un poco mas explicito la forma de leerlo pero en script se lee de la misma forma pero sin todo el texto. Otro caso, es el bucle for, en los casos de los tipo script al igual que la funcion se crea un bloque entre llaves ({}) pero en el caso de los de tipo basic el bucle for es finalizado por next, a simple vista parece demasiado complicado pero en realidad no es asi, veamos una comparacion:

Anuncios

Tipo script

for(a=0; a<5; a++)
{
instrucciones...
}

Tipo basic

for a as integer = 1 to 5
...
instrucciones...
...
next

A simple viste parecen completamente distintos pero en realidad no, uno puede parecer una version mas reducida del otro y viceversa pero vean las coincidencias, los dos definen un principio, en el primer caso es cero y en el segundo caso es uno, en el primer caso el limite va a ejecutarse mientras a sea menor a cinco, en el segundo caso vamos a tener un limite de cinco, en ambos ejecutaran las instrucciones contenidas cinco veces,  como pueden ver no son tan distintas, tienen sutiles diferencias pero no son tan radicales, cuando empiecen a ver los lenguajes notaran esas sutiles diferencias pero en el fondo las sintaxis y las instrucciones son muy parecidas, otras de las sutiles diferencias son las comparaciones logicas, en general son bastante similares pero la unica diferencia esta al momento de comparar dos valores iguales, por ejemplo en C++ o lenguajes de tipo script el simbolo de comparacion es == (igual igual) y en los de tipo Basic es = (igual), en cambio el igual solo (=) en lenguajes tipo C o script sirve para asignar un valor a una variable y en Basic tambien pero siempre y cuando este fuera de una condicion o una funcion o sea parte de un bloque de instrucciones en alguno de los antes citados pero estas sutiles diferencias muchas veces producen errores en el codigo.

Anuncios

Otro tema, es justamente el lenguaje para aprender a utilizar y como vimos tienen diferencias, estas diferencias permiten una mejor comprension para una u otra persona, un ejemplo son los lenguajes del tipo script o C, donde hay gente que se siente mas comoda con respecto a la forma mas estructurada de los tipos Basic, otro tema son las empresas, en la mayoria de los casos he visto como se utiliza Visual Basic para algunas aplicaciones determinadas de uso interno, esto es hablando a nivel aplicaciones de escritorio pero tambien tenemos las de tipo Web, donde podremos inclinarnos mas por los de tipo script (PHP, Javascript, Perl, CGI, etc) o del tipo Basic (ASP, Vbscript, .NET, etc) y cada uno va a tener sus sutiles diferencias pero aqui de nuevo es definido por las empresas, grandes empresas se decantan por utilizar un modelo de servidores de Microsoft por ende utilizaran el ASP como base de sus paginas webs, en cambio empresas mas pequeñas o medianas se decantaran en servidores con Linux (Debian, Fedora, Red Hat, etc) por un tema de costos y estos van a ser mas proclives a utilizar lenguajes del tipo script (PHP, Javascript, Perl, CGI, etc) por ser mas nativos en estos, esto lo deben tener en cuenta a la hora de estudiar un lenguaje, cual tipo de aplicaciones desean desarrollar, o a cual grupo de personas desean llegar.

Anuncios

En lo personal, a mi me gusta programar aplicaciones de tipo Web mediante Ajax, es decir un lenguaje creado por medio de Javascript, PHP y mysql, tengo algunos posts sobre este tema para poder ver un poco mas sobre el mismo, y en aplicaciones de escritorio en su momento estaba mas familiarizado con Visual Basic pero con el tiempo note algunas fragilidades y problemas con aplicaciones demasiado complejas, con el tiempo decidi aprender algunos lenguajes mas pero en el dia de hoy sigo buscando con cual retomar la creacion de aplicaciones para escritorio, aunque estuve viendo aplicaciones creadas con el nuevo Visual Studio y note una mejora muy importante pero mi idea es reforzar lo visto en C++ para Linux dentro de este blog, les recomiendo este post donde tengo el listado de todos los temas subidos en este, la idea es aprender a programar en varios lenguajes para subirlos y ustedes puedan aprender sobre el cual se ajuste mas a sus gustos.

Como dije anteriormente, cada lenguaje va a depender del propietario donde las empresas propietarias de ese lenguaje permitiran  la compatibilidad con otros lenguajes o no, por ejemplo si bien Microsoft en el pasado intentaba no integrarse al resto de los lenguajes en mercado creando versiones propias de los lenguajes y requiriendo el uso de licencias, hoy en dia ha cambiado su postura pasando del uso de las licencias a utilizar como un sistema de suscripcion donde uno paga un monto para tener un mayor acceso  o mejor asistencia pero permitiendo un libre acceso a sus lenguajes, tambien intenta asemejarse a los lenguajes open source (codigo abierto) pero las diferencias con los lenguajes tipo GNU siguen existiendo, aunque menores a los tiempos pasados.

Anuncios

Aprender a programar en lo mas basico es similar en todos los lenguajes porque en general se mantienen los nombres para las funciones mas basicas (Do, For, While, If, Switch, etc) y cuando aprenden uno notaran enseguida las similitudes con otros pero algunos tendran mas facilidades orientadas a tal o cual tipo de aplicacion, por ejemplo Javascript es muy bueno para programar en paginas webs a pesar de poder ser utilizado en los escritorios Windows o Linux, en cambio VBscript puede ser utilizado para paginas webs pero no va a tener un 100% de compatibilidad como Javascript en los navegadores pero si por ejemplo es muy bueno para crear scripts para administrar todo lo relacionado a Active Directory permitiendo una automatizacion con simples programas sin demasiada complejidad por tener mejor integrado algunos controles para la conexion a la base de Active Directory. En su momento, Visual Basic fue una de las herramientas mas utilizadas para crear programas de escritorios Windows, los cuales solamente hacian de interface visual para librerias creadas en C++ o Visual C++ permitiendo una mejor experiencia al usuario final, en fin cada uno sabra elegir cual es el lenguaje con el cual sentirse mas comodo y orientar su estilo de programacion.

Por ultimo, pero no menos importante, esta el tema de saber buscar informacion en la red de redes por medio de “San Google” y mi recomendacion es buscarlo SIEMPRE en Ingles, ya se que es molesto pero las mejores soluciones a la mayoria de los problemas estan en este idioma y tambien ocurre lo mismo con los ejemplos.

Para ir redondeando, el lenguaje para aprender a programar siempre va a depender de a donde quieren orientar sus programas, para escritorios, webs o moviles porque Visual Basic es el mas indicado para empezar con programas para escritorio, PHP o ASP para hacer paginas Webs y Android Studio para Moviles con Android, en este blog estoy subiendo para aprender a programar sobre este lenguaje, pero Visual Studio tambien ofrece la opcion para programar en moviles con Android pero recuerden, los lenguajes en sus bases son lo mismo o por lo menos muy similares, cuando aprendan alguno se daran cuenta con cual facilidad podran aprender otro y por ahi sentirse mas a gusto con este lenguaje, un ultimo ejemplo de mi propia experiencia: en su momento aprendi muy por arriba a programar en ActionScript para Flash para algunas interacciones en mis paginas webs pero nunca me senti comodo, y agradeci muchisimo cuando los pude reemplazar con HTML5, Javascript y Ajax porque me resulto mas sencillo y practico a la hora de efectuar las mismas acciones y sin necesidad de utilizar un plugin externo y que a su vez no siempre se instalaba y/o habilitaba correctamente.

Anuncios

En resumen, todos los lenguajes tienen sus pros y contras, algunos comparten estructuras y otros son completamente diferentes, a su vez algunos son mas intuitivos que otros porque son basicamente como hablar en ingles (cuando empiecen a aprenderlos se daran cuenta), recuerden siempre tener en claro a que tipo de programa apuntan o desean trabajar en una empresa, y lo ideal es comenzar a estudiar algun lenguaje, cuando tengan el concepto de uno pueden probar con otro y asi hasta encontrar con cual se sienten mas comodos, espero les haya sido util y pueden seguirme en Twitter, Facebook o Google+ para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Tambien podes donar

Es para mantenimiento del sitio, gracias!

$1.00