Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Alex

#1101
Visual Basic / Variables limites y tipos
Octubre 25, 2012, 05:42:15 PM
Lo vi en un libro y me gustó, quería compartirlo con la gente de underc0de así que aquí está.
Esta es la tabla de clasificacion de las variables de vb

Tipo               tamaño              rango

Código: text
Byte               1 byte                0 a 255
Integer           2 bytes               -32768 a 32767
Long               4 Bytes              -2147 a 2147483647
single             4 bytes               -3,042823E38 a 3,042823E38
Double            8 bytes              -1,79769313486232 a 1,79769313486232
currency          8 bytes              -922337203685477,5808 a 922337203685477,5808
String              1 byte por caracter   0 a 65.535 caracteres
object             4 bytes                   cualquier tipo de objeto
boolean           2 bytes                  true o false
date                8 bytes                  1/1/100 a 31/12/9999
variant(con num)16 bytes               cualquier tipo de dato numerico
variant (con car)22 byte + 1 byte/car cualquier tipo de dato


salu2
#1102
1.8 como guardar y compilar proyectos (Visual) de exe

para guardar un proyecto vas a archivo guardar como
y para compilar vas a archivo generar Proyecto.exe

muy bien. Proximamente Aprende VB6 desde 0000.000 by alexmanycool TOMO 2
temas a tratar: protectores de pantalla, Mas sobre codigo en exe, Movimiento, DLLs OCX

recuerden también que Alexmanycool era mi viejo nombre, ahora soy Alexander1712 xD

salu2 y espero que les alla servido a los principiantes el TOMO1

Esta obra es publicada bajo una licencia You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#1103
1.7-msgbox, inputbox, suma, resta , multiplicacion y division entre variables, primer ejersicio (codigo de fuente) de exe

bueno esta parte es interesante porque esta bueno lo de los msgbox

que es un msgbox: un msgbox es uno de esos cuadros que se parecen a los de alerta, que mejor que verlo para explicarlo.

abran el vb6, depues exe estandar y pongan un boton, denle doble clic

Código: text
Private Sub Command1_Click()

End Sub


agreguemos un msgbox y un input box

Código: text
Private Sub Command1_Click()
MsgBox "hola CPH", vbCritical, "msgggg"
InputBox "escribir ya ya ya tu codigo", "CPH", "aqui­"
End Sub


y ejecutenlo F5

el msgbox es uno de los codigos mas facil.

es de esta forma

MsgBox "texto", Imagen, "titulo"

las imagenes son:

vbCritical (la crus roja)
vbInformation (informacion)
vbExclamation (el signo de esclamacion)
vbQuestion  (signo de pregunta)

el input box es otra cosa, como te deja escribir, se puede guardar esa informacion
de la siguiente forma
ademas del boton ponemos un label

declaramos variable para guardar la info, y usamos en el inputbox

Código: text
dim alex as integer
Private Sub Command1_Click()

alex = InputBox "escribir tu nombre", "tu nombre", "aqui­"
label1.caption = alex

End Sub


con esto hicimos que alex sea igual al texto que ingresamos
y despues que ese texto se mueste en el label.

pruebenlo F5

ahora pasemos a algo que tambien sirve. la suma y division de variables, es facil

con lo que ya tenemos hagamos lo siguiente

borremos ese codigo anterior y hagamos doble clic en el boton
declaremos dos variables para las cuentas.

Código: text
dim a as integer
dim b as integer
Pribate Sub Command1_Click()

a= 5
b=12
label1.caption = b - a

end sub


esto restarí­a al valor de b el valor de a  lo mostraria en el label.

pruebenlo F5

Código: text
dim a as integer
dim b as integer
Pribate Sub Command1_Click()

a= 5
b=12
label1.caption = b + a

end sub

esto lo sumaría y lo mostrarí­a

Código: text
dim a as integer
dim b as integer
Pribate Sub Command1_Click()

a= 5
b=12
label1.caption = b / a

end sub


esto lo multiplicaria

Código: text
dim a as integer
dim b as integer
Pribate Sub Command1_Click()

a= 5
b=12
label1.caption = b - a

end sub


esto lo dividiria. Para las otras operaciones te las tendras que ingeniar.

Muy bien, ahora biene el ejercicio.
La idea es que el codigo tiene que ser corto y eficaz.

El ejercicio consiste en que inserte un numero y me haga la suma o resta o multiplicacion o division correspondiente que seleccione yo. No les digo que componentes deben usar,
Eso se los dejo a su cuenta.

las respuestas posteenlas o mandenmelas por mp, las mejores respuestas se pondran abajo.
salu2
#1104
1.6- mejorando nuestro primer programa con bucle (codigo de fuente) de exe

esto fue lo ultimo:

Código: text
Dim alex As String

Private Sub Command1_Click()

alex= "123456abc"
if text1.text = alex then
label1.caption= "correcto
else
label1.caption= "incorrecto"
end if

End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub


con los componentes 1 boton, un label y un text.
a continuacion lo mejoraremos.
en esta parte agregaremos un timer mas y un boton mas, tambien un nuevo formulario.
es importante aprender como poner nuevos formularios y como hacer que pase de
un formulario al otro y como hacer que con un boton en el formulario 1
pase algo en el formulario 2.

primero que nada agreguemos un timer y demosle doble clic sobre el para
escribir su codigo.

aparecera esto:

Código: text
Dim alex As String

Private Sub Command1_Click()

alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
Else
Label1.Caption = "incorrecto"
End If

End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()

End Sub


ahora aremos que cuando  sea correcto titile.
para esto agregaremos una variabless llamada visible.

Código: text
Dim alex As String
dim visibless as integer  '(en integer porque solo seran numeros)

Private Sub Command1_Click()
alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
Else
Label1.Caption = "incorrecto"
End If
End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()

End Sub


ahora modificaremos un poco el correcto de nuestro code asi­ se activa el timer, si no
no ubiera funcionado.

Código: text
Dim alex As String
dim visibless as integer

