[Proyecto] Emulador PSP
Moderadores: Kravenbcn, largeroliker, fidelcastro, cerealkiller, pspCaracas, dark_sasuke, m0skit0, LnD, ka69, zacky06
-
- Enteradillo
- Mensajes: 29
- Registrado: 17 Ene 2011, 19:37
- PSN ID: AriathTheWise
- Ubicación: Murcia
- Contactar:
Re: [Proyecto] Emulador PSP
Es que de hecho, si el código está bien ordenado, a las variables y funciones se les pone nombres intuitivos, etc ... comentarios hacen falta mínimos, porque, si sabes un mínimo de programación, y ves un código así, directamente lo entiendes.
Si os cogéis todos Linux, ya sea nativo o virtualizado, me montaré yo también un Ubuntu virtual, así trabajamos todos igual .
Luego, una vez se tuviera el código, solo habría que compilarlo en Windows para tener sus binarios, y en Linux para los suyos.
Salu2
Si os cogéis todos Linux, ya sea nativo o virtualizado, me montaré yo también un Ubuntu virtual, así trabajamos todos igual .
Luego, una vez se tuviera el código, solo habría que compilarlo en Windows para tener sus binarios, y en Linux para los suyos.
Salu2
Re: [Proyecto] Emulador PSP
Primero, aclarar que aquí no importan los tochos. De hecho, habrá que leer bastante, así nos vamos acostumbrando
Eso es malo para mantener y hace que el código sea enorme innecesariamente. Tener 2 proyectos diferenciados es más claro, aunque se repita código. En Linux no habŕia problema en usar enlaces blandos para no tener que, pero tampoco veo ningún problema en tener 2 proyectos separados. Es mucho más limpio y mantenible en mi opinión.
Yo voto por Google Code, es una empresa que sabes no va a cerrar, porque ya he manejado varios proyectos en él también (el HBL está en Google Code por ejemplo), porque es gratis, porque apoya el software libre, y no he tenido ningún problema en gestionarlo (de todas formas yo todas las gestiones de código por SVN las hago desde el cliente).
Cierto, no lo comenté antes porque... iokese Estoy totalmente de acuerdo con lo que dices, y si te fijas en mi código, yo siempre intento mantenerlo lo más ordenado, legible y comentado posible.
De hecho, ya que lo comentas, me gustaría proponer unas reglas de estilo. Y nada mejor que un ejemplo comentado:
esta_cabecera.h
cclase.cpp
Los nombres de fichero siempre en minúscula.
Estoy abierto a cualquier discusión, pero intentemos no perder mucho tiempo en esto. Es más fácil aceptar un determinado modelo (el mío, claro ) y empezar a lo importante
Ariath escribió:Respecto al tema de Windows y Linux, creo que es mejor hacer una sola versión, en la que se pueden ir añadiendo las bifurcaciones que sean necesarias (los que conocen ya C, hablo de los típicos #ifdef _WIN32 o #ifdef _UNIX, etc ... (hablo de memoria, así que seguramente he puesto ambos ifs mal xD)).
Eso es malo para mantener y hace que el código sea enorme innecesariamente. Tener 2 proyectos diferenciados es más claro, aunque se repita código. En Linux no habŕia problema en usar enlaces blandos para no tener que, pero tampoco veo ningún problema en tener 2 proyectos separados. Es mucho más limpio y mantenible en mi opinión.
Ariath escribió:Respecto al servidor SVN, voto por Assembla por 2 razones: Primero es un hosting SVN gratuito y de buena calidad, y segundo, es bastante intuitivo de gestionar.
Yo voto por Google Code, es una empresa que sabes no va a cerrar, porque ya he manejado varios proyectos en él también (el HBL está en Google Code por ejemplo), porque es gratis, porque apoya el software libre, y no he tenido ningún problema en gestionarlo (de todas formas yo todas las gestiones de código por SVN las hago desde el cliente).
Ariath escribió:Y bueno, hay una cosa en que me gustaría hacer especial hincapié: La legibilidad del código.
Cierto, no lo comenté antes porque... iokese Estoy totalmente de acuerdo con lo que dices, y si te fijas en mi código, yo siempre intento mantenerlo lo más ordenado, legible y comentado posible.
De hecho, ya que lo comentas, me gustaría proponer unas reglas de estilo. Y nada mejor que un ejemplo comentado:
esta_cabecera.h
Código: Seleccionar todo
/*
- Donde digo "int" digo cualquier tipo
- Uso de TABULACIONES (no espacios) para el sangrado
- Una tabulación por cada sangrado
- Las llaves siempre al principio de línea (no al final aaaargh grgrgrgr)
- Todo lo que va dentro de llaves va sangrado (con excepciones sobre todo en C++)
*/
// Esto SIEMPRE, ahorra innumerables errores compilación de referencias circulares
#ifndef ESTA_CABECERA_H
#define ESTA_CABECERA_H
// Primero las cabeceras estándar
#include <stdio.h>
// Luego librerías extra
#include <peasograficos.h>
// Luego las propias de la aplicación
#include "cabezabolo.h"
// Constantes con mayúsculas!!
#define CONSTANTE_DEFINE
#define OTRA_CONSTANTE
// typedef struct siempre directamente
// Siempre pongo los tipos con "t" por delante
typedef struct
{
// Interesante estructura
}tUnTipo;
// Descripción de la clase y su funcionalidad
class cClase: public cClasePadre
{
private:
// Lo que vaya en cada, tabulado como se debe
protected:
public:
}
#endif
cclase.cpp
Código: Seleccionar todo
// Sólo ésta a ser posible, sólo ésta
#include "cabeceraquecorresponda.h"
// Descripción del cometido del método, de los parámetros de entrada y valor de retorno
int cClase::hace_algo_importante(int parametro1)
{
// Siempre incializar
int describeme = 0;
// Nunca valores literales en el código, siempre usar constantes, salvo valores intrínsecos del lenguaje
// Siempre con llaves, aunque la sintaxis permita que no se usen
if (describeme == CONSTANTE_DEFINE)
{
// Usa y abusa de los paréntesis (se ve(que programo(en lisp?)))
while ((describeme > 0) && (describeme < CONSTANTE_DEFINE))
{
// Muchas cosas difíciles y complicadas
}
}
else
{
// Buah, más difícil aún
}
// Todo sangrado en el switch
switch(describeme)
{
case CONSTANTE_DEFINE:
// Un solo return por función!
return OTRA_CONSTANTE;
}
Los nombres de fichero siempre en minúscula.
Estoy abierto a cualquier discusión, pero intentemos no perder mucho tiempo en esto. Es más fácil aceptar un determinado modelo (el mío, claro ) y empezar a lo importante
Re: [Proyecto] Emulador PSP
Acepto lo de moskito. Es la primera vez que veo C++ orientado a objetos. Tiene cierto parecido con java pero hay cosas que no he entendido todavía. Nada mas que empiece a ver código funcionando fijo que lo entenderé.
PSP3ooo: 4.21 -> 5.00 -> 5.03 -> 5.03 GEN-A -> 5.03 M33 -> 5.03 MHU -> 5.03 GEN-C -> 5.03 MHU -> 6.20 PRO-B4
Re: [Proyecto] Emulador PSP
dRoLl3R escribió:Es la primera vez que veo C++ orientado a objetos.
Es que no hay otro
dRoLl3R escribió:Tiene cierto parecido con java pero hay cosas que no he entendido todavía. Nada mas que empiece a ver código funcionando fijo que lo entenderé.
¡Cuidao! Será que Java ha copiado C++ Y sí, si sabes/estás viendo Java, lo pillarás en un pispás. El tema de la memoria dinámica ya es otro asunto
Re: [Proyecto] Emulador PSP
Es que lo que hemos dado de C++ era mas bien C porque nos dedicamos a hacer ejercicios muy parecidos a los que tienes tu en el foro de programación.
Ya sé que java está basado en C tranquilo. Quería decir que se entiende igual de bien que java y como estoy dando java lo cogeré rápido
Ya sé que java está basado en C tranquilo. Quería decir que se entiende igual de bien que java y como estoy dando java lo cogeré rápido
PSP3ooo: 4.21 -> 5.00 -> 5.03 -> 5.03 GEN-A -> 5.03 M33 -> 5.03 MHU -> 5.03 GEN-C -> 5.03 MHU -> 6.20 PRO-B4
Re: [Proyecto] Emulador PSP
Sólo te estoy chinchando hombre
A ver qué piensa la gente con más experiencia, que seguro que me ponen a parir y partimos en guerras santas (así llaman los hackers a las discusiones entre personas que nunca pueden resolverse porque son cuestiones de gustos, del inglés "holy wars").
A ver qué piensa la gente con más experiencia, que seguro que me ponen a parir y partimos en guerras santas (así llaman los hackers a las discusiones entre personas que nunca pueden resolverse porque son cuestiones de gustos, del inglés "holy wars").
-
- Enteradillo
- Mensajes: 29
- Registrado: 17 Ene 2011, 19:37
- PSN ID: AriathTheWise
- Ubicación: Murcia
- Contactar:
Re: [Proyecto] Emulador PSP
Solo una sugerencia, no comenzar los tipos con t, en lugar de eso yo hago lo siguiente:
- Cadenas, sLoquesea
- Estructuras, strLoquesea
- Enteros, iLoqusea
Etc ...
¿Que os parece ?.
Salu2
- Cadenas, sLoquesea
- Estructuras, strLoquesea
- Enteros, iLoqusea
Etc ...
¿Que os parece ?.
Salu2
- pspCaracas
- Moderador Global
- Mensajes: 3080
- Registrado: 03 Sep 2009, 03:29
- Ubicación: Buenos Aire - Argentina
- Contactar:
Re: [Proyecto] Emulador PSP
m0skit0 escribió:Las llaves siempre al principio de línea (no al final aaaargh grgrgrgr)
Y a mí que siempre me ha gustado al final. Por qué? Simplemente por legibilidad y espacio. Gastar una línea para una llave no me parece correcto (y ahora menos que hay muchos netbooks y xPads suelto)...pero es cuestión de estilos, y el jefe es el que manda (gracias a Dios los IDEs permiten configurar esto).
http://farm3.static.flickr.com/2497/3983880148_f5ae0aaab2_o.png
Re: [Proyecto] Emulador PSP
pspCaracas escribió:Y a mí que siempre me ha gustado al final. Por qué? Simplemente por legibilidad y espacio
¿Legibilidad? ¿Qué legibilidad puede tener una llave al final y otra al principio? No puedes ver qué llave corresponde con qué, tienes que andar buscando los finales de línea. ¿Puse la llave, no la puse...? ¿Para qué tanta molestia? Y no sé qué manía con eso del espacio, ¿qué pasa pagas a la gente por líneas de código? No veo mal el uso del espacio donde sea necesario para que sea más legible.
pspCaracas escribió:Gastar una línea para una llave no me parece correcto (y ahora menos que hay muchos netbooks y xPads suelto)
Si programas en un netbook, estás loco. Te vas a dejarla espalda y los ojos de una sola tacada.
pspCaracas escribió:gracias a Dios los IDEs permiten configurar esto
Mientras no subas el código con las llaves al final, todos contentos
Uy uy uy esto va a derivar en guerras internacionales que va a tener que mediar Carla Bruni y más estando el "diplomático" de pspCaracas