PDA

Ver la versión completa : Empezas a programar ? CONSEJOS AQUI



Enkapzulada
12/06/2008, 12:09
Bueno la idea de esto es dar buenos consejos para el que comienza a programar.
Otorgar experiencias y costumbres para los que recien estan adaptandolas.

Por otro lado derribar malas costumbres, y malas practicas de uso de lenguajes.

Aqui vamos :


USAR NOMBRES ADECUADOS

Dar un nombre representativo a las variables y demás elementos de la aplicación. Se trata de que al ver el nombre sepamos qué alamacena.

Por ejemplo: si una variable guarda el valor total de una operación, llamarla "Total" y no "var1", que no nos dice nada acerca de su contenido.

Esto mismo es aplicable a los formularios, botones, cajas de texto ...


USAR UN CRITERIO DE NOMENCLATURA

Seguir una norma a la hora de dar los nombres a los elementos de la aplicación.

Por ejemplo:

- Los nombres de los formularios empiecen por 'frm': "frmPrincipal".

- Los nombres de los botones por 'cmd' (de CommandButton): "cmdAceptar".

- Los de las cajas de texto por 'tb' (de TextBox): "tbNombre".

- Y así con el resto de los elementos.

CÓDIGO REPETIDO

Si vemos que en nuestra aplicación hay código que se repite mucho, lo mejor será ponerlo dentro de un procedimiento o de una función para facilitar su uso y hacer el código más inteligible.


COMENTAR EL CÓDIGO

Poner comentarios en el código. Esto facilitará mucho el entendimiento del código, el saber porqué se ha hecho una determinada acción. Además, nos será útil para la reutilización del código en otras aplicaciones. También nos será de utilidad cuando dejamos de trabajar en el código una temporada y al volver sobre él nos será más fácil entenderlo de nuevo.


USAR CONSTANTES

Usar Constantes para valores que se vayan a usar mucho en el código.

Por ejemplo: Si vamos a usar constantemente el número PI, en vez de estar continuamente escribiendo 3.14159, declaramos lo siguiente:

Const PI = 3.14159 y cada vez que queramos hacer uso de ella, la pondremos directamente:

Total = 6 * PI


DAR UN TIPO CONCRETO A LAS VARIABLES

Dar tipo a las variables. Es muy recomendable, pues así no se malgasta memoria, al reservarse justo lo que el tipo de la variable necesita. Por eso evitar el dar como tipo Variant, pues estaremos desperdiciando memoria.


USAR CORRECTAMENTE LAS SENTENCIAS IF

No abusar de muchas sentencias if anidadas, pues se incrementa la complejidad del código y puede que al final no obtengamos el resultado esperado.


UTILIZACION DE SEUDO CODIGO ( By EPP )

Utilizar palabras, para describir procesos, asignaciones, funciones, estructuras logicas, etc
Ejemplo

Mientras CONDICION Hacer

ACCIONES

FIN Mientras

Si CONDICION Entonces

ACCIONES
Sino

ACCIONES

Fin SI


NOTACION HUNGARA ( By Vofijatee)

http://es.wikipedia.org/wiki/Notaci%C3%B3n_h%C3%BAngara

SOFTWARE DE AYUDA ( by Vofijatee)

ScriptMaster v1.0
ScriptMaster le permite agregar, editar y ordenar sus rutinas de una manera muy facil. Contiene alrededor de 500 rutinas ordenadas por categorias: Javascript, PHP, Actionscript, Visual Basic y ASP. Si esta buscando un programa que le facilite la tarea a la hora de desarrollar sus programas y/o sitios web, ScriptMaster es ideal para usted.


RECICLAJE DE SCRIPTS ( by DarkAnima )

Guardar scripts genericos, que se pueden volver a reutilizar para cualquier caso, o bien que tenga un uso comun.


:kissing:

EPP
12/06/2008, 12:56
Copada la idea...
Mi "consejo" es que utilicen PSEUDO CODIGO... Si encuentro algo de la literatura que usabamos en la FUCKultad en Algoritmos la posteo... a mi me ayudo banda programar de esa forma...
Ejemplo:

Mientras CONDICION Hacer

ACCIONES