Private Sub Command1_Click()

alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
timer1.Interval = 1000 '(agregado, esto hace que el timer tarde 1 segundo, para hacerlo de vuelta)
Else
Label1.Caption = "incorrecto"
End If

End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()

End Sub
listo ahora lo activamos. ahora le toca al timer hacer su trabajo
Código: [Seleccionar]
Dim alex As String
dim visibless as integer

Private Sub Command1_Click()

alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
timer1.Interval = 1000
Else
Label1.Caption = "incorrecto"
End If

End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()

if visible=1 then
label1.caption= "correcto"
visibless=0

else

label1.caption= ""
visibless=1
end if

End Sub


bueno con esto hacemos que cada 1 segundo sea nada y cada otro sea correcto.

probemos F5

inserten el code correcto (123456abc) y veamos. titila pero muy lento
entonces cambiemosle el interval por algo menor.

Código: text
Dim alex As String
dim visibless as integer

Private Sub Command1_Click()
alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
timer1.Interval = 500          (ahora es 500, medio segundo)
Else
Label1.Caption = "incorrecto"
End If
End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()
if visible=1 then
label1.caption= "correcto"
visibless=0
else
label1.caption= ""
visibless=1
end if
End Sub


probemos F5 ¿queda bien no?

bueno ahora un nuevo formulario: vallan a proyect --> agregar formulario --> formulario
en la ventana que aparecio agreguemos un label. aprieten control+R en lo que aparecio, seleccionen
el form1 con dobleclic y aparecera el formulario con el text y los botones
agregaremos 1 mas y le damos doble click y aparecera esto

Código: text
Dim alex As String
Dim visibless As Integer

Private Sub Command1_Click()
alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
Timer1.Interval = 500
Else
Label1.Caption = "incorrecto"
End If
End Sub

Private Sub Command2_Click()
-----------------------------> el boton 2
End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()
If visibless = 1 Then
Label1.Caption = "correcto"
visibless = 0
Else

Label1.Caption = ""
visibless = 1
End If

End Sub


aquí­ agregaremos el code para pasar al form2

Código: text
Dim alex As String
Dim visibless As Integer

Private Sub Command1_Click()

alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
Timer1.Interval = 500
Else
Label1.Caption = "incorrecto"
End If

End Sub

Private Sub Command2_Click()

form2.show -----> con esto lo mostramos
form1.visible = false ---> con esto hacemos que la propiedad visible del formulario1 sea falsa osea que no se ve

End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
End Sub

Private Sub Timer1_Timer()

If visibless = 1 Then
Label1.Caption = "correcto"
visibless = 0

Else

Label1.Caption = ""
visibless = 1
End If

End Sub


ahora modificaremos esto para que no se pueda apretar hasta que no insertes la clabe y le pondremos un nombre al boton

Código: text
Dim alex As String
Dim visibless As Integer

Private Sub Command1_Click()
alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
command2.enabled = True ---> con esto logramos que el boton 2 si este disponible
Timer1.Interval = 500
Else
Label1.Caption = "incorrecto"
End If
End Sub

Private Sub Command2_Click()
form2.show
form1.visible = false
End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
command2.caption = "continuar" ---> con esto hacemos que el boton 2 tenga ese nombre
command2.enabled = False ----> con esto logramos que el boton no este disponible (al cargar el formulario)
End Sub

Private Sub Timer1_Timer()
If visibless = 1 Then
Label1.Caption = "correcto"
visibless = 0
Else

Label1.Caption = ""
visibless = 1
End If

End Sub


probemoslo F5 y vean como actua el programa.
ahora translademos la informacion de un lado al otro

Código: text
Dim alex As String
Dim visibless As Integer

Private Sub Command1_Click()
alex = "123456abc"
If Text1.Text = alex Then
Label1.Caption = "correcto"
command2.enabled = True
Timer1.Interval = 500
Else
Label1.Caption = "incorrecto"
End If
End Sub

Private Sub Command2_Click()
form2.show
form1.visible = false
form2.label1.caption= "123456abc" ---> traslacion de informacion
End Sub

Private Sub Form_Load()
Command1.Caption = "OK"
Label1.Caption = "inserte su codigo"
Text1.Text = ""
command2.caption = "continuar"
command2.enabled = False
End Sub

Private Sub Timer1_Timer()
If visibless = 1 Then
Label1.Caption = "correcto"
visibless = 0
Else

Label1.Caption = ""
visibless = 1
End If

End Sub


muy bien fijemosnos en la linea traslacion de informacion
primero aclaramos el formulario de que hablamos, esto solo se usa cuando
escribimos algo para otro formulario que no sea en el que estamos escribiendo.

Código: text
form2. esa es la aclaracion del formulario


al siguiente le decimos a la pc de que objeto hablamos, en este caso es un label

Código: text
form2.label1 (le aclaramos que es el label1 del cual hablamos


y por ultimo le decimos de que propiedad del label 1 en el fomulario 2 hablamos.

Código: text
form2.label1.caption (propiedad caption)


y le asignamos el valor.

probemoslo, F5
#1105
1.5- Estructuras de decicion (codigo) de exe

bueno, ahora biene una de las cosas mos lindas :)
no pero es algo que sirve de mucho mucho mucho mucho (mucho 100 veces mas)

las estructuras de decicion son bloques de codigo, usados para que la maquina "Decida que hacer"

un de las mas usadas, que sirve para mucho es el IF/End if, el bloque if hace una pregunta
por decirlo asi:

Código: text
if algo = 1 then
else
end if


esto significa:

si algo es igual a 1 entonces

si no

fin del if

esto nos sirve mucho con las variables, porque pregunta si es igual a algo

muy bien, los comparadores son:

= igual
menor < mayor
mayor > menor
<> distinto

osea podemos hacer esto:

Código: text
if algo = 1 then (si algo es igual a 1 entonces)

if algo < 1 then (si algo es menor a 1 entonces)

if algo > 1 then (si algo es mayor a 1 entonces)

