Foro de elhacker.net

Foros Generales => Foro Libre => Mensaje iniciado por: JavierScars en 24 Mayo 2014, 06:04 am



Título: Necesito un guia programador!
Publicado por: JavierScars en 24 Mayo 2014, 06:04 am
Hola soy nuevo y ya me precente la razon principal por la que me uni a este foro es por que (desde mi punto de vista)  son increibles las personas que se la pasan por el foro saben mucho!

Se que es largo pero por favor leerlo todo, no me puedo decidir!

Necesito ayuda, he decidio aprender un lenguaje de programacion... y no quiero empezar con pythom... quiero java o c++ pero no decido cual y necesito ayuda :( quiero aprender um lenguaje que me deje crear aplicaciones portables que funcionen tanto en linux como en W... (no lo quiero mencionar) que los programas sean dinamicos con el usuario y que sea elegante y estetico o sea que tenga una buena reprecentacion grafica... ademas de un lenguaje que me deje crear algun tipo de bots (para jueguitos :3) alguna idea? o mejor diganme que programas se pueden crear com java y cuales otros con c++

Enviado desde mi ST21i mediante Tapatalk


Título: Re: Re: Necesito un guia programador!
Publicado por: JavierScars en 24 Mayo 2014, 06:06 am
y gracias de antemano :s de tanto escribir (incomodo desde el movil) se me a olvidado :(... cualquier ayuda sirve :)

Enviado desde mi ST21i mediante Tapatalk


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 24 Mayo 2014, 06:23 am
java es portable, c++ no del todo, tienes que compilar para cada sistema operativo por independiente...

por tu interés recomiendo java

aquí tanto en el foro como en esta mundo casi todos son autodidactas, recomiendo lo siguiente, haz tutoriales de internet, ve video tutoriales del lenguaje que escojas y cuando tengas una duda te pasas por aquí y la expones, si te trancas o no entiendes algo puntualmente!

te digo no va a ser facil, ni rapido, pero rinde sus frutos

exito!


Título: Re:
Publicado por: JavierScars en 24 Mayo 2014, 06:27 am
gracias por la respuesta tan rapida :O! Java se a dicho entonces... genial puedo tomar ventaja de esto ya que tambien podre programar para mi android :D!

Enviado desde mi ST21i mediante Tapatalk


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 24 Mayo 2014, 06:48 am
por eso te dije java, te da portabilidad y cierta facilidad en lo grafico, c++ con eso es más complicado, sin embargo c++ es más eficiente, seguro*  y rápido, pero son cosas que no te deben preocupar por ahora...


*(este aspecto depende del programador)


Título: Re: Necesito un guia programador!
Publicado por: Randomize en 24 Mayo 2014, 10:14 am
Citar
um lenguaje que me deje crear aplicaciones portables


Con java siempre y cuando el sistema operativo anfitrión tenga instalada su máquina virtual no tendrás problemas y harás lo que quieres.


Título: Re: Re: Necesito un guia programador!
Publicado por: JavierScars en 24 Mayo 2014, 13:51 pm
:) Muchas gracias a todos... por java me fui... y phyton no lo aprendo mas que nada porque ahorita la univ me tiene muy ocupado, pero aun asi quiero aprender a programar y para ahorrarme tiempo me he saltado el paso que muchos sugieren ("si eres novato aprende python") para ahorrarme tiempo...

Enviado desde mi ST21i mediante Tapatalk


Título: Re: Necesito un guia programador!
Publicado por: Oblivi0n en 24 Mayo 2014, 22:25 pm
En tu caso es preferible que aprendas Python, Java al principio parece la leche, y en realidad es un lenguaje bastante malo y que al cabo de los años acabas hartándote de el y usándolo por obligación mas que por gusto . Yo como lenguaje "portable" te diría C# ( claro, portable portable,  no es ).

SI nos dices que quieres hacer, te diremos que puedes aprender. El concepto de "aprender a programar" lleva demasiados años, y el lenguaje no influye en absoluto.


Título: Re: Necesito un guia programador!
Publicado por: Randomize en 24 Mayo 2014, 23:26 pm
http://www.amazon.com/Teach-Yourself-Covering-Android-Edition/dp/0672335751



Si vale me lo dices que lo compro...


