User Tag List

Página 2 de 3 PrimerPrimer 123 ÚltimoÚltimo
Resultados 16 al 30 de 43

Tema: Programacion en C/C++

  1. #16

    Fecha de ingreso
    Sep 2003
    Mensajes
    129
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Solo comentar que pedagogimente hablando, el C puro y duo no es lo más aconsejable.
    En un principio para asentar las "bases de los fundamentos de la programación" lo más aconsejable es algo como el basic , pues sus contrucciones son más intuitivas. Una vez que se aprenda a realizar algoritmos pasar a C no va a resultar demasiado complejo, y entonces ya nos podemos meter a fondo con lladas a funciones, procedimientos , arrays etc etc
    De todos modos esto no significa que empezar desde 0 con el C no se pueda, todo depende de las capacidades de la persona.

  2. #17

    Fecha de ingreso
    Oct 2003
    Ubicación
    Silent Hill
    Mensajes
    723
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    pues no, el basic crea vicios como el GOTO, y es mucho mejor. al menos didácticamente hablando. el PASCAL.
    Hay 10 tipos de personas: las que saben binario y las que no.

  3. #18

    Fecha de ingreso
    Nov 2003
    Ubicación
    MdV - BCN
    Mensajes
    1,416
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    pos bueno, ya me e exo con un libro de estos, por lo ke veo esta bastante interesante, ademas vienen 2 cds con ejemplos tal i kual osea ke kreo ke e escogido bien. saludos a todos i gracias x vuestros consejos, seguire al tanto del post.

  4. #19

    Fecha de ingreso
    Nov 2003
    Ubicación
    MdV - BCN
    Mensajes
    1,416
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    x cierto, alguna web de c?

  5. #20

    Fecha de ingreso
    Sep 2001
    Mensajes
    102
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Para aprender desde lo mas basico empieza con esta.
    http://c.conclase.net/
    Es muy buena y esta muy bien explicado. Em piezas con C y luego sigue con C++

    Salu2
    Salu2

    "La violencia es el último recurso del incompetente"

  6. #21

    Fecha de ingreso
    Apr 2003
    Ubicación
    Salamanca
    Mensajes
    5,346
    Mencionado
    2 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    12
    Agradecer Thanks Received 
    32
    Thanked in
    Agradecido 27 veces en [ARG:2 UNDEFINED] posts
    Mirar, estamos hablando de como empezar a programar con vistas a utilizar C y C++, asi que... dejaros de correciones didacticas y ser mas pragmaticos. Primero se puede empezar por C para coger conceptos de programacion, e incluso puede que le sirva al chico para lo que el pretende sin utilizar C++, y luego se pasa a la OO.

    Ya se que C++ no aparecio como un lenguaje orientado a objetos, pero se a adaptado a la perfeccion (aunque admita muchas licencias, que por cierto son para hacerlo mas potente). C++ es orientado a objetos y permite la aplicacion de conceptos tan fundamentales como herencia, polimorfismo y encapsulacion. Si se quiere explorar la orientacion a objetos con todas sus posibilidades es correcto (no digo perfecto, si los vicios que permite son malos) y es de los pocos que permite herencia multiple (para aprobechar esto hay que saber mucho, no es para neofitos en diseño).

    Java esta muy bien pero, esta es la eterna discusion, es menos eficiente (por decirlo de alguna manera).

    Por favor Zheo, ahorra los conceptos tecnicos a los novatos que no son de recibo y confunden bastante. El resto creo que ya sabemos las diferentes definiciones de Objeto, yo me quedo con la de Booch (Instancia de una clase. Se define por sus tres caracteristicas fundamentales: Identidad, Funcionalidad, Estado. Mas o menos, que me perdonen los puristas, que ahora no tengo a mano la definicion exacta).

  7. #22

    Fecha de ingreso
    Oct 2003
    Ubicación
    Silent Hill
    Mensajes
    723
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Si empiezas en C para luego pasar a C++ para eso es mejor empezar directamente en C++. Para empezar de cero a programar en C++ vas a tener que dar programación estructurada igual que en C.
    Otra cosa es que quieras empezar en C porque es lo que vas a usar (por ejemplo en la GP32) y luego además aprendas C++

    Di una explicación de objeto porque Daxter preguntó qué es programación orientada a objetos. Y digo yo que para explicar ese paradigma de programación habrá saber qué demonios es un objeto digo yo
    De todos modos si lo defines como instancia de una clase, tienes que explicar de igual manera qué es una clase, y no se si será peor el remedio que la enfermedad

    Por último hay que diferenciar entre saber programar y saber escribir un programa en un lenguaje, que como sabrás son cosas distintas. Así que lo didáctico no creo que sobre.

    Un saludo.
    Hay 10 tipos de personas: las que saben binario y las que no.

  8. #23

    Fecha de ingreso
    Apr 2003
    Ubicación
    Salamanca
    Mensajes
    5,346
    Mencionado
    2 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    12
    Agradecer Thanks Received 
    32
    Thanked in
    Agradecido 27 veces en [ARG:2 UNDEFINED] posts
    Si, tienes razon Zheo. Lo del C y C++... vale, hasta cierto punto los principios son parecidos, pero yo me referia a la hora de adquirir conceptos basicos y probarlos (bucles, condicionales, selecciones, memoria dinamica,...) que el C solo esta bien.

    Es cierto que hay profesores y autores que casi recomiendan empezar por un lenguaje OO si lo que se pretende a priori es desarrollar con OO ya que se evitan vicios de la programacion estructurada y conceptos erronios.

    Vale, ahora me voy a cenar y despues os pongo un par de ejemplos claritos de clases y objetos con las cosas llamadas por su nombre.

  9. #24

    Fecha de ingreso
    Apr 2003
    Ubicación
    Salamanca
    Mensajes
    5,346
    Mencionado
    2 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    12
    Agradecer Thanks Received 
    32
    Thanked in
    Agradecido 27 veces en [ARG:2 UNDEFINED] posts
    A ver.

    Primero presentaremos la OO como un paradigma de desarrollo del software (no de programacion unicamente) y ahora se nos presenta otro problema, ¿que es un paradigma de desarrollo del software?. Como ya he dicho este no es el camino, ya que hay mucha gente que se perderia y no es plan ponernos a explicarlo todo desde cero. Asi que me voy a dejar de pamplinas.

    A grandes rasgos dire que la Orientacion a Objetos es una forma de plantear la solucion de problemas logicos o de ingenieria utilizando como ejemplo el mundo que nos rodea. Con ella se pretende representar un problema real de una forma natural, si queremos hacer un programa que simule el comportamiento de un coche, ¿por qué tratar al coche como A y no como el Coche A?.

    Veamos como definir el caso del coche en OO. Queremos representar un coche no lo llamaremos A o elemento A o 1. Un coche tiene varias caracteristicas que nos gustaria simular: color, marca, velocidad punta, potencia,... Lo que importa es cuales de estas caracteristicas nos importan para nuestra simulacion, que diremos que es para un juego de carreras. Nos centraremos en el color, la velocidad, la aceleracion y la posicion.

    Definamos nuestro objeto COCHE, si objeto:

    - Un COCHE, es un objeto que tiene un color, se mueve a una velocidad, acelera en una proporcion determinada y se encuentra en una posicion tambien determinada. Estos seran los atributos o propiedades de un objeto coche.

    - Pero la velocidad se determina en funcion de la aceleracion y nuestras indicaciones. La posicion depende de la velocidad, la posicion anterior y nuestras indicaciones. Estas seran las funciones o metodos que determinaran el comportamiento de un objeto coche.

    Pero pueden encontrar coches con diferentes colores, que van a diversas velocidades, ... bla, bla, bla. Coches diferentes. Se podria decir que todos estos coches tienen cualidades comunes y funcionalidades comunes, esto es: pertenecen a una CLASE.

    En C++:

    class Coche
    {
    int color; /*cada color tiene un numero asignado*/
    int velocidad;
    int aceleracion;
    int pos_x;
    int pos_y;

    CalcularVelocidad(int boton); /*boton indica una tecla pulsada*/
    CalcularPosicion(int boton);
    }


    Bien, definamos que es un OBJETO (mas o menos) coche: un objeto tiene unas propiedades (las que hemos dicho), tiene un estado (color=azul, velocidad=200K/h, aceleracion=15m/s^2,...) y una identidad (esto es lo que diferencia dos objetos que tienen las mismas propiedades y el mismo estado).

    Esas son las tres cualidades de un objeto: propiedades (atributos y metodos), estado e identidad. (corregirme si me equivoco, que no lo tengo muy fresco).

  10. #25

    Fecha de ingreso
    Oct 2003
    Ubicación
    Silent Hill
    Mensajes
    723
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Un paradigma de programación no es tan dificil de describir, es básicamente un modelo de programación, es decir, una manera o un enfoque para hacer el programa.

    La verdad es que a veces para describir las cosas nos complicamos mucho (yo el primero) A ver que os parece esta explicación lo menos técnica posible:
    Nosotros vemos el mundo orientado a objetos: por la calle puedes ver pasar un Audi, un Renault o un Mercedes, pero tú piensas en ellos como Coches, y aunque tengan diferencias (tamaño, color marca...) tú los reconoces como un coche. A esta capacidad se le denomina abstracción: separar las cualidades diferentes de varios objetos para considerar las similitudes.
    Por eso tenemos un concepto, por ejemplo, de una mesa, y éste concepto es el mismo, aunque veamos una mesa cuadrada, rectangular, de madera o metal, siempre pensamos en una 'mesa'

    Pues ese es el enfoque que pretende la POO.
    El concepto del objeto sería lo que en la programación se denomina clase -en este caso tendríamos la clase 'mesa'
    Las diferentes instancias serían los objetos. Podemos tener varios objetos 'mesa' que serán de distintos colores, formas y tamaños, pero todos ellos tienen algo en común: son una mesa Con esto hemos realizado la abstracción de una 'mesa'.
    Cada uno de las mesas son los objetos Son lo que realmente usaremos para programar, con lo que realmente interactuamos.
    Esto también es así en la vida real: no vemos conceptos (clase) de coches por la calle, sino coches, objetos. El concepto de coche es algo que nosotros hemos creado, pero como tal no existe de forma tangible.

    En el mundo real, los objetos pueden realizar acciones, por ejemplo una persona puede caminar, hablar o relacionarse con otras personas u otros objetos.
    Siguiendo con el buen ejemplo de mortimor, imaginemos que una persona está en un coche. Son dos objetos distintos, pero si la persona pisa el acelerador, el coche responde acelerando. Es decir, el objeto 'persona' envía un mensaje al objeto 'coche' y éste realiza una acción.
    En programación ocurre lo mismo, sustituye a la persona por el usuario del juego, y el acelerador por una tecla y ya lo tienes relacionado con la programación: un objeto 'jugador' enviaría un mensaje al objeto 'coche' para que el coche acelere. Fijaos que da igual que coche sea, todos los coches se pueden acelerar (sino vaya mierda de coche xD)

    Hay muchas más características asociadas a la POO pero esto es lo básico y lo podemos resumir así:
    La POO pretende modelar un programa de la misma manera que vemos el mundo, es decir, como objetos que se relacionan unos con otros.
    Por contra la programación estructurada modela el programa como una secuencia de acciones a realizar.

    Bueno, además de mi rollo también os dejo esto: Un buen curso de C++
    Última edición por Zheo; 12/11/2003 a las 11:40
    Hay 10 tipos de personas: las que saben binario y las que no.

  11. #26

    Fecha de ingreso
    Nov 2003
    Ubicación
    En Coruscant (Sachsen)
    Mensajes
    154
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Originalmente anunciado por Zheo
    Si empiezas en C para luego pasar a C++ para eso es mejor empezar directamente en C++.
    AArgh, vaya rollo de thread!! Tio actualmente nadie programa en sòlo en C, ya que las simples líneas de comentario multiple como:
    /* :P */
    Ya son C++. La única diferencia real es programar en OO puro o estructurado...

    Un paradigma de programación no es tan dificil de describir, es básicamente un modelo de programación, es decir, una manera o un enfoque para hacer el programa.
    Aunque te parezca mentira la orientacìón a objetos va mucho más hayá de los 'programas' o la programación.

    Originalmente anunciado por mortimor

    Java esta muy bien pero, esta es la eterna discusion, es menos eficiente (por decirlo de alguna manera).
    Jeje, ya ves que si puede ser eterna . Sólo comentar que Java (y ahora .NET), tiene el lastre de la máquina virtual. Pero representa muchas ventajas... Además que más te dá si cada año los procesadores son un 30% más potentes al mismo precio?.
    Saludos

  12. #27

    Fecha de ingreso
    Oct 2003
    Ubicación
    Silent Hill
    Mensajes
    723
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Los comentarios /*...*/ son de C Los que son de C++ son los comentarios de una línea. (//...) :P

    Aunque te parezca mentira la orientacìón a objetos va mucho más hayá de los 'programas' o la programación.
    Bueno, no puedo hablar de eso porque no conozco ningún ejemplo concreto (tal vez bases de datos?).
    De todas maneras si estamos hablando de 'paradigma de programación' está claro que nos referimos a aplicar OO a programación.

    Gracias a la regla de los procesadores más rápidos cada año y la memoria a menor precio tenemos esos programas que nos gustan tanto, lentos y que apenas comen recursos, por ejemplo el mPlayer.
    Dime por ejemplo para que sirve el código administrado de .NET si total es sólo para plataformas windows.
    Que bonito va a ser tener que actualizar el ordenata cuando salga el longhorn...

    Por otro lado esa pérdida de rendimiento puede que no puedas permitírtelo en según qué aplicaciones, por ejemplo juegos.

    Un saludo
    Hay 10 tipos de personas: las que saben binario y las que no.

  13. #28

    Fecha de ingreso
    Nov 2003
    Ubicación
    En Coruscant (Sachsen)
    Mensajes
    154
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Originalmente anunciado por Zheo
    Bueno, no puedo hablar de eso porque no conozco ningún ejemplo concreto (tal vez bases de datos?).
    La OO ante todo es una filosofía para explicar muchos conceptos. Se trata de describir el mundo, los objetos que viven en el, y su relación e iteracción entre ellos. Que se utiliza recurrentemente para el diseño y análisis, ya sea bases de datos o gestión interna de una compañía. Otra cosa es que exista la programación orientada a objetos POO...

    Por otro lado esa pérdida de rendimiento puede que no puedas permitírtelo en según qué aplicaciones, por ejemplo juegos.
    Me refiero que lo que ahora parece un derroche de rendimiento, en unos días merece la pena por otras ventajas. Desde luego con un procesador de hace 10 años te hecharías las manos a la cabeza, y te negarías en rotundo a hacer un juego del 3 en raya en java que consume tantos recursos como el Street Fighter.
    Pero una vez superado el handicap de memoria y potencia, ya merece la pena hacer cualquier cosa, sea un juego serio o una aplicación para un banco. Cómo, creo yo ocurre actualmente. Mirad las Palm, los java servlets, la GBA(tienes varios ports de java y VM), etc... Yo desde luego pienso que es el futuro.
    Saludos

  14. #29

    Fecha de ingreso
    Nov 2003
    Ubicación
    En Coruscant (Sachsen)
    Mensajes
    154
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Originalmente anunciado por Zheo
    Dime por ejemplo para que sirve el código administrado de .NET si total es sólo para plataformas windows.
    Eso no es del todo cierto, es de momento para plataformas Windows porque la plataforma de Microsoft es Windows . Sin embargo sólo bastaría con crear una máquina virtual .NET para la nueva plataforma...
    Una ventaja que tiene el .NET frente a Java, es que a diferencia de Java tu puedes trabajar en .NET con cualquier lenguaje de programación (que cumpla los estándares de OO), y exista un compilador claro. De hecho si tu quieres te puedes hacer tu propio lenguaje para .NET

  15. #30

    Fecha de ingreso
    Oct 2003
    Ubicación
    Silent Hill
    Mensajes
    723
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Me parece bien que exista la OO en otros contextos, pero en este estamos hablando únicamente de programación y a eso me refiero.

    A mi la regla de "como total hay potencia de cálculo" no me convence. Si fuera así estaríamos usando ordenación burbuja en vez de quicksort o mergesort, total, porque tarde un poco más no pasa nada, dentro de dos años irá más rápido...
    Y si te parece normal hacer un 3 en raya que requiera un ordenador que mueva el street figter... ***** entonces, ¿cuando vas a poder jugar a un street figther? ¿Cuando tengas un ordenador que mueva el quake?
    Vamos que el java tiene muchas cualidades, pero no deja de ser un emulador y por tanto, más lento. Particularmente me fastidia bastante que un IDE (jGRASP) me tarde 10 segundos en cargar cuando uno nativo (Dev-C++) tarda 1.

    Respecto a lo de .NET, me parece muy bien que tenga potencial, pero de momento sólo sirve para máquinas windows, aunque haya proyectos para otras plataformas. Vaya excusa lo de crear una MV para otra plataforma.
    Acabamos antes haciendo una API común, como ya las hay, y compilando el mísmo código para cualquier plataforma, y ya lo tenemos: código portable y eficiente.

    Además los proyectos de MV son ajenos a la empresa... pues vaya bien... al menos SUN tiene MV para varias plataformas.

    Y si, puedes usar cualquier compilador para hacer .NET y hacer código que funcione en cualquier parte (bueno, en cualquier parte que tenga el framework .NET)
    Pues vaya novedad, a mi me enseñaron que el paradigma COM se creó con esas premisas, pero bueno.
    Lo peor es que habrá gente que pensará que es innovador y todo.

    Vamos, que otra pijada de MS que como todo lo suyo tiene cosas buenas (pocas) malas (pocas) y orientado al monopilo (Muchas, C# es el ataque directo al Java de Sun).

    Por cierto, ¿como es posible que el juego que has puesto en otro hilo no pueda usarlo con mi MV? No se supone que es Java (esto lo pregunto sin coñas, pensé que sólo se crea el .jar y está)
    ¿Hay alguna manera de poderlo rular?


    Un saludo
    Hay 10 tipos de personas: las que saben binario y las que no.

Página 2 de 3 PrimerPrimer 123 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •