Necesito un guia programador!

Iniciado por JavierScars, 24 Mayo 2014, 06:04 AM

0 Miembros y 2 Visitantes están viendo este tema.

engel lex

varios de los juegos, programas y virus importantes del planeta son en vb! XD y viéndolo de ese modo java iría perdiendo mucho! XD es compilado con la velocidad de un interpretado, con el control de bajo nivel menor que VB y la dificultad de c++ XD
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

daryo

#21
CitarDificultad vs utilidad

Ej. ASM tiene una dificultad mucho mayor que C, pero a cambio tiene más utilidad. Puedes hacer cosas a más bajo nivel.

Citar
te ahorras un parde miles de lineas no lo creo si usas  herramientas como qt y claro depende el tipo de aplicacion porque ademas estaras mucho mas limitado las cosas de mas bajo nivel que muchas veces son imposibles en vb si pueden tener miles de lineas mas pero no es la unica forma de trabajar con c/c++.


como decia arriba hay herramientas/librerias que hacen que ayudan a que no sea necesario "trabajar a bajo nivel" y evitan tantas lineas de codigo :


el codigo de fuente de una ventana con un boton en qt
#include <qapplication.h>
#include <qpushbutton.h>


int main( int argc, char **argv )
{
   QApplication a( argc, argv );

   QPushButton hello( "Hello world!", 0 );
   hello.resize( 100, 30 );

   a.setMainWidget( &hello );
   hello.show();
   return a.exec();
}

http://web.njit.edu/all_topics/Prog_Lang_Docs/html/qt/tutorial1-01.html

si quisiera por ejemplo trabajar con la api de windows a "mas bajo nivel" y creo una ventana(sin boton) el codigo seria algo asi:

evidentemente el primer codigo es mas digerible y no necesariamente se tiene que usar el segundo
incluso en el propio c++ da la posiblidad de escoger Dificultad vs utilidad  a diferencia de visual basic.Que es mucho mas limitado y a eso sumado que depende de la plataforma windows y por tanto no se puede hacer nada en otro tipo de sistemas operativos


#include <windows.h>

/*  Declare Windows procedure  */
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

/*  Make the class name into a global variable  */
char szClassName[ ] = "CodeBlocksWindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nCmdShow)
{
   HWND hwnd;               /* This is the handle for our window */
   MSG messages;            /* Here messages to the application are saved */
   WNDCLASSEX wincl;        /* Data structure for the windowclass */

   /* The Window structure */
   wincl.hInstance = hThisInstance;
   wincl.lpszClassName = szClassName;
   wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */
   wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
   wincl.cbSize = sizeof (WNDCLASSEX);

   /* Use default icon and mouse-pointer */
   wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
   wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
   wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
   wincl.lpszMenuName = NULL;                 /* No menu */
   wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
   wincl.cbWndExtra = 0;                      /* structure or the window instance */
   /* Use Windows's default colour as the background of the window */
   wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

   /* Register the window class, and if it fails quit the program */
   if (!RegisterClassEx (&wincl))
       return 0;

   /* The class is registered, let's create the program*/
   hwnd = CreateWindowEx (
          0,                   /* Extended possibilites for variation */
          szClassName,         /* Classname */
          "Code::Blocks Template Windows App",       /* Title Text */
          WS_OVERLAPPEDWINDOW, /* default window */
          CW_USEDEFAULT,       /* Windows decides the position */
          CW_USEDEFAULT,       /* where the window ends up on the screen */
          544,                 /* The programs width */
          375,                 /* and height in pixels */
          HWND_DESKTOP,        /* The window is a child-window to desktop */
          NULL,                /* No menu */
          hThisInstance,       /* Program Instance handler */
          NULL                 /* No Window Creation data */
          );

   /* Make the window visible on the screen */
   ShowWindow (hwnd, nCmdShow);

   /* Run the message loop. It will run until GetMessage() returns 0 */
   while (GetMessage (&messages, NULL, 0, 0))
   {
       /* Translate virtual-key messages into character messages */
       TranslateMessage(&messages);
       /* Send message to WindowProcedure */
       DispatchMessage(&messages);
   }

   /* The program return-value is 0 - The value that PostQuitMessage() gave */
   return messages.wParam;
}