Título: Re: Necesito un guia programador!
Publicado por: Oblivi0n en 25 Mayo 2014, 02:43 am
Perdón por corregirte, pero si influye mucho, dependiendo del lenguaje que aprendas tendrás una u otra perspectiva de lo que es el mundo de programación, la lógica algoritmica... y desde luego el Python no  es el lenguaje de programación más indicado para empezar en este mundillo, como han dicho más arriba, Java, o C++, si su intención es programar soft.. y no me vengas con chorradas de que Python es mucho más fácil que Java o C++ por que no es asi, aprendiendo Java o C++ ya tendrias una base solida para pasar a cualquier otro lenguaje.

Saludos.

A ver... La programación va muchísimo mas allá del lenguaje. Un lenguaje de programación es una herramienta, el lenguaje se adapta al problema, y no el problema al lenguaje. LA "logica algoritmica" no varía en función del lenguaje, un bucle es un bucle, una llamada recursiva es una llamada recursiva, lo único que varía es la manera de expresarlo en un lenguaje.

Python es mejor para novatos porque abstrae muchísimo el nivel de programación, y no soy ningún defensor a ultranza de Python ( personalmente lo odio ), pero no puedes poner a alguien a programar en Java de buenas a primeras, a pesar de que es un lenguaje muy sencillo.

Para poder programar en Java bien primero tienes que entender el paradigma orientado a objetos ( y con la nueva Java 8, el funcional ), porque luego ves código que da mas pena que pegarle a un padre con un calcetín sudado.

En definitiva, si el chaval quiere ponerse a programar YA, yo le recomendaría un lenguaje de MUY alto nivel ( mas que java ). Bien sea Python, VB.NET, GO, o el que quiera.

P.D: Existe la falsa creencia de que aprendiendo C/C++/Java puedes pasar a cualquier otro lenguaje en cuestión de dias/semanas. Intenta pasar de Java a Haskell, o a OCaml, por poner un ejemplo. Hay que tener muy en cuenta que los lenguajes implementan paradigmas de programación, cada uno de una manera, y no siempre de manera completa ( java es una manera bastante pobre de implementar la orientación a objetos, y con la nueva versión, es la peor forma de implementar la programación funcional )


Título: Re:
Publicado por: JavierScars en 25 Mayo 2014, 16:33 pm
Una pregunta con java pudiera yo crear un bot que viera lo que hay en pantalla lo analizara y de haber cierta "cosa en pantalla" dar click en un lugar especifico?  es decir con que lenguaje se crean los bots y esos que vemos en juegos? 

Enviado desde mi ST21i mediante Tapatalk


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 25 Mayo 2014, 22:48 pm
Si, no es simple, pero puedes hacerlo .todo con java

Si es por simplicidad del lenguajes para aprender, apoyo vb6 o php, hay pocos tan completos y simples como esos 2


Título: Re: Necesito un guia programador!
Publicado por: DanteInfernum en 26 Mayo 2014, 05:23 am
Si realmente te interesa la programación, Stanford Engineering Everywhere tiene unos cursos excelentes. El curso Programming Methodology http://see.stanford.edu/see/lecturelist.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111 (http://see.stanford.edu/see/lecturelist.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111) es un curso de introducción a la programación a través del lenguaje Java.

Es muy bueno realmente, y está enfocado más que nada en enseñar buenos principios de programación, y no en terminar convirtiéndote en un gurú del lenguaje Java; lo que yo creo que es muchísimo mejor, ya que programar es mucho más que aprenderse una sintaxis determinada de un lenguaje cualquiera. Acá ya vas a aprender lo esencial del paradigma orientado a objetos y todo.

Eso sí, está en inglés (como casi todo lo bueno en el ámbito de la informática).  Y el profesor es excelente, pero ¡habla rapidísimo! También se pasa contando chistes todo el rato (hasta lleva un sable de luz a la clase y cada tanto lo saca a relucir...  :o)

Como dijo Oblivi0n, yo también te recomendaría C#. ¡Es que trabajar con Visual Studio es una maravilla! (ideologías aparte...). Pero las diferencias entre la sintaxis de Java y las de C# son mínimas, así que después de aprendido uno aprendes el otro en cuestión de días.


Comentarios aparte:
Mis primeros pasitos en la programación fueron con Phyton, pero me quedo toda la vida con los Java/C#/C++/C. Me gusta que el código esté bien estructurado y ¡saber de qué tipo son las variables con las que estoy trabajando! Phyton parece un gran collage, bueno para hacer sobre todo pequeños scripts. (¡Hacking con phyton!  :D)


