codigo fuente

Apuntes de Java: Entrada de datos

Algo básico e importante de toda aplicación indiferentemente del lenguaje de programación, es sin duda alguna el nivel de interacción que se tiene con los usuarios, ya saben, toda la teoría que hay detrás del software a medida y las necesidades y requerimientos y todo eso que nos dicen; pero este post es para aquellos que no tienen idea de cómo comenzar con eso en sus aplicaciones por consola que, si han seguido los apuntes y sólo los apuntes de java de este blog, sólo saben imprimir textos en consola.

Pues bien, en este post voy a usar un poco lo básico de ingresar datos por consola y tomarlos como referencia para creación de variables, es algo fácil, no se preocupen.

Seguir leyendo …

Aplicando overwriting en componentes swing

Si hablamos de programación orientada a objetos, pues tambien tenemos que hablar de polimorfismo. El polimorfismo se podría dividir concretamente en dos sustantivos: sobreescritura (overwriting) y sobrecarga (overriding) de métodos, los cuales forman parte importante en la implementación del api del j2se.

Estos dos conceptos no son muy dificiles de entender, sin embargo, el ver la puesta en escena de estos conceptos se da casi siempre en nuestras propias clases, lo cual es sencillo ya que para nosotros nuestra clase es una caja blanca la cual podemos ver claramente. Lo que voy a mostrar ahora, es como aplicar la sobreescritura de métodos en la API del J2SE y para hacerlo aun mas grafico, lo aplicaré sobre la clase JFrame, la cual es una ventana de las normales que todos podemos ver.

A continuación pondré el código del programa:

Seguir leyendo …

Creando un sistema de blogs [PHP] [III]