FIN Mientras

Si CONDICION Entonces

ACCIONES
Sino

ACCIONES

Fin SI

Programar de esa forma en un principio con pocos conocimientos ayuda a manejar estructuras... y una vez que la tenemos bien clara lo unico que hay que hacer es "TRADUCIR" al lenguaje deseado...

Otra opcion muy recomendable son los diagramas de flujo... los lleva a tener un conocimiento del funcionamiento en BLOQUE de los programas...

Se que a muchos le va a parecer demasiado basico pero bueno yo por experiencia les digo que cuando no tienen idea de nada es lo mejor... sino prueben con PASCAL que es lo mas basico...

Saludos y si todo sale bien y TELECOM cumple lo que me prometio para agosto tengo INET en casa je y voy a estar mas activo en la seccion...

:)

PD: En cuanto a nomenclaturas pongo las que yo uso...

Formulario: frmNOMBRE
TextBox: txtNOMBRE
Label: lblNOMBRE
CommandButton: cmdNOMBRE
Frames: fraNOMBRE
CheckButton: chkNOMBRE
OptionButton: optNOMBRE

Luego agrego mas...

vofijatee
12/06/2008, 12:57
http://es.wikipedia.org/wiki/Notaci%C3%B3n_h%C3%BAngara

Esa es la "notación hungara" en varios cursos de certificación te pide que la uses, y es bastante útil.

Zagarth
12/06/2008, 13:05
Buenisimo :)