Título: Re: Necesito un guia programador!
Publicado por: JavierScars en 30 Mayo 2014, 03:37 am
Si realmente te interesa la programación, Stanford Engineering Everywhere tiene unos cursos excelentes. El curso Programming Methodology http://see.stanford.edu/see/lecturelist.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111 (http://see.stanford.edu/see/lecturelist.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111) es un curso de introducción a la programación a través del lenguaje Java.
Ok revisando amigo gracias  ;D


Título: Re: Necesito un guia programador!
Publicado por: Klixz en 2 Junio 2014, 13:06 pm
Si, no es simple, pero puedes hacerlo .todo con java

Si es por simplicidad del lenguajes para aprender, apoyo vb6 o php, hay pocos tan completos y simples como esos 2

No hay mejor lenguaje, sino mejor programador.



Te recomiendo empezar por un nuevo lenguaje, que es Dart de Google, es eficaz y sencillo de aprender, te lo recomiendo.

Te dejo su Página oficial DartLang (https://www.dartlang.org/)

Adiós y cuídate


Título: Re: Necesito un guia programador!
Publicado por: daryo en 2 Junio 2014, 14:04 pm
Citar
No hay mejor lenguaje, sino mejor programador.
no estoy de acuerdo. si comparamos por ejemplo visual basic o brainfuck vs c++ es claro cual es el mejor lenguaje.


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 2 Junio 2014, 14:09 pm
no estoy de acuerdo. si comparamos por ejemplo visual basic o brainfuck vs c++ es claro cual es el mejor lenguaje.

XD pensaba mas o menos eso, pero luego recodé el fin de brainfuck! recuerda que cada lenguaje tiene un fin, y brainfuck cumple muy bien con el suyo! con debugger es una excelente y explicita maquina de turing...

entonces queda entre c++ y VB y cada uno tiene un fin y no puedes decir que VB es peor, ya que entre todo es muy capaz, tanto como simple, en un programa contra c++ te puedes ahorrar un par de miles de lineas y horas de desarrollo


Título: Re: Necesito un guia programador!
Publicado por: daryo en 2 Junio 2014, 14:16 pm
Citar
entonces queda entre c++ y VB y cada uno tiene un fin y no puedes decir que VB es peor, ya que entre todo es muy capaz, tanto como simple, en un programa contra c++ te puedes ahorrar un par de miles de lineas y horas de desarrollo

contradices cualquier cosa que digo ._.  xD!.

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++.


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 2 Junio 2014, 14:23 pm
contradices cualquier cosa que digo ._.  xD!.

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++.
lo siento XD soy así me gusta defender a los olvidados! XD

tienes razón en eso de que c++ tienes más control! XD por eso digo cada lenguaje tiene un fin! XD (es como comprar un sincrónico y un automático, te apuesto que en autopista con sincrónico no puedes ir bebiendo cómodamente tu whisky con una mano y una hamburguesa con la otra mientras sorteas colas, bajadas y subidas! XD)

incluso pascal fue útil en este mundo por mucho que lo odie! XD



Título: Re: Necesito un guia programador!
Publicado por: ivancea96 en 2 Junio 2014, 14:34 pm
cada lenguaje tiene un fin

Quedémonos con eso.

Dificultad 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.

Y con respecto a lo del fin... ¿Qué juegos actualmente están hechos en ASM al 100%? Y... ¿Bases de datos? ¿En VB.NET o en SQL?


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 2 Junio 2014, 14:51 pm
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


Título: Re: Necesito un guia programador!
Publicado por: daryo en 2 Junio 2014, 14:55 pm
Citar
Dificultad 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
Código
  1. #include <qapplication.h>
  2. #include <qpushbutton.h>
  3.  
  4.  
  5. int main( int argc, char **argv )
  6. {
  7.    QApplication a( argc, argv );
  8.  
  9.    QPushButton hello( "Hello world!", 0 );
  10.    hello.resize( 100, 30 );
  11.  
  12.    a.setMainWidget( &hello );
  13.    hello.show();
  14.    return a.exec();
  15. }
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


Código
  1. #include <windows.h>
  2.  
  3. /*  Declare Windows procedure  */
  4. LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
  5.  
  6. /*  Make the class name into a global variable  */
  7. char szClassName[ ] = "CodeBlocksWindowsApp";
  8.  
  9. int WINAPI WinMain (HINSTANCE hThisInstance,
  10.                     HINSTANCE hPrevInstance,
  11.                     LPSTR lpszArgument,
  12.                     int nCmdShow)
  13. {
  14.    HWND hwnd;               /* This is the handle for our window */
  15.    MSG messages;            /* Here messages to the application are saved */
  16.    WNDCLASSEX wincl;        /* Data structure for the windowclass */
  17.  
  18.    /* The Window structure */
  19.    wincl.hInstance = hThisInstance;
  20.    wincl.lpszClassName = szClassName;
  21.    wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */
  22.    wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
  23.    wincl.cbSize = sizeof (WNDCLASSEX);
  24.  
  25.    /* Use default icon and mouse-pointer */
  26.    wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
  27.    wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
  28.    wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
  29.    wincl.lpszMenuName = NULL;                 /* No menu */
  30.    wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
  31.    wincl.cbWndExtra = 0;                      /* structure or the window instance */
  32.    /* Use Windows's default colour as the background of the window */
  33.    wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;
  34.  
  35.    /* Register the window class, and if it fails quit the program */
  36.    if (!RegisterClassEx (&wincl))
  37.        return 0;
  38.  
  39.    /* The class is registered, let's create the program*/
  40.    hwnd = CreateWindowEx (
  41.           0,                   /* Extended possibilites for variation */
  42.           szClassName,         /* Classname */
  43.           "Code::Blocks Template Windows App",       /* Title Text */
  44.           WS_OVERLAPPEDWINDOW, /* default window */
  45.           CW_USEDEFAULT,       /* Windows decides the position */
  46.           CW_USEDEFAULT,       /* where the window ends up on the screen */
  47.           544,                 /* The programs width */
  48.           375,                 /* and height in pixels */
  49.           HWND_DESKTOP,        /* The window is a child-window to desktop */
  50.           NULL,                /* No menu */
  51.           hThisInstance,       /* Program Instance handler */
  52.           NULL                 /* No Window Creation data */
  53.           );
  54.  
  55.    /* Make the window visible on the screen */
  56.    ShowWindow (hwnd, nCmdShow);
  57.  
  58.    /* Run the message loop. It will run until GetMessage() returns 0 */
  59.    while (GetMessage (&messages, NULL, 0, 0))
  60.    {
  61.        /* Translate virtual-key messages into character messages */
  62.        TranslateMessage(&messages);
  63.        /* Send message to WindowProcedure */
  64.        DispatchMessage(&messages);
  65.    }
  66.  
  67.    /* The program return-value is 0 - The value that PostQuitMessage() gave */
  68.    return messages.wParam;
  69. }
  70.  
  71.  
  72. /*  This function is called by the Windows function DispatchMessage()  */
  73.  
  74. LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
  75. {
  76.    switch (message)                  /* handle the messages */
  77.    {
  78.        case WM_DESTROY:
  79.            PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
  80.            break;
  81.        default:                      /* for messages that we don't deal with */
  82.            return DefWindowProc (hwnd, message, wParam, lParam);
  83.    }
  84.  
  85.    return 0;
  86. }
http://www.portalhacker.net/b18/tutorial-uso-apis-windows-para-crear-entorno-grafico/100744/


Título: Re: Necesito un guia programador!
Publicado por: engel lex en 2 Junio 2014, 15:04 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


Título: Re: Necesito un guia programador!
Publicado por: daryo en 2 Junio 2014, 15:11 pm
Citar
Citar
omo 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 .


Título: Re: Necesito un guia programador!
Publicado por: 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.


Título: Re: Necesito un guia programador!
Publicado por: daryo en 2 Junio 2014, 15:20 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


Título: Re: Necesito un guia programador!
Publicado por: daryo en 2 Junio 2014, 15:29 pm
perdon el offtopic recomiendo python para empezar a programar  ;-)


Título: Re: Necesito un guia programador!
Publicado por: ivancea96 en 2 Junio 2014, 15:30 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


Título: Re: Necesito un guia programador!
Publicado por: Klixz en 2 Junio 2014, 21:08 pm
Te recomiendo que aprendas Dart, sencillo y eficaz.

Suerte con ello.


Título: Re: Necesito un guia programador!
Publicado por: scott_ en 18 Junio 2014, 23:21 pm
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,
"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.




Título: Re: Necesito un guia programador!
Publicado por: ~ Yoya ~ en 19 Junio 2014, 07:03 am
Aprende un lenguaje que ademas te ayude a insertarte en el mercado laboral.

Y esa portabilidad que depende del SO, no están importante como antes. Todo esta a un nivel mucho mas abstracto. Lo normal es crear las aplicaciones como servicios para que otras aplicaciones independiente del lenguaje y del SO (que pueden ser otros servicios o simplemente clientes finales) puedan consumirlas o intercambiar información.

Y Déjate de joder, y comienza a programar.