TODOPIC

Lenguajes de programación para PC => C, C#, C++ => Mensaje iniciado por: PalitroqueZ en 13 de Septiembre de 2007, 12:51:04

Título: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 13 de Septiembre de 2007, 12:51:04
Indeciso al proponer el tema de este hilo, porque no se si me despegaré del visual basic, a ver como me va con el c builder. Parece increible pero programar c en las compus, es muy diferente al los micros. Bueno como soy de los que primero hace las cosas y después lee el manual, comienza la lanzadera de flechas: lo llamo el teorema del Force 8)

el primer programa se trata del mostrar el famoso "Hola Mundo" clicando en un botón. Colocaré los pasos realizados y mis comentarios salidos expontaneamente

- abro el c++ builder 6.0 -comparando el IDE, - se parece al vb 4.0 con ventanas 'hijas' independientes-

- clico file->new      -ayy que malvados, está todo en inglish - :(

- busco donde hay un dichoso commandbutton, ohh aquí se llama BitBtn que se encuentra en la pestaña Additional,

-por cierto y había visto BitBtn como api anteriormente, instuyo de que se trata.

(http://img528.imageshack.us/img528/2378/64010419jb0.jpg)


bueno pego el botón en el formulario -por lo menos lo llaman Form1-

al darle doble click al botón para entrar en modo programación, me consigo:

Código: C++
  1. void __fastcall TForm1::BitBtn1Click(TObject *Sender)
  2. {
  3.  
  4. }

oh oh, aquí empiezan los problemas, no tengo idea que significará, pero nimporta, seguro debe ser un procedimiento que se ejecuta al click con el mause

- ahora viene la parte de mostrar el mensaje, a ver , en vb era MsgBox, explicitamente:

Código: C++
  1. MsgBox "Hola", vbOKOnly, "Mensaje1"
lo escribo y arranco con Run....

(http://img174.imageshack.us/img174/6217/30780397rr6.jpg)

el segundo mensaje es cierto, en c se usa el ;

umm entonces como sería mostrar un mensaje...

en la ayuda aparece un tal messagebox explicado como una api, que tal si lo escribo siguiendo sus argumentos


int MessageBox(

    HWND hWnd,   // handle of owner window
    LPCTSTR lpText,   // address of text in message box
    LPCTSTR lpCaption,   // address of title of message box 
    UINT uType    // style of message box
   );   

 
 
 queda así:

Código: C++
  1. MessageBox ,"Hola", "Mensaje1", MB_OK;
         
 pos sigue los errores, porque me salte el manejador hwnd (compiló bien y no hace nada), umm y ¿como hago para decirle al compilador que será la ventana form1?


escribo como opción:

Código: C++
  1. MessageBox form1,"Hola", "Mensaje1", MB_OK;


otro fallido, hay que leer mas en la ayuda.

Para el primer argumento, tenemos:

hWnd
Identifies the owner window of the message box to be created. If this parameter is NULL, the message box has no owner window.


ahh, o sea, que lo puedo poner como NULL

Código: C++
  1. MessageBox NULL,"Hola", "Mensaje1", MB_OK;

arrrg sigue saliendo el bendito error:


(http://img174.imageshack.us/img174/1351/24345283za6.jpg)

piensa, piensa PalitroqueZ, ahhh y ¡si lo ponemos con entreparéntesis!

Código: C++
  1. MessageBox (NULL,"Hola", "Mensaje1", MB_OK);

(http://img146.imageshack.us/img146/6033/93257036ys3.jpg)
 
¡¡funcionó!! seguro pensaran, y este tonto no sabe que en c se usan los (), es cierto, lo que sucede es que estaba pensando en visual basic, porque en éste último se pueden obviar los () si no usaras el resultado de una función.

conclusiones:

- que tengo que cambiar la costumbre de pensar en el otro lenguaje mientras le doy a c builder.

- a ojo porciento sospecho que éste compilador se mete con las apis de windows.

- no puedo sacar mas conclusiones hasta seguir ensayando...
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 13 de Septiembre de 2007, 12:51:33
Bueno señor@s después de revisar, me enteré que existe un botón llamado button -se encuentra en las pestaña Standard- que pasé por alto ¿entonces que significa eso de BitBtn? umm


hay otra cosa interesante que "descubrí", éste tipo (el c builder) muestra el código fuente del formulario, de los botones, es decir de lo que se pueda pegar allí

código del Form:

(http://img210.imageshack.us/img210/2316/21jy9.jpg)

código que ejecutará la acción dentro del Form:

(http://img210.imageshack.us/img210/1195/22rf5.jpg)


Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: IAO en 13 de Septiembre de 2007, 15:39:23
Paliz... que tal

Mi pana te comento que, intente una vez trabajar con el Borland Builder, pero que va no di pie con el.
Solo pude trabajar medio, medio, con Visual C++.
Desesperado y renegando siempre de VB porque según yo era muy facil y era para flojos.
Me fui con el super poderoso MASM32(MacroAssembler). Logré cosas que nunca logré con lenguaje C o VC.
Te comento que luego me dije, para q' pierdo tanto tiempo haciendo toda una aplicacón visual si solo
requiero probar que algo funciona, dejé el bello y hermoso MASM32(lo adoro).

Me fui a QBasic 7 y Freebasic. Y sabes, ahora estoy donde comencé en VB.
Tantas vueltas para echarme en el mismo sitio. :)

Te comento que ahora para mí, lo más bello de VB es: lo facil que haces todo.  :mrgreen:
 ;----------------------------------------------

Bueno esto esto es lo que quería decirte:
Si buscas en el Directorio Samples de Borland encontrarás ejemplos miles. Y ojo que tiene diversas librerías
o creo que son clases (bueno ni recuerdo) que te pueden confundir.

Bye('_').
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 14 de Septiembre de 2007, 15:50:55
que tal IAO,

te comento que desde hace un tiempito quería probar otro entorno de programación y había pasado por el DevC++ y el visual C y ambos me ganaron a la final  :?

continuando...

buscando por google conseguí un tutorial para empezar y leyendo entre los topicos me crucé con uno muy curioso llamado "Programación con hebras" (http://elvex.ugr.es/decsai/builder/threads/index.html) debe ser a lo que se refiere el amigo Maunix acá (http://www.todopic.com.ar/foros/index.php?topic=11494.msg63684#msg63684)

lo que voy entendiendo es que una aplicación se puede trabajar como una especie de rtos, para darle el turno a otros procesos. yo creo que un ejemplo típico son los programas recuperadores de password, ellos tienen una opción donde puedes darle prioridad a la ejecución donde se pretende hallar la clave a ciertos archivos (p.e. usando la fuerza bruta). si ponemos la prioridad alta, aumentará la velocidad del proceso, a cambio de que el cpu se pondrá lento para otros programas, no sucediendo así si colocamos baja prioridad.

supongo que en vb lo que se le aproxima es la función DoEvents pero no es tan flexible como lo que se maneja en c builder.


está super-interesante la forma de programar usando hebras (Thread), lo apartaré de momento (ya que quiero aprender lo básico primero).


mas detalles encontrados:

- es válido anteponer & en las cadenas para modos de atajos por teclados con Alt+&letra_asignada.

- existen los menues emergentes para conocer/agilizar las propiedades, funciones y metodos para un componente. Ojo si no se puede llamar a una propiedad les aparecerá este mensaje:

(http://img528.imageshack.us/img528/5936/errorra9.jpg)

- en la creación de los menues (MainMenu), se reconoce como una línea de separación al escribir - en la propiedad caption.

- la distinción entre mayúsculas y minúsculas todavía me crea desaciertos :) tengo que acostumbrarme. (sobre todo para las palabras reservadas).


Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: BrunoF en 15 de Septiembre de 2007, 07:34:10
Hola Pedro! Felicitaciones por la migración. ;)

Me ofrezco para ayudarte en todo lo que pueda para ayudarte en tu proceso de transicion.

Al principio cuesta...pero con el tiempo se ven los beneficios ;)

Saludos!
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 15 de Septiembre de 2007, 14:32:24
Gracias Master  :-/



continuandini...  8)

veamos un error que me sucedió en la programación:

sea el componente TImage, he pegado uno en el formulario y le cambié el nombre por ima

resulta que estoy tratando de dibujar una línea, pués bien aquí se hace a través de la propiedad Canvas y LineTo. El código es:

Código: C++
  1. static int i;
  2.   If(i != cx){
  3.     ima->Canvas->LineTo(i, i * (117 / 253));
  4.     i = i + 1;
  5.   }

a lo que quiero llegar es que podemos saber si vamos por buen camino gracias a los menues emergentes, si escribo ima- al escribir > (para completar el operador ->) debe aparecer el menu emergente con las propiedades y funciones disponibles para ese componente

(http://img167.imageshack.us/img167/9373/24359027ev0.jpg)

con el programa de arriba tenemos un error y es que el condicional está escrito indebidamente, pués debe ser if y no If

entonces para de código anterior no aparecerá el menú descrito, sino un mensaje en la parte inferior de este tipo:

(http://img528.imageshack.us/img528/5936/errorra9.jpg)

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 15 de Septiembre de 2007, 14:33:18
mas quebraderos de cabeza..

como parte de aprendizaje (y así me impongo retos para animarme con el c++) estoy llevando programas del vb al c, y para empezar probemos con los ejempitos de graficos (http://www.todopic.com.ar/foros/index.php?topic=16233.msg105918#msg105918).

recordemos que para dibujar una línea recta en el picturebox se hacía de esta manera

Código: Visual Basic
  1. Dim cx As Integer, cy As Integer
  2. Dim i As Integer, j As Integer
  3.  
  4.  
  5. Private Sub Command1_Click()
  6.     Timer1.Enabled = True
  7. End Sub
  8.  
  9. Private Sub Form_Load()
  10.     cy = Picture1.ScaleHeight ' 117
  11.    cx = Picture1.ScaleWidth   ' 253
  12.    Timer1.Interval = 10
  13.     Timer1.Enabled = False
  14. End Sub
  15.  
  16. Private Sub Timer1_Timer()
  17.     If Not i = cx Then  ' pregunta si i no ha llegado a cx
  18.    Picture1.Line (0, 0)-(i, i * (117 / 253))
  19.     i = i + 1  ' incrementa i
  20.    Else
  21.     Timer1.Enabled = False  ' ya llego, deja de dibujar
  22.    End If
  23. End Sub


llevarlo al c, me costó un poquito de trabajo, ya que hay ciertas reglas que cumplir, (en vb ya hay un montón de cosas que él te hace automático) pero en c hay que hacercelas saber al compilador.

por ejemplo, la propiedad que conseguí para dibujar una recta, en el c builder (en adelante lo llamaré BCB) es LineTo dentro de Canvas, viendo en la ayuda:



The LineTo function draws a line from the current position up to, but not including, the specified point.

BOOL LineTo(

    HDC hdc,   // device context handle
    int nXEnd,   // x-coordinate of line's ending point 
    int nYEnd    // y-coordinate of line's ending point 
   );   


éste me sirve para el primer programa, ahora bien las coordenadas son enteros, entonces no podría usar:

i, i * (117 / 253)

para indicarle las nuevas coordenadas x e y (que el método Line en vb las acepta como Single)

buscando y probando no sirvieron las funciones ceil y floor, parece ser que estas funciones aritméticas no aceptan variabes como argumento, bueno no se la razón.

entonces buscando y buscando en la ayuda, me conseguí otra muy curiosa llamada MulDiv


Description

MulDiv returns the result from multiplying Number by Numerator and then (integer) dividing by Denominator. If Denominator is 0, MulDiv returns –1.


¡que casualidad! justamente esa instrucción es la que me sirve, ya que tengo que multiplicar y después dividir y lo mejor de todo es que el resultado es un int. Quedaría así:

MulDiv(i,cy,cx)

reescribiendo el código completo:

Código: C++
  1. static int cx;
  2.  static int cy;
  3.  static int i;
  4.  
  5. void __fastcall TForm1::FormCreate(TObject *Sender)
  6. {
  7.         cy = ima->Height;
  8.         cx = ima->Width;
  9.         Timer1->Enabled=false;
  10. }
  11. //---------------------------------------------------------------------------
  12.  
  13. void __fastcall TForm1::Button1Click(TObject *Sender)
  14. {
  15.         Timer1->Enabled=true;
  16. }
  17. //---------------------------------------------------------------------------
  18.  
  19. void __fastcall TForm1::Timer1Timer(TObject *Sender)
  20. {
  21.   if(i != cx){
  22.     ima->Canvas->LineTo(i,MulDiv(i,cy,cx));
  23.     i++;
  24.     lbl->Caption= i;
  25.   }else{
  26.     Timer1->Enabled=false;
  27.   }
  28. }
  29. //---------------------------------------------------------------------------

fíjense que el algorítmo es el mismo, solo cambia la sintáxis

(http://img167.imageshack.us/img167/8176/bcb5wz2.gif)

Bién!  :-/

hay un detalle, se observa un notorio refresco en el componente TImage (el equivalente al picturebox), tendré que averiguar de que se trata y solucionarlo. :(


Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: IAO en 15 de Septiembre de 2007, 15:17:59
Hola:

Pali...Z, me estás tentando a instalar el CBuilder, y serguirte de serca a ver si se me pega
algo bueno. De pana, pana, panita, me estas tentando.
Se me hizo agua la boca con este ejemplo.

Bye('_').
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 15 de Septiembre de 2007, 17:02:05
Los exhorto a mudarse del pobretón de BASIC al señorón de C, yo lo utilizo desde segundo año de la carrera, y la verdad ME ENCANTA, así que los convido a mudarse.

Ahora estoy intentando mudarme a algo OpenSource, porque el tema de las  licencias siempre es una molestia, y por supuesto el día que tenga que mudarme por cuestiones de presupuesto, ya estaría en adelanto respecto a mis compañeros en ese sentido. Pienso usar GCC o algo así, vamos a ver.

Pero sin dudas el Builder viene de perlas para cualquiera, Pedro Felicidades.

Saludos
Reinier
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 17 de Septiembre de 2007, 13:54:31
Hola:

Pali...Z, me estás tentando a instalar el CBuilder, y serguirte de serca a ver si se me pega
algo bueno. De pana, pana, panita, me estas tentando.
Se me hizo agua la boca con este ejemplo.

Bye('_').

jeje pués adelante.  :)



sigo con las trancas, no se como cambiar el color del fondo de un TPaintBox.

en la ayuda dice que es PaintBox1->Color = clLime; no funciona :(

el código:

Código: C++
  1. void __fastcall TForm1::FormActivate(TObject *Sender)
  2. {
  3.         PaintBox1->ParentColor=true;
  4.         PaintBox1->Color=clBlue;
  5.        
  6. }

¿podría alguien decirme como?

ahh el adjunto.

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 17 de Septiembre de 2007, 19:54:27
PaintBox1->Canvas->Color = clLime;
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 18 de Septiembre de 2007, 18:22:16
pués no funciona, mira el error que sale:

(http://img146.imageshack.us/img146/8972/errordo3.jpg)

seguiré investigando, (no puede ser que no se pueda cambiar  :?)
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: El_Guitre en 18 de Septiembre de 2007, 23:59:50
PalitroqueZ, en este momento no tengo instalado el builder pero hace esto:

Al principio de tu rutina de dibujo comienzas con las siguientes lineas

PaintBox1->Canvas->Brush->Color=clGreen;                         //seleccionas el color para pintar
PaintBox1->Canvas->FillRect(PaintBox1->Canvas->ClipRect); //Pintas todo el PaintBox

Probalo y cualquier cosa avisame, yo mientras voy a buscar los cds del builder 6 para instalarlo
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: El_Guitre en 19 de Septiembre de 2007, 00:14:44
Te paso un pedazo de código del programa que uso para graficar la señal de ECG de mi Holter digital

el paintbox se llama zona

void __fastcall TForm1::Dibujar(int x)
{
 int k;
 
 zona->Canvas->Brush->Color=clBlack;
 zona->Canvas->FillRect(zona->Canvas->ClipRect);
 zona->Canvas->Pen->Color=clLime;
 for (k=0;k<512;k++)
     {
      zona->Canvas->Pixels[k][255-(v[k+x])]=clLime;
      zona->Canvas->MoveTo  (k,(255-(v[k+x])));
      zona->Canvas->LineTo  (k+1,(255-(v[k+x+1])));
      // zona->Canvas->Pixels[k][medio]=clYellow;
     }

}



Los datos son precargados en un vector cuando se abre el archivo donde esta la señal, para dibujar la linea de señal nula por ejemplo lo podria cargar con ceros:

for(int s=0;s<10240;s++)   { v=0; }


Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 19 de Septiembre de 2007, 14:05:40
Te paso un pedazo de código del programa que uso para graficar la señal de ECG de mi Holter digital

el paintbox se llama zona

void __fastcall TForm1::Dibujar(int x)
{
 int k;
 
 zona->Canvas->Brush->Color=clBlack;
 zona->Canvas->FillRect(zona->Canvas->ClipRect);
 zona->Canvas->Pen->Color=clLime;
 for (k=0;k<512;k++)
     {
      zona->Canvas->Pixels[k][255-(v[k+x])]=clLime;
      zona->Canvas->MoveTo  (k,(255-(v[k+x])));
      zona->Canvas->LineTo  (k+1,(255-(v[k+x+1])));
      // zona->Canvas->Pixels[k][medio]=clYellow;
     }

}



Los datos son precargados en un vector cuando se abre el archivo donde esta la señal, para dibujar la linea de señal nula por ejemplo lo podria cargar con ceros:

for(int s=0;s<10240;s++)   { v=0; }



 ahh, entonces con estas propiedades es que se hacen..
 
     zona->Canvas->FillRect(zona->Canvas->ClipRect);
     zona->Canvas->Pixels[k][medio]=clYellow;

voy a probarlas.

Gracias El_Guitre
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 21 de Septiembre de 2007, 16:26:23
Hice los respectivos ajustes, tuve que llamar a FillRect en el evento Paint para que funcionara, además que no se borra si se pierde en objeto en pantalla (es como activar autoredraw en vb)


Código: C++
  1. static int cx;
  2.  static int cy;
  3.  static int i;
  4.  
  5. void __fastcall TForm1::Timer1Timer(TObject *Sender)
  6. {
  7. if(i != cx){
  8.    PaintBox1->Color=0xFFFFFF/(i+1);
  9.  
  10.    i++;
  11.    Label1->Caption= "valor de i = " + IntToStr(i);
  12.   }else{
  13.     Timer1->Enabled=false;
  14.   }
  15. }
  16. //---------------------------------------------------------------------------
  17. void __fastcall TForm1::FormActivate(TObject *Sender)
  18. {
  19.    cy = PaintBox1->Height;
  20.    cx = PaintBox1->Width;
  21.  
  22.    Timer1->Enabled=true;
  23. }
  24. //---------------------------------------------------------------------------
  25.  
  26. void __fastcall TForm1::PaintBox1Paint(TObject *Sender)
  27. {
  28.    PaintBox1->Canvas->FillRect(PaintBox1->Canvas->ClipRect);
  29. }
  30. //---------------------------------------------------------------------------

como el objeto TPaintBox se ve medio tristón, es decir todo plano (flat), le agregué otro objeto llamado TBevel, para darle un aspecto de fondo.

(http://img133.imageshack.us/img133/2822/fondomulticoloriw3.gif)

nuevamente gracias El_Guitre  :mrgreen:
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: El_Guitre en 21 de Septiembre de 2007, 21:33:21
Te quedo muy alegre tu formulario, es como para poner música de fondo y armar una fiesta  :D, me anoto a este hilo a ver que seguimos haciendo con Builder, la verdad hace un tiempo lo tengo abandonado.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 24 de Septiembre de 2007, 12:40:20
dale, yo mientras me estoy empapando con manuales sobre el C  8)
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: kalux en 30 de Diciembre de 2007, 09:17:13
Hola,

Yo tambien utilizo el C++Builder (creo que es el mejor).

Simplemente te recomiendo una pagina que suelo visitar muy a menudo:

http://foros.ryanstudios.com/index.php

Es muy activa, con consultas, bases de datos, trucos, etc.

Un saludo
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 03 de Enero de 2008, 14:49:50
gracias kalux, voy a ver que aprendo de allí, aún sigo en la transición, pero me quedo trabado en ciertos aspectos.


Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 23 de Febrero de 2008, 10:05:11
Hola Pedro!

¿Tienes idea de cuanto espacio en disco ocupa la instalacion del C Builder?

Saludos!
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 23 de Febrero de 2008, 11:29:46
si me premiten una sugerencia fijense en c#, aunque msoft, es muy potente y con infinidad ed librerias; tambien hay algo de soporte en linux mediante el proyecto mono
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 23 de Febrero de 2008, 11:35:19
Gracias Leandro!
Ya lo instalé, pero es...enorme para las pocas pavadas que puedo llegar a hacer. Ademas, me metio 2 millones de cosas en la maquina, incluido "algo" que salta cada dos por tres cuando algun programa me hace algo raro. Una especie de inspector de codigo o algo asi. Asi que....ya fue desinstalado :)

Por eso queria ver alguna alternativa.  :mrgreen:
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: El_Guitre en 23 de Febrero de 2008, 12:06:12
Ariel, en mi PC tengo instalado el Builder 4, suficiente para hacer muchas cosas y la carpeta ocupa 170 Mb. Incluso podes optar por no instalar la parte de base de datos y seguramente ahorras uno megas en el disco. Saludos.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 23 de Febrero de 2008, 12:23:56
Gracias Guitre!

Quizas empiece con ese entonces. Yo solo quiero leer los puertos del PC y graficar alguna cosita, nada de otro mundo.

Saludos!
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: El_Guitre en 23 de Febrero de 2008, 12:58:35
Para eso te va a funcionar muy bien. Que puertos Queres leer? Serial y USB o también el paralelo?
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 23 de Febrero de 2008, 13:23:16
Serial para empezar, y USB mas adelante. El paralelo es mas simple desde el punto de vista del hard a construir, pero es un puerto que está en "extinción" (peor que el serial!).

Saludos.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 23 de Febrero de 2008, 13:48:32
checkeate la version express que es precisamente para cosas ligeras

http://www.microsoft.com/express/vcsharp/ (http://www.microsoft.com/express/vcsharp/)
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: El_Guitre en 23 de Febrero de 2008, 13:52:18
Si lo del paralelo es prácticamente obsoleto pero pero pense que quizas pensabas utilizarlo para alguna aplicación.  Suerte con col Builder o el C#. Saludos.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 25 de Febrero de 2008, 16:03:51
Yo acostumbro utilizar el BCB 5.0, muy bueno y estable, no gusto de las cosas de Microsoft, considero que a pesar de todos los aspectos destacables, esta gente de Microsoft son muy vitrineros.

El peso de una instalación de Builder 5 depende de los componentes que le pongas a la instalación, pero debe rondar los 300MB.

saludos
Reinier
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 25 de Febrero de 2008, 16:08:18
Ariel lo estaba pensando y creo que sería buena idea que experimentaras con algún compilador GNU porque ya que no tienes ninguna experiencia en C++ para PC, por que no ir a ver que tienen para ofrecer la gente de la comunidad GNU.

Yo tengo eso como proyecto serio para dentro algún tiempo, concretamente cuando termine el período lectivo de maestría. Pero sería bueno tener un amigo que te enseñe unas cuantas cosillas al respecto, además que usar C++ Builder o VisualStudio tiene la desventaja de que lo que hagas es sólo para ti, si pretendes comercializar algo tendrás que pagar las malditas licencias, que no son nada baratas.

Bueno, te pongo el pie forzado, tu mira a ver que idea te sale y decide lo que mejor te convenga.

Saludos
Reinier
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 25 de Febrero de 2008, 18:34:23
...
El peso de una instalación de Builder 5 depende de los componentes que le pongas a la instalación, pero debe rondar los 300MB.
...

Si Ariel, mas o menos se lleva eso instalado


Ariel lo estaba pensando y creo que sería buena idea que experimentaras con algún compilador GNU porque ya que no tienes ninguna experiencia en C++ para PC, por que no ir a ver que tienen para ofrecer la gente de la comunidad GNU.

Yo tengo eso como proyecto serio para dentro algún tiempo, concretamente cuando termine el período lectivo de maestría. Pero sería bueno tener un amigo que te enseñe unas cuantas cosillas al respecto, además que usar C++ Builder o VisualStudio tiene la desventaja de que lo que hagas es sólo para ti, si pretendes comercializar algo tendrás que pagar las malditas licencias, que no son nada baratas.

Bueno, te pongo el pie forzado, tu mira a ver que idea te sale y decide lo que mejor te convenga.

Saludos
Reinier

yo actualmente estoy trabajando (llevo adelantado cierto programilla  :P) con el AutoIT, es de distribución libre.

Es como trabajar en C pero con la sintaxis de basic, el cambio no es tan traumatico.

si quiren denle una mirada http://www.autoitscript.com/AutoIt/index.php


PD: lo siento por el builder, lo tengo en standby

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 26 de Febrero de 2008, 05:24:40
Aqui hay un par de lenguajes GNU con buena pinta:

1)FreeBASIC v0.18.3b (http://sourceforge.net/projects/fbc)
Un compilador BASIC multiplataforma.
Tiene MUY buena pinta, realmente. Una gran cantidad de instrucciones, genera EXE para varias plataformas, la ayuda en HTML es muy completa y hay un wiki con una tonelada de codigo para mirar. No tiene ide propio, pero si quieren, pueden bajar este (http://fbide.freebasic.net/) que esta diseñado especialmente para el:

](http://fbide.freebasic.net/Image/editor.jpg) (http://fbide.freebasic.net/)

2) MinGW - Minimalist GNU for Windows (http://sourceforge.net/project/showfiles.php?group_id=2435)
MinGW: A native Win32 port of the GNU Compiler Collection (GCC), with freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality.

No lo instale, pero por la cantidad de descargas que tiene debe ser bastante completo.

Saludos!
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 26 de Febrero de 2008, 11:34:08
algo mas pro que eso
http://trolltech.com/products/qt/homepage (http://trolltech.com/products/qt/homepage)
aunque  c++ o java
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 26 de Febrero de 2008, 11:47:26
Buen dato Leandro!

Y por lo visto podes programar para cualquier cosa! :

(http://trolltech.com/images/products/qt/Architecture_Diagram.png)
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 26 de Febrero de 2008, 12:39:53
Dale Ariel, mete caña con un compilador de esos, a ver si nos quitamos de encima el lío de las licencias, eso constituye una preocupación menos
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 26 de Febrero de 2008, 14:15:39
guarda que qt es libre mientras no desarrolles nada comercial e incluyas los fuentes con la distribucion del programa que hagas
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 26 de Febrero de 2008, 23:57:38
hay una pega con el FreeBASIC: No pudn crearse elementos como botones, listas, check boxs, etc. Si se pueden manjar archivos, graficos, puertos, etc. Pero es como el QBasic o GWBasic de DOS (bajo Windows). 

Una lastima!!!!  :?
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 27 de Febrero de 2008, 00:29:38
pasate a msoft, haceme caso que ta tienen clara, podes armar todo un sistema de base de datos sin escribir una sola linea de codigo
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 27 de Febrero de 2008, 15:15:12
GCC es GNU, por lo tanto no hay que pagar licencias comerciales, pero con eso no basta, según tengo entendido es necesario conseguirse un GUI, comi por ejemplo el Ecclipse (que aún no instalo). La cuestión es investigar a ver que hay.

El camino Microsoft es el más fácil, pero no el mejor para gente como nosotros que siempre estaremos con la espada de Democles pendiendo sobre nuestras cabezas.

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 27 de Febrero de 2008, 15:19:23


El camino Microsoft es el más fácil, pero no el mejor para gente como nosotros que siempre estaremos con la espada de Democles pendiendo sobre nuestras cabezas.



que quiere decir esto?
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 27 de Febrero de 2008, 15:28:44
Que en lugar de andar instalando copias piratas de los entornos de programación de Microsoft, deberíamos dar primero una ojeada a lo que la comunidad GNU nos pueda ofrecer. Sobre todo porque las licencias de Gates no son nada baratas, desconozco cuanto cuesta una para .NET, preo teniendo en cuenta que una licencia para MSOffice ronda los $350.00, me imagino que una de .NET no baje de algunos miles.

Imagina si Ariel hiciese un desarrollo comercializable, y tuviese que pagar una licencia a Microsoft para poder vender su producto legalmente, es posible que el costo de la licencia impidiese que saliese al mercado.

Aunque es cierto que muchas cosas de la comunidad GNU tienen licencias específicas para productos que se van a comercializar, éstas suelen tener costos muy inferiores a productos privativos. Ejemplo de ello es MySQL.

Y por supuesto, el camino Microsoft es el más fácil porque no cabe duda que sus productos son muy completos y de buena calidad, y se consigue mucha literatura y son fáciles de instalar y todo un conjunto de atributos positivos que no se les puede negar a la gente de Gates. Pero para la gente aficionada como nosotros o que maneja pequeños negocios, el gigante Microsoft no creo que sea la mejor variante.

Saludos
Reinier
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 27 de Febrero de 2008, 18:17:01
...
El peso de una instalación de Builder 5 depende de los componentes que le pongas a la instalación, pero debe rondar los 300MB.
...

Si Ariel, mas o menos se lleva eso instalado
...

Miento totalmente, tengo la versión 6:

(http://img134.imageshack.us/img134/7302/estocyevaelcbuilder6kk0.jpg)

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 27 de Febrero de 2008, 18:43:03
Pufffffff!

Enormeee! :)

Estoy termianando unas cosillas, y le voy a dar una mirada al GCC....seguramente ocupa menos, y es libre de royalties.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 27 de Febrero de 2008, 19:15:11
Bueno!
Acabo de instalar el  Dev-C++, un front-end bastante gauchito, con el compilador MinGW (http://www.mingw.org/). Lo bueno es que todo solo ocupo unos 55 MB.

Hay mucha literatura sobre este compilador, les dejo algunos links:

Tutoriales (http://www.cprogramming.com/tutorial.html)
Instalacion (en castellano) (http://www.lcc.uma.es/~pedre/LP_DevC.htm)
Recursos (http://www.bloodshed.net/dev/doc/index.html)
MinGW - Frequently Asked Questions (http://www.mingw.org/mingwfaq.shtml)
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 27 de Febrero de 2008, 20:05:13
¿y ese devc++ trae algún entorno para automatizar las interfaces GUI?

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 27 de Febrero de 2008, 20:34:16
Que en lugar de andar instalando copias piratas de los entornos de programación de Microsoft, deberíamos dar primero una ojeada a lo que la comunidad GNU nos pueda ofrecer. Sobre todo porque las licencias de Gates no son nada baratas, desconozco cuanto cuesta una para .NET, preo teniendo en cuenta que una licencia para MSOffice ronda los $350.00, me imagino que una de .NET no baje de algunos miles.

Imagina si Ariel hiciese un desarrollo comercializable, y tuviese que pagar una licencia a Microsoft para poder vender su producto legalmente, es posible que el costo de la licencia impidiese que saliese al mercado.

Aunque es cierto que muchas cosas de la comunidad GNU tienen licencias específicas para productos que se van a comercializar, éstas suelen tener costos muy inferiores a productos privativos. Ejemplo de ello es MySQL.

Y por supuesto, el camino Microsoft es el más fácil porque no cabe duda que sus productos son muy completos y de buena calidad, y se consigue mucha literatura y son fáciles de instalar y todo un conjunto de atributos positivos que no se les puede negar a la gente de Gates. Pero para la gente aficionada como nosotros o que maneja pequeños negocios, el gigante Microsoft no creo que sea la mejor variante.

Saludos
Reinier


c# express, vb express, sql express y varios otros son 100% gratuitos, mas faciles de usar que vestudio y com muy pequeñas limitaciones. Es precisamente el producto que saco msfot para resolver los problemas de los pequeños que mencionas


http://www.microsoft.com/express/default.aspx (http://www.microsoft.com/express/default.aspx)


ni quiero parecer hincha de msoft pero cuando hay algo bueno es importante que se sepa, ahora mismo ya saben que hay entornos de desarrollo para .net de msfot gratuitos
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 28 de Febrero de 2008, 06:27:09
¿y ese devc++ trae algún entorno para automatizar las interfaces GUI?

"Entorno" no vi, pero si podes utilizar elementos GUI. Esto

#include <windows.h>
int STDCALL
WinMain (HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpCmd, int nShow)
{
MessageBox (NULL, "Hello, Windows!", "Hello", MB_OK);
return 0;
}

Saca una ventana con el boton correspondiente. Si te referis a una herramienta visual para el diseño de los formularios, no la vi. Pero seguramente en Sourceforge algo hay.

Saludos!
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 28 de Febrero de 2008, 06:29:29
ni quiero parecer hincha de msoft pero cuando hay algo bueno es importante que se sepa, ahora mismo ya saben que hay entornos de desarrollo para .net de msfot gratuitos

Hola Leandro!
No es un dato menor.
Y no, no soy "contra" de Microsoft ni nada de eso...solo que me parecia (y me sigue pareciendo, al menos hasta que vea esas versiones que mencionas) una locura instalar 3GB de cosas para hacer un programita en C.

Este devc++ me sobra para lo que quiero, y solo (con el IDE y todo) ocupa 55 MB...

Saludos!
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: Kid_Bengala en 28 de Febrero de 2008, 11:55:57
Lo interesante seria tambien poner que uso se le puede dar a cada uno, ya que unos aunque no haya que pagar licencia, tienen una licencia que te obligan a ofrecer tambien el codigo fuente del programa si utilizas ciertas librerias o compiladores, a muchas empresas esto no les haria mucha gracia, casi es mejor pagar la licencia.

Yo muchas veces he pensado utilizar ciertas herramientas pero no lo he hecho porque desconozco el tema de las licencias. Un ejemplo fue que fui a desarrollar un programa para unix y queria utilizar libc+gcc y me dijeron varias personas que deberia liberar el codigo al utilizar esto.

Yo tambien estoy interesado en este tema de compiladores y licencias de cara a tener menos coste dentro de la empresa, sobre todo cuando eres una empresa muy pequeña.

saludos de antonio
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 28 de Febrero de 2008, 15:08:14
 :) c# express pesa 2.9 mb  8)  ahora esta en español y les dejo una serie de 12 videos gratuitos para aprender a programarlo
 Guía de programación en Visual C# Express para principiantes totales (http://www.microsoft.com/spanish/msdn/vstudio/Express/CommonVByVCS/default.mspx)
a ver que excusa hay ahora para no probarlo  :lol:
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 28 de Febrero de 2008, 17:41:35
2.9 MB? Mierd@ !!!!

¿De donde decias que se descarga? :)
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 28 de Febrero de 2008, 17:56:02
OOOOPPPPPSssssssss!!!!!

Acabo de bajarme el VisualBasic, el VisualC++ y el C# de la compania de Bill. Tenes razon, todos ocupan menos de 3MB.

Al comenzar a instalar aceptas una licencia, y mas tarde te pregunta si queres el MSDN (306MB) y un runtime (1.4 MB). Acepto solo el runtime, para mantener bajo el espacio ocupado, total, a MSDN accedo en linea y listo.

Pero....sorpresa!!!:

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=18681.0;attach=6280)
(todo esos paquetes que figuran a descargar (100MB en total) no son opcionales.)

Y con Basic pasa igual, solo que ocupa 0.98GB....que bestias! :) :) :)

Aparentemente, lo que uno descarga al principio es solo un instalador, el resto viene detras.

Eso si...esta de puta madre! :)

Saludos.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 28 de Febrero de 2008, 18:35:35
MDA!!! grandecito el amigo, me llama la atencion que descargue 100mb pero pese 1gb en hdd. igual vas a ver lo facilito que es usar eso y no dejes de probar el agregado que te hace los instaladores a partir del proyecto, por algo se llama oneclick
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 28 de Febrero de 2008, 19:32:18
..."Entorno" no vi, pero si podes utilizar elementos GUI. Esto

#include <windows.h>
int STDCALL
WinMain (HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpCmd, int nShow)
{
MessageBox (NULL, "Hello, Windows!", "Hello", MB_OK);
return 0;
}

Saca una ventana con el boton correspondiente. Si te referis a una herramienta visual para el diseño de los formularios, no la vi. Pero seguramente en Sourceforge algo hay.

Saludos!


tiene que haberlo de lo contario no vale la pena, imagina que pones una ventana con 20 textbox, 20 labels, ponerse a escribir todo eso¿? sin mencionar como adivinaras las coordenadas.

OOOOPPPPPSssssssss!!!!!

Acabo de bajarme el VisualBasic, el VisualC++ y el C# de la compania de Bill. Tenes razon, todos ocupan menos de 3MB.

...

yo me olvidé de eso, nunca entendí una instalación mas engorrosa (amén de que tiene que ser online),

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: aitopes en 28 de Febrero de 2008, 19:40:43
Hola Pedro!

¿Conocias este (http://www.lazarus.freepascal.org/index.php)?

(Hay muchas imagenes más aqui (http://wiki.lazarus.freepascal.org/Screenshots)!)

(http://wiki.lazarus.freepascal.org/images/thumb/7/7a/Lazarus_Windows_XP.PNG/755px-Lazarus_Windows_XP.PNG)

Me parece que es muy similar a Delphi...pero free.
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: PalitroqueZ en 28 de Febrero de 2008, 19:49:45
no lo conocía.

¿pascal?  :shock: umm paso  :mrgreen: (me quedo con mi querido basic y c)


Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 02 de Marzo de 2008, 13:23:21
Ariel prueba a instalar GCC (GNU Compiler Collection) con algún puerto para PC y luego te instalas el Eagle que una vez me enviaste. Este es free si no haces aplicaciones comerciales, y tengo entendido que las licencias no son demasiado elevadas, incluso me parece que el royaltie va en función de a que tipo de aplicaciones te vas a dedicar.

 
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 03 de Marzo de 2008, 09:17:01
Ariel prueba a instalar GCC (GNU Compiler Collection) con algún puerto para PC y luego te instalas el Eagle que una vez me enviaste. Este es free si no haces aplicaciones comerciales, y tengo entendido que las licencias no son demasiado elevadas, incluso me parece que el royaltie va en función de a que tipo de aplicaciones te vas a dedicar.

 

esa tambien es buena, les recomiendo eclipse + gcc http://www.linuxdevices.com/articles/AT8349506804.html (http://www.linuxdevices.com/articles/AT8349506804.html)

Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: reiniertl en 03 de Marzo de 2008, 11:28:28
Evidentemente todavíaa tengo los cables cruzados, luego de mi enfermedad, he puesto "Eagle" en lugar  de "Eclipse". Lo que ocurre es que psykhon me ha entendido de maravillas.

Yo no he tenido oportunidad todavía de probarlo porque tengo que conseguirme el GCC, pero tengo que ponerme las pilas y buscar alguien que me descargue el compilador y alguna que otra literatura para ponerme al corriente. ¿Ariel donde está tu acostumbrada solidaridad para con este forero caribeño?

Seguro que el Mr Icreíble volverá a sorprenderme con su capacidad de solución de problemas, pero no a uso de fuerza bruta sino por el tamaño de su corazón.

Bueno Ariel prueba esa combinación y me cuentas.

Saludos
Reinier
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 03 de Marzo de 2008, 12:44:31
el  C/C++ Development Toolkit (CDT) (el plugin de gcc para eclipse) lo podes bajar aca:
http://dev.eclipse.org/viewcvs/index.cgi/cdt-home/downloads/main.html?root=Tools_Project&view=co (http://dev.eclipse.org/viewcvs/index.cgi/cdt-home/downloads/main.html?root=Tools_Project&view=co)

yo lo probe en cross compiling para arm7 y anda muy bien pero nunca me gusto lo de compilar a partir de makes asi que en esa ocasion segui usando gcc pero sobre keil que es mas amigable
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: Kid_Bengala en 03 de Marzo de 2008, 16:33:44
hola

yo tambien ando con la misma duda, habia pensado varias veces en desarrollar para unix pero solo conozco el compilador gcc y las librerias libc. Para temas de codigo abierto esta bien, pero creo que para programas cerrados (que a ciertas empresas les interesa) no se puede, ya que por la licencia que tienen, creo que hace tiempo lo pregunte y varias personas me informaron que tendria que hacerlo opensource ya que sino infrinjo la licencia GPL.

A ver si alguien sabe mas del tema, ya que estoy empezando en una empresa pequeña y necesitamos desarrollas nuestros proyectos de software y claro, desde el principio queremos utilizar un lenguaje para no andar cambiandolo cada dos por tres (teniendo que migrar el codigo) y al ser pequeña y nueva no tengo mucho presupuesto, asi que buscaria algo gratuito sin infringir ninguna licencia o en su defecto algo de no muy alto coste jejeje. muchas gracias.

saludos

P.D: Habia pensado Java, pero para segun que cosas es un monstruo devorador de memoria :(
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: psykhon en 03 de Marzo de 2008, 21:19:40
hola

yo tambien ando con la misma duda, habia pensado varias veces en desarrollar para unix pero solo conozco el compilador gcc y las librerias libc. Para temas de codigo abierto esta bien, pero creo que para programas cerrados (que a ciertas empresas les interesa) no se puede, ya que por la licencia que tienen, creo que hace tiempo lo pregunte y varias personas me informaron que tendria que hacerlo opensource ya que sino infrinjo la licencia GPL.

A ver si alguien sabe mas del tema, ya que estoy empezando en una empresa pequeña y necesitamos desarrollas nuestros proyectos de software y claro, desde el principio queremos utilizar un lenguaje para no andar cambiandolo cada dos por tres (teniendo que migrar el codigo) y al ser pequeña y nueva no tengo mucho presupuesto, asi que buscaria algo gratuito sin infringir ninguna licencia o en su defecto algo de no muy alto coste jejeje. muchas gracias.

saludos

P.D: Habia pensado Java, pero para segun que cosas es un monstruo devorador de memoria :(

para que plataforma?
Título: Re: conociendo al C builder de uno que viene del visual basic
Publicado por: Kid_Bengala en 04 de Marzo de 2008, 21:16:35
en principio seria para entornos linux con gnome o kde (ya he programado en estos entornos), pero claro, por temas de licencias no se si se podria desarrollar algo profesional con esto.

Quizas me tocaria portar algo a windows si le exige el cliente.

Muchas gracias.

saludos de antonio