if algo <> 1 then (si algo es distnto a 1 entonces)


otra de las estructuras es el FOR / Next

Código: text
for j = 1 to 30  (j es igual a 1 y lo que le pusimos se hara hasta que j sea =30)

next (fin de for)


muy bien, esto lo explicaremos un poco mejor, el for next sirve para un "bucle", asi se le llama
porque se reinicia si j no es = 30,
si nosotros le ponemos en el medi un codigo para que le sume 1 a un label el label quedaria en 30, porque cada ves que termina le suma 1 a la variable j (puede tener otro nombre) mientras
que no sea = 30

este es el ejemplo:

Código: text
for I=1 to 3
  label1.caption = I
next


lo hace la primera ves,

y muestra en el label lo que es I,

termina y se fija si I es = 3
como I no es igual 3 si no que I ahora es = 1 (y le sumo 1)

empieza de nuevo

y muestra en el label lo que es I,

termina y se fija si I es = 3  y no lo es, entonces le suma 1 y vuelve a empezar

empieza de nuevo

y muestra en el label lo que es I,

termina y se fija si I es = 3  y esta ves si, entonces sigue con lo que siga, no se repite mas

muy bien es todo por ahora, hay mas estructuras de decicion pero las mas utilizadas y simples son estas, despues mostrare las otras

ahora veremos como enganchar las variables con los objetos y las estructuras de decicion:

primero abrimos Visual Basic 6.0 y le damos a exe estandar


y colocamos un boton, un text, un label

la cosa se complica.

le damos doble clic al formulario, no al boton, si no al formulario (la ventana).
esto es cuando se carga el formulario, entonces aremos esto
declaramos la variable

Código: text
dim alex as string

Private Sub Form_Load()
End Sub


despues le agregamos el codigo para que el label tenda algo escrito:

Código: text
dim alex as string

Private Sub Form_Load()
  label1.caption= "inserte su código"
End Sub


y ahora le agregamos el codigo para que el boton diga algo que no sea command button

Código: text
dim alex as string

Private Sub Form_Load()

command1.caption = "OK"
  label1.caption = "inserte su codigo"
End Sub


y ahora para que el textbox no diga nada (que no diga text1)

Código: text
dim alex as string

Private Sub Form_Load()
command1.caption = "OK"
  label1.caption = "inserte su código"
  text1.text = ""
End Sub


ahora probemos a ver como queda F5

muy bien, funciona a la perfeccion
queda lindo y se entiende lo que hay que hacer.
muy bien, ahora cerramos esa ventana y le damos click al boton para poner el codigo del boton.
va a aparecer esto:

Código: text
Dim alex As String

Private Sub Command1_Click()
End Sub

Private Sub Form_Load()
  Command1.Caption = "OK"
  Label1.Caption = "inserte su código"
  Text1.Text = ""
  End Sub


ahora al boton le agregaremos una estructura de desicion (el IF)
para que verifique si el codigo ingresado es correcto, comparandolo con la variable, pero antes tenemos que poner el valor de la variable.

Código: text
Dim alex As String

Private Sub Command1_Click()
  alex= "123456abc"
End Sub

Private Sub Form_Load()
  Command1.Caption = "OK"
  Label1.Caption = "inserte su codigo"
  Text1.Text = ""
End Sub

ahora prosigamos con la estructura

Código: text
Dim alex As String

Private Sub Command1_Click()
  alex= "123456abc"
  if text1.text = alex then
  label1.caption= "correcto
  else
  label1.caption= "incorrecto"
  end if
End Sub

Private Sub Form_Load()
  Command1.Caption = "OK"
  Label1.Caption = "inserte su código"
  Text1.Text = ""
End Sub


con esto el programa se fija si lo insertado en el text box es igual a la variable alex
osea si es 123456abc. Si el text box dice eso, el label 1 ba a decir "Correcto"
y si no va a decir incorrecto.
terminamos por ahora.
#1106
1.4- relacionar las variables con objetos (codigo) de exe

esta parte sera mas chica...

muy bien, en esta parte veremos ralacion de variables, como usar variables con objetos

muy bien como aprendimos las variables de declaran.

abran Visual basic y denle al boton exe estandar, porque en esta arte se habla de exe
por eso en el índice dice al final de exe, pronto avansaremos a de dll o cosas asi­.

en el nuevo proyecto vaso a poner un boton y una etiqueta label.

denle doble click asi programamos lo que hace el boton.

declaremos una variable, recuerden, hay dos formas, nosotros usaremos 1 la de poner arriva

les aparecio esto:

Código: text
Private Sub Command1_Click()

End Sub


donede estan los asteriscos (no aparecen) hay que declarar la variable

como era? pos así­: Dim nombre as tipo de variable

Código: text
dim alex as integer
Private Sub Command1_Click()
End Sub


muy bien, recordemos lo primero que haci­amos cuando aprendimos lo primero.

label1 . propiedad, esto siempre se ba a usar, les recomiendo estudiar las propiedades. o
con el tiempo aprenderan, igual las pueden ver en la ventana.

caption era la de escritura. entonces aremos que se muestre en el label, el valor de la variable:

Código: text
Dim alex as integer

Private Sub Command1_Click()
label1.caption= alex
End Sub


con esto vemos que nos va a mostrar el valor de alex, probemoslo. F5
denle al boton y vean que el label dice 0
esto es porque la variable de entrada tiene ese valor (solo la integer)
muy bien, esta ves le damos otro valor:

Código: text
dim alex as integer

Private Sub Command1_Click()
alex = 123
label1.caption = alex
End Sub


ahora ejecutemos F5 le damos al boton y veremos que nos devuelbe el valor 123

ahora hagamos un ejersicio. resuelvan el error de estos:

1)
Código: text
dim alex as integer

Private Sub Command1_Click()
alex = 123a
label1.caption = alex
End Sub


2)
Código: text
dim alex as double

Private Sub Command1_Click()
alex = 123.1
label1.caption = alex
End Sub