Lastima que no entendí :(

vofijatee
12/06/2008, 13:06
Bueno la idea de esto es dar buenos consejos para el que comienza a programar.
Otorgar experiencias y costumbres para los que recien estan adaptandolas.

Por otro lado derribar malas costumbres, y malas practicas de uso de lenguajes.

Aqui vamos :


USAR NOMBRES ADECUADOS

Dar un nombre representativo a las variables y demás elementos de la aplicación. Se trata de que al ver el nombre sepamos qué alamacena.

Por ejemplo: si una variable guarda el valor total de una operación, llamarla "Total" y no "var1", que no nos dice nada acerca de su contenido.

Esto mismo es aplicable a los formularios, botones, cajas de texto ...


USAR UN CRITERIO DE NOMENCLATURA

Seguir una norma a la hora de dar los nombres a los elementos de la aplicación.

Por ejemplo:

- Los nombres de los formularios empiecen por 'frm': "frmPrincipal".

- Los nombres de los botones por 'cmd' (de CommandButton): "cmdAceptar".

- Los de las cajas de texto por 'tb' (de TextBox): "tbNombre".

- Y así con el resto de los elementos.

CÓDIGO REPETIDO

Si vemos que en nuestra aplicación hay código que se repite mucho, lo mejor será ponerlo dentro de un procedimiento o de una función para facilitar su uso y hacer el código más inteligible.


COMENTAR EL CÓDIGO

Poner comentarios en el código. Esto facilitará mucho el entendimiento del código, el saber porqué se ha hecho una determinada acción. Además, nos será útil para la reutilización del código en otras aplicaciones. También nos será de utilidad cuando dejamos de trabajar en el código una temporada y al volver sobre él nos será más fácil entenderlo de nuevo.


USAR CONSTANTES

Usar Constantes para valores que se vayan a usar mucho en el código.

Por ejemplo: Si vamos a usar constantemente el número PI, en vez de estar continuamente escribiendo 3.14159, declaramos lo siguiente:

Const PI = 3.14159 y cada vez que queramos hacer uso de ella, la pondremos directamente:

Total = 6 * PI


DAR UN TIPO CONCRETO A LAS VARIABLES

Dar tipo a las variables. Es muy recomendable, pues así no se malgasta memoria, al reservarse justo lo que el tipo de la variable necesita. Por eso evitar el dar como tipo Variant, pues estaremos desperdiciando memoria.


USAR CORRECTAMENTE LAS SENTENCIAS IF

No abusar de muchas sentencias if anidadas, pues se incrementa la complejidad del código y puede que al final no obtengamos el resultado esperado.






:kissing:


A mi me enferma la cabeza cuando ponen:

if (variable != null){

haceralgo();
}

Por ahorrarse una línea queda desprolijo y molesto -_-, tendria que ser

if (variable !=null)
{

haceralgo();
}

Aca no se nota mucho la diferencia, pero en programas más complejos y con más sentencias si T_T

galuf
12/06/2008, 13:09
buen aporte mi estimada.
Sale sticky.
Luego le vamos adheriendo lo que se vaya posteando.


saludos

DarkAnima
12/06/2008, 13:13
Consejo de practicidad:

Guardar los scripts que puedan volver a usar.

Un ejemplo seria un script de una pagina para contar la cantidad de paginas a mostrar sobre una consulta en base de datos.

Ejemplo:

Primera << Anterior < 5 6 7 > Siguiente >> Ultima

Las consultas generalmente son iguales, solo cambia de donde se toman los datos.

Por ende cuando hagan scripts que vayan a utilizar en el futuro lo mas aconsejable es copiarlo en un nuevo archivo.

Tener una carpeta llamada Ejemplos o Scripts donde guardan los archivos con esta clase de informacion les va a ser muy util y comodo.

Saludos.-

vofijatee
12/06/2008, 13:43
A mi me ayudo mucho este programa cuando recien empezaba, que sirve más o menos para lo que dice el de arriba.

ScriptMaster v1.0
ScriptMaster le permite agregar, editar y ordenar sus rutinas de una manera muy facil. Contiene alrededor de 500 rutinas ordenadas por categorias: Javascript, PHP, Actionscript, Visual Basic y ASP. Si esta buscando un programa que le facilite la tarea a la hora de desarrollar sus programas y/o sitios web, ScriptMaster es ideal para usted.

http://webtutorial.files.wordpress.com/2007/07/sm01.thumbnail.jpg http://webtutorial.files.wordpress.com/2007/07/sm02.thumbnail.jpg

Desarrollado por: Federico Cargnelutti
Fecha: 2002
Licencia: Gratis
SO: Win95/98/NT/ME/2000/XP
Tamaño: 2.3 MB

BAJAR: http://www.kewnode.com/public/files/webtutorial/scriptmaster.zip

eva2014
12/06/2008, 14:22
mira como principal consejo

Siempre docuemten el codigo, por mas facil que paresca, cuando el sistema se hace mas grande es mas facil acordarce que quisieron hacer hace 3 meses atras.

segundo consejo no ahorren palabras en el nombre de las variables y metodos, mas bien usen nombres bien descriptivos.

los scrip te base de datos siempre guardenlos, lo mejor es guardalos a modo de scrip increnmental de forma que si corremos alguna modificacion podamos volver a la version anterior

Stored procedures

si exixte
dropearlo
y volver a correrlo con las modificaciones

funciones lo mismo

si se programa con orientacion a objetos tratar de no usar mucho la sentencia INSTANCE OF porque vuelve muy dificil de mantener el codigo.

tratar de no repetir codigo

tratar de no usar if anidados en el caso de ser muchos reemplazar por un SELECT CASE que hace que es codigo sea mas eficiente y facil de mantener

tratar de no realizar muchas conecciones a la base de datos, es menos costoso traer toda la info de una que estar llendo a cada rato a buscarla, osea por ejemplo traer todos los datos de cliente en vez de ir a buscar primero la dir, depues el tel y asi.

bueno espera que le alla servido, si se me ocurre algun otro tip mas lo pongo despues

AxeTouch
20/06/2008, 11:11
O_O.
Recien veo este TH.

Bueno de mas esta decir Enkapzulada q dia a dia se ven muy buenos aportes tuyos.
Muchisimas Gracias.

Lastima q yo sepa poco poco sobre este tema, lo mismo me pondre a practicar.

Saludos.

:)

PD: No desvirtuar por favor. (el q desvirtua se va suspendido)

Enkapzulada
20/06/2008, 17:34
O_O.
Recien veo este TH.

Bueno de mas esta decir Enkapzulada q dia a dia se ven muy buenos aportes tuyos.
Muchisimas Gracias.

Lastima q yo sepa poco poco sobre este tema, lo mismo me pondre a practicar.

Saludos.

:)

PD: No desvirtuar por favor. (el q desvirtua se va suspendido)

