Sexto video de la serie de Aprende a programar desde cero (SIN CENSURA). En este sexto video veremos como crear funciones que regresen un valor en javascript.
Categoría: Cursos
5.- Funciones con parametros en #javascript – Aprende a programar desde cero (SIN CENSURA) HD
Quinto video de la serie de Aprende a programar desde cero (SIN CENSURA). En este quinto video veremos como crear funciones con parametros en javascript.
4.- Crear funciones en #javascript – Aprende a programar desde cero (SIN CENSURA)
Cuarto video de la serie de Aprende a programar desde cero (SIN CENSURA). En este cuarto video veremos como crear funciones en javascript.
3.- La sentencia if en #javascript – Aprende a programar desde cero (SIN CENSURA)
Tercer video de la serie de Aprende a programar desde cero (SIN CENSURA). En este video veremos la sentencia if en javascript:
2.- Variables #javascript – Aprende a programar desde cero (SIN CENSURA)
Segundo video de la serie de videos Aprende a programar desde cero (SIN CENSURA).
En este video hablo sobre variables y como utilizarlas.
1.- Ejecutar #javascript – Aprende a programar desde cero (SIN CENSURA)
Aprende a programar desde cero es una nueva serie de videos que estoy haciendo en mi canal de youtube, los cuales están orientados a todas las personas que no tienen ni idea de programación pero tienen ganas de aprender, es decir, orientado a la gente que no ha estudiado ni ha visto en su vida un código pero le llama la atención el desarrollo de software.
La idea me nació en que tengo la meta de demostrar que cualquier persona en el mundo es capaz de programar.
El curso es sin censura, ya que utilizo mucho lenguaje obsceno y groserías para que de esta manera sea más digerible y entretenido.
Cualquier duda o comentario pueden hacérmelo llegar por medio del formulario de abajo.
Suscríbanse a mi canal de youtube.
¿Cómo concatenar un TimeSpan a un DateTime en c# .Net?
Por alguna circunstancia tenemos un TimeSpan y un DateTime y requerimos concatenarlos, es decir tenemos un TimeStam con la hora “13:30:00” y tenemos un DateTime con “2016-01-01 00:00:00”. Para ello tenemos que hacerlo de la siguiente forma:
DateTime fecha = DateTime.Parse("2016-01-01");
TimeSpan tiempo = TimeSpan.Parse("13:30:00");
DateTime fechaConcatenada = fecha.Value.Add(tiempo);
//fechaConcatenada = 2016-01-01 13:30:00
¿Cómo utilizar nuget en visual studio?
Un tutorial rápido para aprender a utilizar nuget de manera rápida y básica.
Corregir el error “in a frame because it set ‘X-Frame-Options’ to ‘SAMEORIGIN’” en #MVC .Net
MVC .Net por defecto no permite que sea visto en un iframe, pero a veces surge la necesidad de que sea visto en un iframe (o en mi caso el hospedaje invocaba un iframe el cual cargaba el sitio, no sé porque diablos así lo hace).
Para permitir que MVC .Net permita ser cargado en un iframe debemos ir al archivo Global.asax.cs y en el método Application_Start() debemos agregar la siguiente línea:
AntiForgeryConfig.SuppressXFrameOptionsHeader = true;
A su vez debemos agregar el namespace: System.Web.Helpers
Con esto se soluciona el problema. Espero les ahorre dolores de cabeza.
Abstracción en la Programación – Curso de Programación Orientada a Objetos en 10 minutos #6
La abstracción es un tema poco visto cuando estamos en la universidad y estudiamos programación orientada a objetos. Se nos mencionan las clases abstractas, pero esto solo es parte de lo que es la abstracción. He decidido incluir este tema brevemente en este curso, ya que para mí esto es lo que hace la diferencia de un programador bueno de un programador malo, y no cuantos lenguajes de programación domine.
A lo largo de mi experiencia, he llegado a la conclusión que la abstracción nunca termina por mejorarse, y al momento que miras código tuyo de uno o dos años atrás y ves que es un desorden, esto quiere decir que has mejorado.
En breves palabras la abstracción es resumir o disminuir un elemento a lo que lo define sin incluir otros elementos, en este caso los objetos de la Programación Orientada a Objetos (POO). Para explicar esto siempre recurro al triangulo y al círculo, los dos son figuras geométricas, un triángulo tiene 3 lados y siempre tendrá 3 lados aquí y al otro lado del universo, y un circulo siempre será una línea conectada, esto es abstracción, se definen las figuras en una o dos líneas de descripción sin llegar a meternos en más detalle.
¿Pero esto para que nos sirve o qué? Sirve para hacer la diferencia de un mal programador a un buen o magnifico desarrollador de sistemas.
Ya dejando atrás el círculo y el triángulo veamos un ejemplo de día a día cuando se desarrolla un sistema.
Un sistema de ventas:
- El cliente pide un sistema que tenga usuarios.
- Los usuarios pueden ser clientes o vendedores o administradores.
- Los usuarios tendrán un password para acceder al sistema.
- Los clientes compran, los vendedores venden.
Lo que un programador con bajo nivel de abstracción hará es:
Creará una clase Administrador, una clase Cliente y una clase Vendedor y las tres tendrán el campo password el campo usuario y los métodos para autentificarse.
Por ejemplo:
Clase Administrador
class Administrador{
string usuario="";
string password="";
//todos los atributos de administrador por ejemplo
string nombre;
string apellido;
//etc
public bool Ingresar(string usuario, string password){
//codigo ingreso
}
public bool Salir(){
//codigo salir
}
//aqui metodos de administrador etc...
}
Clase Cliente
class Cliente{
string usuario="";
string password="";
//todos los atributos de cliente por ejemplo
string nombre;
string apellido;
string empresa;
//etc
public bool Ingresar(string usuario, string password){
//codigo ingreso
}
public bool Salir(){
//codigo salir
}
//metodos de cliente
}
Clase Vendedor
class Vendedor{
string usuario="";
string password="";
//todos los atributos de vendedor por ejemplo
string nombre;
string apellido;
string email;
decimal comision;
//etc
public bool Ingresar(string usuario, string password){
//codigo ingreso
}
public bool Salir(){
//codigo salir
}
//metodos de vendedor
}
Y esto es normal, funcionara y el sistema para el usuario estará perfecto, el problema viene cuando vienen los cambios en el sistema, por ejemplo nos piden modificar el método de acceso al sistema, digamos antes se hacía la conexión directa, ahora se hará por un webservice y utilizar un certificado. Entonces la cosa se convierte en un cambio en 3 sitios distintos, más trabajo por falta de abstracción, y si es más trabajo es más tiempo por lo cual es más caro y por lo cual es más crítico a darse errores.
Cuando una persona tiene un nivel más alto de abstracción podrá pensar en métodos alternativos para evitar estos problemas, estos métodos nacen por la experiencia que se tienen en sistemas hechos anteriormente y es cuando hacemos cosas más organizadas con un nivel más alto de abstracción como el siguiente ejemplo, que nos ayudaremos de la herencia:
Clase Usuario
class Usuario{
string usuario="";
string password="";
public bool Ingresar(string usuario, string password){
//codigo ingreso
}
public bool Salir(){
//codigo salir
}
}
Clase Administrador
class Administrador : Usuario{
//todos los atributos de administrador por ejemplo
string nombre;
string apellido;
}
Clase Cliente
class Cliente : Usuario{
//todos los atributos de cliente por ejemplo
string nombre;
string apellido;
string empresa;
//etc
//metodos de cliente
}
Clase Vendedor
class Vendedor : Usuario{
//todos los atributos de vendedor por ejemplo
string nombre;
string apellido;
string email;
decimal comision;
//etc
//metodos de vendedor
}
Nota: Los dos puntos (:) en c# sirven para heredar, lo mismo que en java es extends.
Como vemos los métodos de ingresos quedan en la clase Usuario de la cual todas las otras clases: Cliente, Administrador, Vendedor heredan, y esto ya muestra más madurez que las clases anteriores, ya que si surge un cambio en el ingreso solo tendríamos que modificar el metodo en la clase Usuario. Pero aun así podemos mejorarlo más analizando las similitudes de nuestras clases y viendo cómo podemos crear otra entidad por ejemplo una clase Persona que tenga el atributo nombre y apellido los cuales comparten las otras clases y a su vez que herede de Usuario.
El propósito de esta entrada es que ustedes como programadores no tomen a la ligera la manera que hacen y organizan su código, ya que esto puede ser la diferencia en ser un programador malo a uno bueno, a parte que si su código es formal y elegante puede ser fácil entendible por otro programador.
Con esto doy por terminado este curso de Programación Orientada a Objetos en 10 minutos, cualquier duda o comentario hágamelo saber en el apartado de comentarios o en el formulario de contacto.
Todo esto que hago es para todo los programadores que comienzan o de una u otra forma llegaron a un problema que yo ya solucione, y los comentarios son una motivación para mí. Gracias lector por visitar mi sitio web.