3)
Código: text
dim alex as integer

Private Sub Command1_Click()
alex = true
label1.caption = alex
End Sub


respuestas

1) la primer posibilidad era sacarle la a (alex = 123 "a")

la segunda era cambiarle la variable a string: dim alex as string

2)
esta, cuidado, porque si le cambiamos la variable a string, esto 123.1 no se tomaria como di­gito asique hay que cambiarle solo el valor asignado en ves de 123.a le podriamos poner cualquier digito con .

3) en esto , lo mejor es cambiar la variable a boolean

muy bien, aprendimos como se relacionan las variables con los objetos.

salu2
#1107
1.3-aprendiendo un poco sobre las variables

bueno en esta parte veremos VARIABLES, una gran palabra

definicion: las variables son como cajas donde se guarda informacion, hay para distintas cosas.

las que vamos a ver (recuerden el titulo  prendiendo un POCO sobre...) son 4

Integer : es para los numeros (solo numeros) enteros

String : es para los caracteres ( abc125$#" )

Boolean: verdadero o falso

Double : numero con coma

estas variables se declaran arriva de todo o adentro de un objeto.

se declaran de esta forma:

dim X as varibla

x= nombre de la variable

variable= tipo de variable ejemplo double

las variables hay que usarlas cuando se nesecitan y hay que usar la que se nesecita, porque una integer pesa menos que una string, si vas a poner solo letras, usa la integer porque arias mas rapido y liviano tu software, ya que por cada variable se reserva espacion en la memoria.

estas una ves declaradas ya se pueden usar, pero hay siertas reglas, segun donde las declares

como ya dije las puedes declarar arriva de todo ej

Código: text
dim alex as integer
Private Sub Command1_Click()

End Sub


de esta forma, puedo usarlo para cualquier objeto que le ponga codigo, ejemplo si yo uso
esta variable en un timer y en un button
                       
Código: text
dim alex as integer

Private Sub Command1_Click()
alex = 1
End Sub

Private Sub Timer1_Interval()
alex = 1
End Sub


eso si se puede hacer, pero si yo en el caso de hacer click en un command y declararle la variable
adentro del command, NO LA PUEDO USAR EN OTRO OBJETO, porque si la declare en el command
con este code

Código: text
Private Sub Command1_Click()
dim alex as integer
alex=1
End Sub


y lo ejecuto, a la variable se le asigna 1 pero si despues hago clic sobre un timer
y uso la variable

manda un error y te finaliza el programa.

Aclaremos, LAS VARIABLES SE DECLARAN UNA SOLA VES

las variables, como ya e dicho, nos sirven para guardar informacion, un ejemplo es el anterior

Código: text
dim alex as integer

Private Sub Command1_Click()
alex = A
End Sub


al decir alex=A le estoy diciendo a la variable alex, que duarde ese valor.

pero si miramos bien, yo la declare mal, porque si digo integer, esto esta mal
porque integer es solo para guardar numeros, y me mandaria un error.

ahora para que esto no suceda, le podemos cambiar o el valor:

Código: text
dim alex as integer

Private Sub Command1_Click()
alex = 1                                 (aclaro, 1 no es la letra a, si no que es el numero 1)
End Sub


o le podemos cambiar la variable a Strings (para cualquier caracter)

Código: text
dim alex as string

Private Sub Command1_Click()
alex = a                               
End Sub


tambien a las variables se les puede dar valores, no solo de un digito o caracter, en el caso
de integer (variable para numeros) le podemos dar un numero mas alto.

Código: text
dim alex as integer

Private Sub Command1_Click()
alex = 12375416                               
End Sub


y a la variable string se le puede dar una combinacion loca.

Código: text
dim alex as string

Private Sub Command1_Click()
alex = agas12/6                               
End Sub


muy bien, hasta ahora aprendimos string e integer.

veremos ahora double.

Código: text
dim alex as double

Private Sub Command1_Click()
alex = agas12/6                               
End Sub


esto esta bien? pos no, declaramos que alex era double, entonces no puedo ponerle agas12/6  porque double es para numeros con coma pero no se escriben con coma, si no que con punto

10.2 esto es lo mismo que 10,2 pero para ponerle el valor ay que ponerlo con punto, porque puede generar errores (aveces)

Código: text
dim alex as double

Private Sub Command1_Click()
alex = 10.23                             
End Sub


muy bien, ahora nos queda boolean (verdadero o falso)

esto es facil, tiene solo dos valores verdadero o falso

ejemplo de verdadero

Código: text
dim alex as boolean

Private Sub Command1_Click()
alex = True                           
End Sub


ejemplo de falso:

Código: text
dim alex as boolean

Private Sub Command1_Click()
alex = false                           
End Sub
#1108
1.2- Empezando con lo basico (codigo)


bueno, en esta parte les explico como introducir un codigo a algunos objetos.

nuevo proyecto->Exe estandar

hagan un text box (al lado de la "A") en el formulario

y hagan un label ("A") y un boton (el de abajo del textbox)


muy bien, ahora hagan doble clic en el boton. Les aparecio el lugar de escribir el codigo.

observemos lo que hay.

Código: text
Private Sub Command1_Click()

End Sub


Command1_Click()  con esto la pc identifica que hablamos del botton 1

muy bien. recordemos las propiedades.  (si es necesario buelvan al tomo anterior)

la programacion en vb es facil, (a comparacion a C++) se trata de juntar las distintas cosas
que se aprende

muy bien en medio de

Código: text
Private Sub Command1_Click()

End Sub


se escribe el codigo.

empezemos a resolver un problema, el primero que se les impone, es que cuando alguien escribe algo en
el textbox (al lado de la "A") y apriete el boton, en el label1 ("A") les aparezca lo que se escribio
en el text.

es dificil para comenzar...

empesemos a pensar.

sepan, que cuando alguien escribe algo en un text, la informacion es guardada en la propiedad text

asique si alguien escribe algo aparece en la ventana de propiedades en el text (esto es cuando esta seleccionado el text,
ya que cada objeto tiene su propiedad.)

entonces como hacemos para sacar la info de la propiedad?

pues en vb6 se relacionan las propiedades con los nombres de los objetos.

el text1 es el nombre del textbox que creamos (el de al lado de la "A") que es donde se escribe

para saber que es lo que tiene guardado la propiedad se usa esto:

text1.text     (el textbox llamado text1 . y su propiedad)

Código: text
text1.text


muy bien cuando nosotros hicimos clic en el botton lo que escribamos ahora se ara cuando se apriete el boton

entoncespodemos hacer esto

Código: text
Private Sub Command1_Click()
text1.text
End Sub


esto no sirve, porque lo que hacemos es solo que verifique la propiedad text del text1.

pero podemos hacer esto

Código: text
Private Sub Command1_Click()
text1.text = "hola"
End Sub


entonces hacemos que al apretar el boton el text1 (con su propiedad text) sea igual a hola

pruebenlo, ejecuten el programa, ah pero me olvidr de decirles, para probar nuestro programa
hay que apretar f5

y denle al boton command 1

perfecto, ya tenemos la formula para saber que pasa con el text 1 (que se le escribe)

seria algo=text1.text (con eso hacemos que ese algo sea igual a lo escrito en el text1)


y cual era la propiedad para escribir en el label ("A")?, se las voy a recordar porque soy bueno

caption

entonces si decimos

label1.caption hablamos de la propiedad del label1

entonces hacemos esto

Código: text
Private Sub Command1_Click()
label1.caption = text1.text
End Sub


listo solucionado.

aprendieron lo basico de Codigo en vb6 (propiedades y objetos)
#1109
1.0 vb6 Intro Basica
                         
para la intro se las hago cortita, porque se que no les gusta leer mucho, por lo tanto intentare ser lo mas corto
posible...

Visual Basic 6.0 es una herramienta editor y compiladora del Lenguage Basic, pero con partes
de edicion visual, lo mas facil... Visual Basic 6.0 parte del grupo  visual studios (microsoft)

1.1 Empezando con lo basico (visual)

pues bien, como esto es para no conocedores vamos desde 0000

muy bien, abramos vb6...  al principio, de entrada, nos aparecera una ventana titulada nuevo proyecto:
en esta ventana tenemos para elegir, muchas opciones, exe estandar es lo que todos usan.
yo explico todo.

EXE estandar: genera un formulario para hacer una aplicacian comun

EXE active X: esto es una aplicacian, pero especial para controles active x (maneja multimedia)
esta opcion no se usa mucho, con el concepto basico nos alcanza

dll active x: esto es una parte pequeña de un programa, usada para ahorrar espacio en la memoria,
esta opcion nos sirve para hacer pedazos de programas, y de que sirve, pos nos sirve para que cuando
se carga el programa, no tenga que cargar todo el code, sino una parte, y a medida que se valla
nesecitando, se "ejecutan" por decirlo asi­ estos pedasitos.

control active x: esto se utiliza para crear componentes, los componentes son ejemplo los botones.

los asistentes: ya se sabe, son opciones que te facilitan ayuda para crear formularios
que no las usaremos, si no este tuto seri­a en vano

y las siguientes opciones, no se nesecitan y no tengo idea de para que sirven XD

ahora empezemos con un EXE (aplicacion comun)
asique denlen click a exe estandar.

ahora, les aparece un formulario, este sera nuestro ambiente de desarrollo de programa

a la izquierda veremos un menu, este nos muestra los componentes, botones, etiquetas, etc

muy bien, cada 1 cumple una funcion.

el cuadradito con un dibujito adentro es un Picture Box (donde se ponen imagenes)

la "A" es para crear una etiqueta denominada label, en esta se escribe algo para que se vea al
ejecutar el programa.

al lado de la "A" tenemos un cuadro de texto (textbox) este es un cuadro donde el usuario podra introducir informacion.

abajo hay un command button (boton) este es el que se aprieta y hace algo.

al lado hay un frame esto es como una ventana dentro del formulario.

abajo de esto hay un check box, en este se tilda con un V y este es para
encuestas o cosas por el estilo.

al lado hay otro que es casi igual se llama Option button, la unica diferencia es que estos pones tres, y solo uno
puede estar tildado, al tildar cualquiera de los tres, los otros se destildan, y
el checkbox no.

abajo del option button hay un list box, este puedes hacer una lista, y que el usuario
vala apretando sobre cada uno de los items y se seleccionen, ideal para base de datos.
(pronto se vera base de datos).

al lado hay otra cosa muy parecida al list box, el combo box. Este no se usa mucho, sirve en el caso de hacer un explorador
como MI PC. abajo hay 2 barras, como la de los buscadores, estas son obias para que funcionan, se las dejo a su vista.

abajo hay como un reloj. Este es el TIMER, bamos a aclarar bien este objeto porque hay muchas dudas.
esto tiene un interval, y hace lo siguiente. Cada X tiempo hace lo que le dijiste.
el tiempo se regula con la propiedad INTERVAL (a continuacion veremos las propiedades)
osea cada 1000 intervalos (equivalentes a 1 segundo) se hace lo que le dijiste.

estos son los objetos primarios. Hay mas que no explique, pero vallamos despacio,
pronto lo explicare.

para insertar uno de estos botones, tienes que hacer click sobre ahy y despues
adentro del formulario haces como si dibujaras un cuadrado con el paint.

bueno, una ves puesto , seleccionemoslo haciendo click sobre el, veran como se selecciona.
ahora vamos al menu ver->ventana de propiedades.
esto nos hara aparecer una ventana nueva.
(a la ventana propiedades, seleccionen la pestaña alfabetica)

explico las propiedades:

los labels ("A") tienen una propiedad nombre, seguramente es la primera
esta indica el nombre que se le asigna al objeto, por ahora no es nescesario cambiarlo
si quieren cambienselo, da lo mismo.

lo siguiente es alignment, si le hacen clic veran que les aparecio un boton con una flechita para abajo. haganle click.
apareceran 3 opciones, esto es porque significa la alineaceon que tiene la letra en el label.

apparance eso no es muy cambiante, lo que hace es cambiarle la forma al label

AutoSize esto es para que si está en true, el label se pone al tamaño de las letras, osea si
haces un label de 10 metros y le escribis 2 letras, no quede semejante espacio, si no que se
ajusta.

Back color: es el color que tiene el fondo

border style: les da vorde o no al label

caption: hay pueden modificar el texto, label1 por algo, y eso aparecera en el label

font: es el formato de la letra.

Fore color: es el color de la letra.

visible: es si esta visible o no.

hice algunos, no todos, si no los mas importantes, algunos se repiten en otros objetos, otros no

en el objeto textbox (al lado de la "A") no existe el label sino que en lugar de llamarse label se llama text

y en el timer hay algo interval, este numero es cambiado por 1000 y cada 1 segundo hara lo que
pida el codgo.

esto es lo visual de esta parte, en el segundo tomo les explicare mas cosas.

salu2
#1110
INDICE

1.0- VB6 INTRO BASICA
1.1- Empezando con lo basico (visual) de exe
1.2- Empezando con lo basico (codigo de fuente) de exe
1.3- Aprendiendo un poco sobre las variables
1.4- relacionar las variables con objetos (codigo) de exe
1.5- Estructuras de decicion (codigo) de exe
1.6- mejorando nuestro primer programa con estructura (codigo de fuente) de exe
1.7- Msgbox, inputbox, suma, resta , multiplicacion y division entre variables, primer ejersicio (codigo de fuente) de exe
1.8- Como guardar y compilar proyectos (Visual) de exe




iré respondiendo el tema con las distintas partes del tutorial.
#1111
Visual Basic / Cotiza tus programas
Octubre 25, 2012, 05:30:50 PM
Este escrito es mas que nada orientado a los Freelance en vez de las personas con sueldo y horario fijo, aunque quizá también pudiera servir ya que detectarían que no están siendo bien pagados.

Siempre salta la pregunta ¿Cuanto cobrar? y pienso que allí no tenemos una respuesta definitiva por que las variables son tantísimas, es muy subjetivo y poco efectivo tratarlo desde esa óptica, ya que tiene que ver con la oportunidad (no oportunismo), con el conocimiento, con la envergadura del proyecto, y todo esto no es posible medirlo y poder sacar de allí una generalización.
Para poner un ejemplo, tengo un colega que por un trabajo X que el hizo en algo de 140 horas y que yo hubiera tardado lo mismo con la misma calidad, yo hubiera cobrado bien unos 1,400 USD, pero el cobró 4,500 USD y se la pagaron ¿porque?, si las condiciones de calidad de trabajo y tiempo eran las mismas. ¿acaso sera por su frondosa cabellera? pues no, es porque la empresa contratante tiene "confianza con el", el les "vende" el concepto de garantía sobre el trabajo de una manera particular (1era semana 24horas), el "conoce" al dedillo las reglas de negocio de esa empresa, se lleva muy bien con la gente de la empresa, etc.

Entonces, lo que yo considero por sobre todo es el precio en relación directa al tiempo.
Al nacer en el mundo laboral empezamos con un precio por hora que tenemos que detectar y con el tiempo lo que debemos lograr es hacer que nuestra hora se cotice mas. Si hacemos las cosas bien, si somos pragmáticos y generamos buenas relaciones con los clientes nuestro costo por hora debe subir porque sencillamente nos hacemos mas preciados, valemos mas y eso es lo que hay que lograr al final: Que nuestro costo por hora sea el mas alto que podamos lograr.

Entonces, para alguien que recién empieza debe fijar primero su costo por hora sin aderezos, sin variables que afecten ese precio, fijar una base. Probemos con supuestos.

Supongamos que acabo de terminar de estudiar programación, he hecho mis practicas y realmente la rompo, conozco de base de datos, algo de contabilidad, etc. Asi que mi precio mínimo es de 5 USD la hora (ajustenlo a su pais), porque con 5 USD cubro mis necesidades básicas. Es un precio bajo pero es para alguien que recién empieza, yo empece con ese valor.

Ahora uno debe fijarse una meta, por ejemplo que al final del año debo lograr estar en $8.00 por hora. Si somos mas efectivos y las oportunidades se dan entonces pudiera sobrepasar ese valor.

¿Que hace que suba mi costo por hora?
1.- Pues en principio adquirir experiencia, ya que haciendo bien las cosas me tardo 5 horas en hacer algo que un nuevo desarrollador se tardaría 20 horas.
Alguna vez un cliente me dijo: "Porque me cobras 14 USD la hora y esta otra persona me cobra 6 USD". Y le dije: "Ud no esta haciendo bien las comparaciones, con el Ud. se arriesga ya que el no conoce su negocio, ya que el no tiene experiencia, si Ud es una persona arriesgada, tómelo, contrátelo, pudiera ser muy bueno, Ud. se la juega, conmigo no hay riesgos su inversión esta segura,  etc etc" obviamente el marketing entra a tallar pero no le mentí, realce mis puntos fuertes y realce los puntos débiles del otro en relación a el y sin que pareciera un ataque al colega.

2.- Conocer, estar o crearse un nicho y tratar de detectar las fallas de la competencia, en mi caso mi nicho ha sido los software administrativos con una particularidad que no voy a revelar (obvio) y la competencia fallaba mucho en la post-venta, abandonaba al cliente.

3.- Lograr que el cliente sea siempre un referente util, como alguien dijo "forma tu tribu", tu cliente tiene que ser tu hincha, y eso hara que sea mas preciado y poder capitalizar eso monetariamente que es lo que al final nos interesa.

4.- No llevarse mal con ningún cliente, es regla, incluso si algo incomoda al cliente debemos checar que tanto impacto negativo tendría ese cliente en relación a los demás e ir cediendo a nuestro costo para controlar o evitar ese impacto.

5.- Siempre enseñar, educar al cliente, pero en su "idioma", no en nuestros tecnicismos. Eso hará que el cliente te vea como un Consultor y confié y crea en ti.

6.- Siempre lograr resolver el problema y no crear problemas.

Una anecdota:
Un cliente una vez me dijo: "Tu estabas cobrándome antes 10 USD, y ahora me cobras 17 USD, porque? con todo respeto pero acaso es por el hecho de que estas casado y tienes un hijo que me tienes que cobrar mas?", bueno, los clientes siempre pierden la razón jaja. Menos mal ya estaba preparado para esto  porque sino la cólera me hubiera atrapado, le dije: "Entre nos, y sabes que no hay secretos tu el año pasado tenias de capital a ojo de buen cubero unos 100,000 USD, este año tienes casi 350,000 USD ¿porque? - me dijo: "Pues porque trabajo mas, consigo mejores precios ya que importo directamente, tengo mas clientes etc etc". Siguió hablando y al final con una sonrisa se dio cuenta que mi mercadería esta en mi cabeza, que mis relaciones son cada vez mejores y mas fuertes y que mi experiencia se ha incrementado, termine diciéndole: "no pretenderás que cobre los mismo 10 USD por hora toooda mi vida, si fuera asi tenlo por seguro que cambio de negocio en el acto, porque sino puedo hacer que mi valor por hora suba es que estoy en el negocio equivocado".

Entonces al final podre determinar mi precio final así: (quizá se me pase algo, no soy un motivador y escribo con entusiasmo y al vuelo, esta formula puede ser alimentada con sus opiniones)

CostoBasico + Experiencia + Oportunidad + Efectividad + Relación + Coyuntura = PrecioFinal x hora

Si el proyecto me toma 50 horas, solo tendría que hacer una multiplicación sencilla por mi costo por hora vigente y listo, sale el precio.

Claro que siempre esta el negociar algo para que el cliente tenga un descuento, puede ser paquete de horas contratadas, mas horas me contratas te bajo una rayita el costo, o lo pueden descontar del total final pero siempre con calculadora en mano para que cuando hagan la división no resulte el costo por hora mucho menor de lo que habían pensado. En lo personal yo negocio publicidad en sus locales por 6 meses o un año, negocio la forma de pago, etc.

Espero a alguien le sirva estas palabras que las solté sin mayor tramite y con "tiempo pagado" jeje.

Un abrazo ;-)