Bueno, como diría Clayder en cuanto a la programación, a veces es mejor compartir para ayudarnos todos o nos podemos ir a la basura con nuestros programas con bugs por todos lados y solitarios, creo que no lo dijo pero estoy seguro que lo pensó. El hecho es que en este post que espero sea meramente didáctico quiero mostrarles la segunda versión de mi aplicación web que me ha consumido en los últimos días de programador amateur por si alguien quiere probarlo, reestructurarlo, editarlo, y/o escupirlo o que se yo (no me ofende, el compartir abarca eso también :D ), cosa que, desde las primeras versiones que mostré en los dos anteriores post, hasta la versión que tengo en mi poder actualmente y que ya utilizo en la dirección de mi blog personal (http://willmedina.co.cc) han habido ciertos cambios significativos siendo el principal el que reestructuré tal código desde un enfoque de programación  orientada a objetos que está tan de moda. También hubo algunos que otros cambios como el que ya los usuarios no dependían de sólo sesiones para mantenerse conectados y en el panel de control (cosa que podría ocasionar que se acabe la sesión cuando estés editando un post, y crash!), para eso introduje algunas operaciones con cookies.

También cambié la estructura de las tablas en la base de datos de manera más ordenada y con notaciones más acorde con una base de datos, valgan redundancias. Tanto que eliminé la de Feedback, porque bien la operación se podría mandar al correo electrónico con la función Mail() directamente, eliminé la tabla de Widgets de la sidebar, y esto si fue personal, porque según yo, a cada vez que quería modificar el sidebar simplemente modificaba el <archivo del sidebar>.php porque al fin y al cabo eso se traduce en HTML puro, y estar sobrecargándolo con funciones y llamadas a bases de datos era un poco estúpido (desde el punto de vista de la simpleza de mi aplicación).

Seguir leyendo …

El mágico efecto de ocultar div’s [Javascript]

Siempre quise saber cómo es que hacían para que con un botón o un link ocultara tremendos pedazos de páginas webs de un momento a otro y sin actualizar la web, y pues muy aparte de impresiones personales, este efecto hace un poco más sofisticada y útil (o lo aparenta) a la página web que lo use… no sé, siempre me gustó ese efecto pero siempre tuve la pereza de buscar el funcionamiento técnico y ni se me pasó por la cabeza lo fácil que podría ser ¬¬ … eso me pasa por subestimar las cosas (bueno tampoco me creo el gran programador, eso se lo dejo a otras personas muy lejos de mi entorno…) pero bueno, vamos con el funcionamiento:

Seguir leyendo …

Programando en C Sharp – 03

Hola!!! como van estimados lectores? todo bien? pues yo ando con las ganas de programar en C#, motivos? mmm… mejorar y compartir :D En esta ocasión vamos con la selección múltiple, para qué sirve? pues para evitar escribir tantos IFs como sean necesarios, es decir una manera óptima de reducir código fuente, veamos:


namespace Estaciones
{
 class Estaciones
 {
 static void Main(string[] args)
 {
 Console.WriteLine("Determinando la estación del año");
 Console.WriteLine("--------------------------------");
 Console.Write("Ingrese número de día: ");
 byte dia = byte.Parse(Console.ReadLine());
 // byte representa a un número de tamaño relavitamente
 // pequeño como se requiere[0-255], que sea hábito el tener en cuenta
 // los tipos de datos para trabajar pensando en la memoria...

y continuando con el ejemplo: Seguir leyendo …

Codepad, comparte tus códigos fuente

Si habrán notado, desde hace algunos post atrás estoy usando este sistema para compartirles archivos de códigos fuente enteros, pues bien, hoy les quiero compartir esta manera de hacerlo mediante CODEPAD, un sistema casi igual a imageshack o mediafire, sólo que en vez de compartir imágenes o archivos, lo que compartes es código fuente. Seguir leyendo …

Programando en C Sharp – 02

Buenos días!!! regreso de unas vacaciones otorgadas por la directiva de iFX, y continuando con el curso de programación en C#, vamos viendo estructuras condicionales simples, y sin más que agregar, aqui está el código:


using System;
namespace RendimientoEscolar
{
 class Promedio
 {
 //Método principal
 static void Main(string[] args)
 {
 Console.WriteLine("Determinando el rendimiento de alumno");
 Console.WriteLine("-----------------------------");
 Console.Write("Ingrese promedio: ");

 // Declaramos la variable: double promedio
 double promedio;
 promedio = double.Parse(Console.ReadLine());
 // La cual es asignada mediante un Console.ReadLine()
 // pero! tiene que ser "parseada" porque ReadLine lee los valores
 // del tipo string, asi que al momento de "parsear" va del siguiente modo:
 // tipo.Parse(Console.ReadLine());
 // tipo -> Int32, Int64, double, long, entre otros
 // cuidado con los valores tipo bool.

 if (promedio < 0 || promedio > 20)
 // Las barras significan "o" lógico.
 Console.WriteLine("Dato erróneo");
 else if (promedio <= 5)
 Console.WriteLine("Échale más ganas, tu puedes!");
 else if (promedio <= 10)
 Console.WriteLine("Venga vamos! puedes ser mejor, fala poco!");
 else if (promedio <= 15)
Console.WriteLine("Vas por buen camino! ");

 // En el siguiente caso, van las llaves porque se emplea 2 lineas
 // de código y el IF sin llaves solo permite una.
 else if (promedio <= 20)
 {
 Console.WriteLine("Bien, seguid adelante!");
 Console.WriteLine("Ahora, comparte lo que sabes");
 }
 // Finalmente el clásico .ReadLine() para detener la aplicación
 // y apreciar sus resultados.
 Console.ReadLine();
 }
 }
}

Saludos!

Sobre funciones y métodos

Mucha gente cuando empieza a programar, no entiende del todo este concepto de las funciones y el concepto de método, tanto porque o los profesores no son demasiado explícitos, o porque las funciones no son legibles al instante y pues en este post voy a intentar clarificar un poco eso un poco.

Primero que nada, una función no es un método, y viceversa, mucha gente confunde los términos porque en teoría tienen una aplicación parecida, pero hemos de diferenciar a la función del método con lo siguiente:

Función: Es una “acción” que se ejecuta al llamarse, y opcionalmente (y si es que ha sido definido así) con los parámetros que se le pasen (eso en ejecución) y pues por consiguiente, el trabajo que haga depende de esos parámetros o de cómo es que se llame. Por ejemplo:

Si definimos una función “Imprimir”

public void Imprimir(String cadena){

System.out.println(cadena);

}

Deberíamos ponerlo en donde lo necesitamos, de la siguiente forma:

Imprimir("Hola! a todos");

Para que imprima lo que le hemos pasado por parámetro haciendo el trabajo dependiente de eso que le pasemos!

Método: En cambio, un método siempre tiene una asociación con alguna clase, lo que muy aparte de la función de la función (valgan redundancias) va a depender tanto de los parámetros que se le pasen, como del objeto que esté operando en ese momento, osea prácticamente podríamos definir a un método, como la función dentro de un objeto, dejando en claro que todo método es una función, pero no toda función es un método. Por ejemplo:

En una clase definimos el método “Suma” de la siguiente manera:

public int suma(int y){

//la variable x es una variable declarada en el objeto supongamos,
 int x = this.x;
 int suma = x + y;
 return suma;
 }

En el main deberiamos definir el funcionamiento de esta manera:

//objetoOperacion o = new objetoOperacion()

//o.setX(10);

int suma = o.suma(20);
//Suponiendo que lo comentado arriba es correcto, deberíamos sumar un 20 al 10, osea daría un 30!
//System.out.println("La suma es: "+suma); //debe dar 30! 

Seguir leyendo …

Programando en C Sharp – 01

Y como dijo Jack, vamos por partes. Ahora comienza la programación en C#,
el IDE que utilizaremos es Visual Studio 2008, pueden descargar una versión
Express [de preferencia el instalador OffLine], espero que este curso sea de su agrado :D

using System;
// "System" es la libreria que usaremos(using) para el programa.

namespace IntercambioValores
 // Es una forma de agrupar lógicamente.
 // Podemos llevar un ordenamiento jerárquico, que
 // permite buscar y utilizar de manera sencilla las clases.

{
 class Program
 // Nombre de la clase
 {
 static void Main(string[] args)
 // Método principal del programa
 {
 // Declaración de variables
 int a, b, c;

 // .WriteLine: escribe valores y da un salto de linea.
 Console.WriteLine("Comenzando a programar en C#");
 Console.WriteLine("----------------------------");

 // .Write: comienza a recibir valores en la misma linea
 Console.Write("Ingrese un valor a: ");

 // Convertimos tipo de dato: string -> int
 a = Int32.Parse(Console.ReadLine());
 Console.WriteLine("Ingrese un valor b: ");
 b = Int32.Parse(Console.ReadLine());
 Console.WriteLine("----------------------------");

 // se utiliza una variable c para poder almacenar
 // temporalmente el cambio a->b, de lo contrario
 // las variables se reemplazan y caos total >.<
 c = a;
 a = b;
 b = c;
 Console.WriteLine("Los valores de a y b fueron intercambiados");
 Console.WriteLine("Ahora los nuevos valores son: ");
 Console.WriteLine("a: " +a);
 Console.WriteLine("b: " +b);
 Console.ReadLine();
 }
 }
}

Ahora bien, si lo que deseamos es desarrollar alguna fórmula matemática como la suma de los N primeros números naturales… En el main, estaría el siguiente código:

int CantidadNumeros;
double Resultado;
Console.WriteLine("Programando matemáticamente");
Console.WriteLine("---------------------------");
Console.Write("Ingrese la cantidad de numeros: ");
CantidadNumeros = Int32.Parse(Console.ReadLine());
//Determinamos la fórmula:
Resultado = CantidadNumeros * (CantidadNumeros + 1)/2;
Console.WriteLine("El resultado es: "+Resultado);
Console.ReadLine();

Saludos!

WordPress II (WTF!)

He oído muchas veces consejos, están en todo momento… pero esta imagen se sale de lo usual… fue algo… extraño..

wtf_wordpress

Editando algunas de las plantillas de este blog, me encontré con eso que me cayó como una cachetada diciendo: “Despierta!!… no vayas a borrar esto” jajaja… Ahí dice:

“Si borras esto el cielo caerá sobre tu cabeza”

Original por parte de los que desarrollaron WordPress simplemente estas cosas son las que hacen a un programador esforzarse en su chamba… Jaja haber si me encuentro con más avisitos. Saludos!