Autor
|
Tema: Digit0 DataBase 1.0 ... (Leído 5,074 veces)
|
NetStorm
Desconectado
Mensajes: 114
|
Hola chicos, Felices fiestas para todos ... En estas últimas fechas he posteado algunas preguntas y era justamente para terminar esta pequeña aplicación ... es una aplicación programada en VB.NET y trabaja con base de datos (access), el código comparado a los que he visto por allí es bastante sencillo y básico(se aceptan sugerencias y ... material bibliográfico que aumente mis conocimientos ), perfecto para los que iniciais en VB.NET y pues que decirles, no es algo complejísimo, para los que queraís aumentarle código pues les aviso que hay mucha chamba con la validación, es decir para que "x" textbox acepte esto o lo otro, o se verifique esto y asi ... muchísima chamba ... y por lo demas creo que todo esta en orden y la idea es buena. Este es mi primer aporte "decente" como lo digo yo, despues del AreStart ... y bueno espero jalones de orejas porque aprenderé mucho de ellos. http://www.fileden.com/files/2006/10/25/316830/Digit0_DataBase_1.0.rarAh!!!, me olvidaba, para los que hayais visto la aplicación y son ya veteranos en esto, ¿de que manera puedo proteger la base de datos, puesto que se encuentra en el mismo nivel de la aplicación?, no le veo sentido, puesto que cualquier intruso podría modificarla y hacer desmanes ¿sugerencias? Nu se vayan sin comentar ... tus comentarios, críticas y mentadas son importantes para mejorar.
|
|
« Última modificación: 29 Diciembre 2009, 22:33 pm por Xhushito »
|
En línea
|
|
|
|
raul338
Desconectado
Mensajes: 2.633
La sonrisa es la mejor forma de afrontar las cosas
|
Primero, Cuando re-distribuyas trata de que todo funcione, acabo de ejecutar el source y me doy cuenta de que "admin"-"admin" no funciona jeje.... Para los que prueben el source, logueen con uno de estos usuarios user: Eadmin o Madmin pass: admin Ahora lo seguire viendo, pondre mis "observaciones" aca [OBSERVACIONES]- Activa comprobacion de instancia previa: Sin querer ejecute 2 veces el ejecutable, y me salio 2 veces la pantalla de login, tengo entendido de que una vez que uno trabaje en una base de datos en access, otro debe esperar para modificarla. Si se loguean 2 a la vez, ¡PUM! algo inesperado pasará jeje.
- Buena estrategia para agregar items: Es verdad, muy buena e ingeniosa esa estrategia para "aprovechar todos los espacios", pero aun asi, se puede optimizar
- No uses controles en la capa de Datos! Las funciones de consulta reciben controles de WIndows Forms como parametros, NO DEBE SER ASI!!! Gastas memoria copiando control por control, imagina que vas a pasar ese proyecto a uno de consola, tendrias que re-armar media clase! Y si fuera para web-services, matate! Usa clases, o variables simples. Ej: BuscarEmpleado(Codigo as String) nada mas... jeje
- Reutiliza los formularios: Tienes un formulario para agregar una cosa, y otro para editarlo. Podrias usar uno solo para las 2 cosas, usando propiedades, etc, Ya que el formato es el mismo, te ahorras un poco de codigo y espacio en memoria
- Agrega foco al teclado: Hay gente que es mas rapida usando solo el teclado que con el teclado y el mouse. Pero tu aplicacion no tiene soporte para ir presionando Enter, tab, o incluso las flechas jeje. Deberias ponerlo. Hay lugares donde practicamente no trabajan con mouse
Hasta ahora esas son mis observaciones. En todo lo demas esta bien, muy bueno para ser tu primera aplicacion, y el diseño de la portada me gusto jeje
|
|
« Última modificación: 29 Diciembre 2009, 22:32 pm por raul338 »
|
En línea
|
|
|
|
diego_lp
Desconectado
Mensajes: 180
In a free world, who needs gates and windows?
|
Hola, primero que nada felicitaciones por la aplicacion! Sobre cómo proteger la base de datos en access lo mas simple y practico (y por ende lo menos seguro) pero que al menos servirá para que ningun curioso te modifique los datos directamente con un simple "doble click" es ponerle contraseña, si no sabes como hacerlo podes buscar en google "base de datos access contraseña" o algo asi y deberás conseguir varios articulos que te lo expliquen paso a paso luego en el string de conexion de la base de datos escribes: "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Application.StartupPath + "\db.mdb;Jet OLEDB:Database Password=pass;" obviamente cambias db.mdb por el nombre de tu base de datos y pass por el password que le cargaste a la base de datos. El programa esta prolijo, solo te puedo hacer algunos comentarios personales ya que no soy un experto como para decirte lo que tienes que hacer : Algo que no me gusto es que en los datagridviews aparecen las columnas con los nombre originales de las mismas en sus respectivas tablas en la base de datos (ésto ademas de que no queda muy prolijo podria traerte algunos problemas desde el punto de vista de la seguridad, ya sea en access, sql server o cualquier otro) Otra cosa que no me gusta, es que uses maskedtextbox`s en lugar de usar simplemente textbox`s y validarlos desde el codigo (ésto es algo totalmente personal, va en el gusto de cada uno, no estoy diciendo que este mal ) Lo que si me gusto es el diseño (la parte gráfica) es decir, el icono, la imagenes, y los colores que utilizastes. Tambien me gusto que hallas creado funciones para la conexion y manipulacion de la base de datos, ésto es muy práctico y te quitará mas de un dolor de cabeza. En fin el programa me pareció bastante prolijo aunque creo que le faltan algunos retoques para que sea la 1.0 (claro que eso lo decides tu) jeje De nuevo felicitaciones por el programa, espero que sea el principio de mucho mas y que te haya servido lo de la base de datos. Saludos.
|
|
|
En línea
|
Los programadores hicimos un pacto con Dios, él no hace sistemas y nosotros no hacemos milagros!
|
|
|
NetStorm
Desconectado
Mensajes: 114
|
Ácidas críticas pero yo feliz, porque ya voy viendo la manera como programa "la gente" porque ando un poco perdidote por allí ... Raul338 tus críticas son precisas pero muy breves, algunas cosillas que mencionas desconozco como hacerlas, pero te agradezco mucho, seguro quer buscaré en google, pero de todos modos trata de darnos más pistas jajaja ... Gracias!! Diego_1p Excelente tío!, si sabía eso de la contraseña, lo que no sabía es como hacer que mi formulario introdujese la contraseña, incluso le pregunte a un inge y me dijo: nu sé!!!n en fin, gracias, ahora si voy a hacer aplicaciones seguras, otro detallito si es que me lees, ¿lo de las columnas del datagriedview son similares a las de mysql?, porque cuando yo trabajaba con mysql (entorno gráfico) hacía mis consultas y justamente le asignaba un "alias" para borrar el nombre original que extraía de la tabla, si es así entonces... Un ejemplo please Raul338, que bueno que te gustó la portada, de algo tenía que servirme el título como "diseñador gráfico" ¿no crees? ... me siento halagado jajaja Bueno, y por lo demás me fijo que 52 personas han entrado a leer esto, no esperaba tanta gente ... pero a los pocos que hayais hurgado el código al menos decidme: "bien o mal" ... no cuesta nada. Espero no hagan llorar a mi conejo ...
|
|
« Última modificación: 29 Diciembre 2009, 22:36 pm por Xhushito »
|
En línea
|
|
|
|
raul338
Desconectado
Mensajes: 2.633
La sonrisa es la mejor forma de afrontar las cosas
|
Son criticas constructivas (acidas? ) y son las que todos cometen en sus inicios (yo he cometido HORRORES haciando aplicaciones, y uno las sigue haciendo, sin darse cuenta) Los consejos que te di, son cosas que uno va aprendiendo por "indagar", hay tutoriales que lo enseñan, otros no, y si te pones a experimentar con las propiedades y lees las descripciones de IntelliSense (eso que te describe cada cosa mientras vas escribiendo) te daras cuenta de todo lo que puedes hacer, y que nadie te lo dice En cuanto al nombre de las columnas (eso no lo vi porque no lo ejecute ) puedes hacer que el dataGridView en tiempo de diseño, o sea, marcale las columnas antes de que se carguen por codigo y despues quedaran con esos nombres
|
|
|
En línea
|
|
|
|
diego_lp
Desconectado
Mensajes: 180
In a free world, who needs gates and windows?
|
Para cambiarle el nombre a las columnas del datagridview tienes que usar la siguiente propiedada del objeto luego de cargar los datos:
dgv.Columns(1).HeaderText = "Nombre"
donde dgv es el nombre del datagridview y 1 es el numero de columna a la cual le quieres cambiar el nombre, recuerda que la primera es la 0. Saludos.
|
|
|
En línea
|
Los programadores hicimos un pacto con Dios, él no hace sistemas y nosotros no hacemos milagros!
|
|
|
NetStorm
Desconectado
Mensajes: 114
|
Gracias Diego por tus aportes ... y algunas novedades : * Me lo he pensado y entonces vale! Se viene la versión 2.0 Esta última tendrá soporte con MySQL, lástima para los que trabajeis con Access. (Si me animo a una versión posterior, incluire los dos motores de base de datos para que podais elegir con cual de ellos trabajar ... esperemos se haga realidad)... * Otras novedades, pues ... trabajaré en lo de la validación ya que en la versión 1 esta hecho un mamarracho, y no es porque no haya querido, sino más bien por el tiempo, pero esta bien para ser la 1.0 ... * Algunas innovaciones que tendré en cuenta de los amigos que me comentaron ... asi que si no comentaste ¿que esperas?, todavía queda tiempo, para que de ese modo tu voz sea escuchada! Gracias Diego, incluire tus mejoras en la versión 2.0 Thank You, Buen día y Feliz Año!!!
|
|
|
En línea
|
|
|
|
|
|