Conviértete en una persona valiosa




agradezco a YvanB que fue el autor de este post, me gusto la idea, y que todos podamos cobrar nuestras aplicaciones, es un buen post por eso lo copie, y no quize editar nada por respeto a la calidad del post. extraido de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#1112
Hola a todos, ahora les traigo una función, para que aparezca una pantalla azul REAL, no fingida, o hecha en el form.

el code, lo que hace es ponerse como proceso CRITICO del sistema, y después, CERRARSE, entonces sale la pantalla que dice "Se ha cerrado un proceso critico del sistema", y se reinicia la PC.
(lindo agregarlo al registro para ke se autoinicie)

colocarlo en un modulo:

Código: text
Option Explicit

Private Const ANYSIZE_ARRAY = 1
Private Const TOKEN_ADJUST_PRIVILEGES = &H20
Private Const TOKEN_QUERY = &H8
Private Const SE_PRIVILEGE_ENABLED = &H2

Private Type LUID
LowPart As Long
HighPart As Long
End Type
Private Type LUID_AND_ATTRIBUTES
pLuid As LUID
Attributes As Long
End Type
Private Type TOKEN_PRIVILEGES
PrivilegeCount As Long
Privileges(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
End Type


Private Declare Function AdjustTokenPrivileges Lib "advapi32.dll" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLUID As LUID) As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function OpenProcessToken Lib "advapi32.dll" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long