Muchisimas gracias Axe!!
Los que vayan agregando al th, los voy subiendo en el primer posta, asi es mas comodo ! =)


Besos!

n3k_lp
26/06/2008, 21:31
Edito porque me acabo de dar cuenta que era desvirtuar.. aunque me sigue causando =P

vofijatee
27/06/2008, 10:21
Algo totalmente fundamental:


http://en.wikipedia.org/wiki/De_Morgan%27s_laws


"Las leyes De Morgan"


In logic, De Morgan's laws or De Morgan's theorem are rules in formal logic relating pairs of dual logical operators in a systematic manner expressed in terms of negation. The relationship so induced is called De Morgan duality.

not (P and Q) = (not P) or (not Q)
not (P or Q) = (not P) and (not Q)
De Morgan's laws are based on the equivalent truth-values of each pair of statements.

The law is named after Augustus De Morgan (1806–1871)[1] who introduced a formal version of the laws to classical propositional logic. De Morgan's formulation was influenced by algebraisation of logic undertaken by George Boole, which later cemented De Morgan's claim to the find. Although a similar observation was made by Aristotle and was known to Greek and Medieval logicians[2], De Morgan is given credit for stating the laws formally and incorporating them in to the language of logic. De Morgan's Laws can be proved easily, and may even seem trivial.[3] Nonetheless, these laws are helpful in making valid inferences in proofs and deductive arguments.

n3k_lp
29/06/2008, 17:37
Bueno, ahora hago un aporte enserio xD
Antes de que sepan leyes de morgan tendrían que saber las Operaciones Lógicas:

Una proposición es una oración con cierto valor de verdad (V o F) o mejor dicho (1 o 0). Ejemplo:

(P): Dos mas dos es cuatro. <=== Puede decirse si es verdadero o falso

(R): Maria mermelada. <=== NO es una proposición, ya que no podemos deducir su valor de verdad.



-------------------------------------------
Operación NOT (Se nota ¬):
Es negar la proposición. Invertir su valor de verdad.

(P): Maria tiene hijos
¬(P): Maria no tiene hijos

¬P

P =
0 1
1 0


-------------------------------------------
Operación AND (Se nota ^):
Su valor de verdad es V solo si ambas proposiciones son verdaderas.

Maria tiene hijos y Juan es casado
(P): Maria tiene hijos
(Q): Juan es casado

P^Q

P Q =
0 0 0
0 1 0
1 0 0
1 1 1


-------------------------------------------
Operación OR (Se nota v):
Su valor de verdad es V si por lo menos una de las proposiciones es verdadera.
Maria tiene hijos o Juan es casado
(P): Maria tiene hijos
(Q): Juan es casado

PvQ

P Q =
0 0 0
0 1 1
1 0 1
1 1 1

--------------------------------------------
Ahora que ya saben esto comprobemos las leyes de morgan que postearon antes:

not (P and Q) = (not P) or (not Q)

Construimos la tabla de verdad. Ambos resultados (color amarillo en la tabla) tienen que coincidir en todas sus posibilidades para que la igualdad sea verdadera (color verde).


¬(P^Q) <=> (¬P)v(¬Q)
1 0 0 0 __1__ 1 0 1 1 0
1 0 0 1 __1__ 1 0 1 0 1
1 1 0 0 __1__ 0 1 1 1 0
0 1 1 1 __1__ 0 1 0 0 1


Ambas operaciones coinciden, por lo tanto, la igualdad es verdadera.


not (P or Q) = (not P) and (not Q)

(Construimos la tabla de verdad)


¬(PvQ) <=> (¬P)^(¬Q)
1 0 0 0 __1__ 1 0 1 1 0
0 0 1 1 __1__ 1 0 0 0 1
0 1 1 0 __1__ 0 1 0 1 0
0 1 1 1 __1__ 0 1 0 0 1

Ambas operaciones coinciden, por lo tanto, la igualdad es verdadera.
-----------------------------------------

Bueno, y después tienen otras operaciones lógicas pero tienen otros usos (binarios y puertas lógicas) que no vienen al caso, pero les digo básicamente como son:



---------------------------------------
Operación NOR (es la inversa de la operación OR)