/*  This function is called by the Windows function DispatchMessage()  */

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
   switch (message)                  /* handle the messages */
   {
       case WM_DESTROY:
           PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
           break;
       default:                      /* for messages that we don't deal with */
           return DefWindowProc (hwnd, message, wParam, lParam);
   }

   return 0;
}

http://www.portalhacker.net/b18/tutorial-uso-apis-windows-para-crear-entorno-grafico/100744/
buenas

engel lex

Cita de: daryo en  2 Junio 2014, 14:55 PM
como decia arriba hay herramientas/librerias que hacen que ayudan a que no sea necesario "trabajar a bajo nivel" y evitan tantas lineas de codigo :

XD entonces me estás diciendo que programas bajo nivel con librerias para que no sea de bajo nivel!? XD

yo conozco c++ XD es uno de mis principales lenguajes...

lo que digo es que cada cosa tiene su utilidad! XD no porque un cuchillo de carnicero de 35cm sea excelente cortando cualquier cosa lo vas a usar para almorzar tu bistec! XD
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

daryo

Citar
Citaromo decia arriba hay herramientas/librerias que hacen que ayudan a que no sea necesario "trabajar a bajo nivel" y evitan tantas lineas de codigo :

XD entonces me estás diciendo que programas bajo nivel con librerias para que no sea de bajo nivel!? XD
dafuq? xD no me refiero a que hay librerias que facilitan las cosas y evitan tantas lineas inecesarias en la mayoria de los casos :P

que no solo depende que sea c++ vs visual basic porque c++ tambien tiene la posibilidad de manejar las cosas con mas facilidad y usabilidad dependiendo las herramientas que uses y las necesidades del programador .
buenas

ivancea96

Sí pero. Esas librerías, alguien las ha codeado, ¿no es cierto?
Es como si yo hago una librería de ASM para hacer ventanas con solo 1 función.

En definitiva, todo es muy relativo.

daryo

#25
Cita de: ivancea96 en  2 Junio 2014, 15:15 PM
Sí pero. Esas librerías, alguien las ha codeado, ¿no es cierto?
Es como si yo hago una librería de ASM para hacer ventanas con solo 1 función.

En definitiva, todo es muy relativo.
: P
¿ya pero me vas a decir que vb.net,vb o sql(que lo mencionabas ahora nadie ) nadie lo ha codeado?, evidentemente todos los lenguajes de alto nivel han sido codeados en algun momento. incluso las herramientas que se usan en asm como las interrupciones del sistema o la api de windows han sido codeadas en algun momento.

la cuestion es que si se podria hacer una ventana en asm como dices  pero lo cierto es que no hacen librerias tipo qt para asm en cambio para c++ si. xD
buenas

daryo

perdon el offtopic recomiendo python para empezar a programar  ;-)
buenas

ivancea96

Cita de: daryo en  2 Junio 2014, 15:20 PM
: P
¿ya pero me vas a decir que vb.net,vb o sql(que lo mencionabas ahora) nadie lo ha codeado?

El caso es, que los lenguajes de programación lo que hacen es convertir "texto" a binario.
Una librería, en cambio, solo es un conjunto de instrucciones e.e

En cualquier caso...

C++ rules !!! :D

Klixz

Te recomiendo que aprendas Dart, sencillo y eficaz.

Suerte con ello.

scott_

Que onda,

Colega te dire, que lo primero que hagas es aceptar que no eres un tipo de alto perfil de conocimiento o social, un buen programador sabe que windows no es una porqueria como muchos lo dicen, sabemos que es inestable, pero es un sistema operativo como tal,
Cita de: JavierScars en 24 Mayo 2014, 06:04 AM
"quiero aprender um lenguaje que me deje crear aplicaciones portables que funcionen tanto en linux como en W... (no lo quiero mencionar)"
ese sistema operativo estoy seguro que fue el primero que usaste. Hay que darle reconocimiento, porque definitivamente lo usas para hacer proyectos escolares.
El segundo paso es tener humildad hacia cualquier sientido que pase.
Y el tercer paso es que empieces por un lenguaje basico, lenguaje C, ese es el mas basico de todos y tu base como boleto para continuar, y mas adelante aprendas otro.
Es normal que uno se sienta imparable y quiera hacer lo que se le venga, pero tienes que aterrizar tus ideas y luego armarlas.
Ten encuenta eso, tienes potencial.
Suerte colega y bienvenido al foro.


Si no intentas salvar una vida, jamás salvarás la de nadie más