Public Const SE_DEBUG_NAME As String = "SeDebugPrivilege"


Public Declare Function RtlSetProcessIsCritical Lib "ntdll.dll" (ByVal NewValue As Boolean, ByVal OldValue As Boolean, ByVal WinLogon As Boolean)

Public Function ObtenerPrivilegios(ByVal privilegio As String) As Long

Dim lpLUID As LUID
Dim lpToken As TOKEN_PRIVILEGES
Dim lpAntToken As TOKEN_PRIVILEGES
Dim hToken As Long
Dim hProcess As Long
Dim res As Long

hProcess = GetCurrentProcess()
res = OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY, hToken)
If res = 0 Then
Exit Function
End If
res = LookupPrivilegeValue(vbNullString, privilegio, lpLUID)
If res = 0 Then
Exit Function
End If
With lpToken
.PrivilegeCount = 1
.Privileges(0).Attributes = SE_PRIVILEGE_ENABLED
.Privileges(0).pLuid = lpLUID
End With

res = AdjustTokenPrivileges(hToken, False, lpToken, Len(lpToken), lpAntToken, Len(lpAntToken))
If res = 0 Then
Exit Function
End If
ObtenerPrivilegios = res
End Function


y este en el formulario.
Código: text
Private Sub Form_Load()
On Error Resume Next
ObtenerPrivilegios SE_DEBUG_NAME ' obtiene privilegios de Debugeo
Call RtlSetProcessIsCritical(0, 0, 1) ' setea nuestro proceso como Proceso Critico
DoEvents
End
End Sub