P Q =
0 0 1
0 1 0
1 0 0
1 1 0


----------------------------------------
Operación NAND (inversa de la operación AND)

P Q =
0 0 1
0 1 1
1 0 1
1 1 0


---------------------------------------
Operación XOR (OR exclusivo)

P Q =
0 0 0
0 1 1
1 0 1
1 1 0


---------------------------------------
Operación NORX o XNOR (inversa de XOR)

P Q =
0 0 1
0 1 0
1 0 0
1 1 1

---------------------------------------

Espero haya servido!

Zeck
29/06/2008, 19:05
http://img116.imageshack.us/img116/8126/visualbasiceb7.jpg


Yo Este Año Me Anoté En Un Colegio Industrial Orientado a Informática.. y Veo Pura Programación En Visual Basic... Comento Que Me Anoté En El Último Año Sin Hber Echo Los Anteriores Porque Me Cambié De Escuela....

Iwal La Llevo Como Puedo. Pero Me Interesó El TH

Saludos!

ZecK

acidburn
29/06/2008, 19:33
http://img116.imageshack.us/img116/8126/visualbasiceb7.jpg


Yo Este Año Me Anoté En Un Colegio Industrial Orientado a Informática.. y Veo Pura Programación En Visual Basic... Comento Que Me Anoté En El Último Año Sin Hber Echo Los Anteriores Porque Me Cambié De Escuela....

Iwal La Llevo Como Puedo. Pero Me Interesó El TH

Saludos!

ZecK

Muy bueno ese pizarron ya lo habia visto( supongo que como firma tuya) y me había reido ^^.

DeathIceBlood
02/09/2009, 00:05
Mi consejo.. llevar un estructurado prolijo en la lineas de codigo. Eso de ahorrarse una linea por ahí trae confusiones.

DeathIceBlood
02/09/2009, 00:08
Bueno, ahora hago un aporte enserio xD
Antes de que sepan leyes de morgan tendrían que saber las Operaciones Lógicas:

Una proposición es una oración con cierto valor de verdad (V o F) o mejor dicho (1 o 0). Ejemplo:

(P): Dos mas dos es cuatro. <=== Puede decirse si es verdadero o falso

(R): Maria mermelada. <=== NO es una proposición, ya que no podemos deducir su valor de verdad.


--------------------------------------------
Ahora que ya saben esto comprobemos las leyes de morgan que postearon antes:

not (P and Q) = (not P) or (not Q)

Construimos la tabla de verdad. Ambos resultados (color amarillo en la tabla) tienen que coincidir en todas sus posibilidades para que la igualdad sea verdadera (color verde).



Ambas operaciones coinciden, por lo tanto, la igualdad es verdadera.


not (P or Q) = (not P) and (not Q)

(Construimos la tabla de verdad)



Ambas operaciones coinciden, por lo tanto, la igualdad es verdadera.
-----------------------------------------

Bueno, y después tienen otras operaciones lógicas pero tienen otros usos (binarios y puertas lógicas) que no vienen al caso, pero les digo básicamente como son:


---------------------------------------

Espero haya servido!

juju eso lo vi en Matrematica Discreta y ahora lo veo en Arquitectura de Computadoras. Aclaro algo, en programacion no vas a usar mas que || (or) y && (and).

xXBeRSeKeRXx
02/09/2009, 08:44
Lindo TH, me hubiera venido bien cuando empece ^^...

Yo aporto una frase que una vez me dijo un profesor: "A programar se aprende programado", creo que no necesita explicación...

También sirve ver código realizado por otro para ver estructuras y el camino que usó para resolver un problema, ya que para una misma situación hay varias formas de resolverlas.

Esta práctica de lectura de código o scripts generados por otros también sirve para irse haciendo de un repositorio de aplicaciones que en algún futuro podemos necesitar.

Avenged
02/09/2009, 12:38
Interesante.. Interesante..

Lastima qe no sé nada de programacion, los veo como "extraterrestres" :p

Nunca es tarde para empezar .. dicen...?

MoLSTeeG
13/10/2011, 09:31
Para que vayan conociendo el perfil...

http://i34.tinypic.com/10icf3t.jpg