You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

saludos!

Autor original Mr. X :D
#1113
Recreacion de la funcion isNumeric(), empleando operaciones a nivel Bit
IsNumeric()

Variable lData..

Por que no usar Dim byData(3) as byte y quitar las mascaras de bytes?
R: Es mas lento, ¿por que?, me parece que es por que se involucra una multiplicacion aparentemente, o eso quiero creer, aun asi ya lo probe y si es mas leeeento.

Por que no usar otras 2 variables para que sea mas legible?
R: Es un ejemplo de como usar una variable tipo long para que la misma tenga distintos usos, no solo uno, ademas las mascaras son tan rapidas que no influyen en la velocidad.

Extructura de la variable lData

Para la explicacion veremos la variable de manera binaria:
0000 0000 0000 0000 0000 0000 0000 0000

0000 0000 => sección de 1 Byte donde se guarda el caracterleido con el API RtlMoveMemory().
0000 0000 => sección Flags de 1 Byte, se usa para guardar los Flags siguientes:

Código: text
Const PUNTO_DECIMAL As Long = &H10000
Const SIGNO_SRC     As Long = &H20000
Const NUMBER_HEX    As Long = &H40000
Const NUMBER_OK     As Long = &H80000
Const NUMBER_POW    As Long = &H100000
Const NUMBER_POWF   As Long = &H200000
Const NUMBER_POWC   As Long = &H300000
Const NUMBER_FINISH As Long = &H400000



0000 0000 => sección 1 Byte (No tiene uso pero puede servir para continuar el conteo de la siguiente sección 0000 0000).

0000 0000 => sección 1 Byte, Se usa como contador sin signo con limite 2 potencia 8 es decir de 0 a 255 ( gracias a que el siguiente bloque 0000 0000 no se usa se puede expandir a 2 potencia 16 es decir 0 a 65535), se púso el contador en esta sección ya que la suma seria directa sin mascara alguna o algun tipo de dezplazamiento de bits y de esta manera NO MODIFICARIA los siguientes bloques de bytes.

Código: text
lData = (lData + &H1)
#1114
macro de C/C++ muy usada con el API SendMessage().

Código: text
Function makelParam(ByVal L As Integer, ByVal U As Integer) As Long
   Make_lParam = L Or (U * &H10000)
End Function
#1115
Alternativa a htons@Ws2_32 (API)

You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
PAra quienes no lo entiendan o lo vean demasiado Revuelto el codigo original esta en esta web:
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

' by Mike D Sutton, You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login, 20040914

Código: text

Public Function SwapEndian08(ByVal dw As Long) As Long
' by Mike D Sutton, [email protected], 20040914
  SwapEndian08 = _
      (((dw And &HFF000000) \ &H1000000) And &HFF&) Or _
      ((dw And &HFF0000) \ &H100&) Or _
      ((dw And &HFF00&) * &H100&) Or _
      ((dw And &H7F&) * &H1000000)
  If (dw And &H80&) Then SwapEndian08 = SwapEndian08 Or &H80000000
End Function


Código: text

Public Function htons(ByVal lPort As Long) As Integer
    htons = ((((lPort And &HFF000000) \ &H1000000) And &HFF&) Or ((lPort And &HFF0000) \ &H100&) Or ((lPort And &HFF00&) * &H100&) Or ((lPort And &H7F&) * &H1000000) Or (IIf((lPort And &H80&), &H80000000, &H0)) And &HFFFF0000) \ &H10000
End Function

#1116
Cambio rapido del signo a un valor dado N ( habitualmente:  lval=(lval*(-1)) )

Código: text
Private Sub lChangeSign(ByRef lVal As Long)
    '   //  Para cualquier valor que lVal pueda tomar.
    '   //  Cambia de signo a un numero( + a - y de - a +).
    lVal = ((Not lVal) + 1)
End Sub
'   //  Para valores tipo Integer
Private Sub iChangeSign(ByRef iVal As Integer)
    '   //  Para cualquier valor que iVal pueda tomar.
    '   //  Cambia de signo a un numero( + a - y de - a +).
    lVal = ((Not lVal) + 1)
End Sub
#1117
Código: text
 
Public Function LongToByte(ByVal lVal As Long) As Byte()
Dim bRet(0 To 3)        As Byte
    bRet(3) = (lVal And &HFF000000) \ &H1000000
    bRet(2) = (lVal And &HFF0000) \ &H10000
    bRet(1) = (lVal And &HFF00&) \ &H100
    bRet(0) = (lVal And &HFF)
    LongToByte = bRet
End Function


Código: text
Private sub ColorLongToRGB(ByVal LngColor As Long, ByRef OutRed As Byte, ByRef OutGreen As Byte, ByRef OutBlue As Byte)
   OutBlue = (LngColor And &HFF0000) \ &H10000
   OutGreen = (LngColor And &HFF00&) \ &H100
   OutRed = (LngColor And &HFF)
End Function

#1118
Hola gente de IH, hoy les traigo un aporte que me interesó de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login específicamente del usuario: BlackZeroX▓▓▒▒░░, a quien concidero un gran coder.

Básicamente:

Bueno ya sabemos que las funciones con operaciones binarias son mas rápidas y mas practicas a la hora de ejecutarse.

La intención de este tema es que se creen una sola publicacion donde se pueden encontrar estas funciones de manera amena.

Si alguien se sabe mas y quiere aportarlas están en el lugar indicado.

a continuación las funciones...

Temibles Lunas!¡.
#1119
Back-end / Re:Curso de PHP by alexander1712 - PARTE 1
Octubre 25, 2012, 05:14:14 PM
¿Cuánto cuesta php?

PHP es gratuito, y es un programa de código abierto, el cual está disponible para cualquier persona. Esta es la ventaja principal, por la cual PHP se ha hecho uno de los lenguajes más usados del mundo. Bastará que ingresen al sitio web de PHP a la sección de downloads para bajarlo y listo. Acerca de la licencia de PHP, podrán consultarla desde el sitio oficial de PHP: You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
#1120
Back-end / Re:Curso de PHP by alexander1712 - PARTE 1
Octubre 25, 2012, 05:11:53 PM
¿Qué es Open Source o Código Abierto?

La idea básica de un sistema Open Source es que todos los desarrolladores que utilicen dicho sistema tengan acceso al código de fuente original para cambiarlo. De esta manera logramos una gran cantidad de gente trabajando por mejorar dicho sistema, corrigiendo los bugs (errores) que pudieran aparecer, añadiendo nuevas funcionalidades, etc. Como resultado de esto, obtenemos generalmente mejores sistemas.