Recursos para aprender a programar

4036 сообщений, 135 страниц:  1; 12 1314 15 16; 135 ↖ Вернуться к списку тем

счёт: +38

391. r-althor,

Buenas. Aquí un perdido. Descargué eclipse y también el jdk, aunque me costó lo suyo.
Vi por allí que al instalar eclipse hay que elegir jaba hide debelopers, pero soy incapáz de hacerlo con nvda, ni siquiera con navegador de objetos, y con OCR no aparece. Hay alguna forma de hacerlo? y una vez hecho, cosas a tener en cuenta con eclipse y jaba?
Edito: agrego que buscando por aquí, bajé creo que de la página de eclipse un portable que en teoría estuve viendo que ya viene con el paquete de jaba, aunque no se si funcione igual que el instalable, calculo que si.

счёт: +0

Последнее изменение r-althor, 20.08.2019 18:08:27

392. Halliday,

Hola. Sí. Existe un paquete de Eclipse (Eclipse for Java Developers) que puede ser descargado directamente desde la página de Eclipse, para programar en Java. A parte debes instalar la máquina virtual de Java (Java SE 7 u 8), y el JDK (7 u 8 también) para que todo funcione correctamente. Una vez descargado e instalado todo (Excepto Eclipse que tan solo hay que descomprimir en el directorio que se quiera), ya podrás comenzar a programar.

счёт: +0

393. r-althor,

el jdk tengo la versión 8, y si bien creo que el paquete de eclipse que tengo es ese, lo estoy volviendo a bajar para sacarme la duda.

счёт: +0

394. BOFH ,

No olvides de configurar el PATH.

счёт: +0

395. rodrigo,

no uses el eclipse instalable por que no es accesible usa el portable

счёт: +0

396. BOFH ,

El eclipse instalable es accesible y más actualizado. simplemente hay que pedir ayuda para instalarlo. Después se maneja igual que el portable, que no es más que una versión anticuada.

счёт: +0

397. alfred,

Ojo el portable no es versión anticuada pues recive actualización igual que el instalable. Yo diría que son lo mismo y que cada quien instale lo que más le guste.
Yo instalé el eclipse instalable sin ayuda visual usando el OCR de NVDA y el cursor. se puede pero si no quieres luchar entonces usas la portable.

счёт: +0

398. r-althor,

veré lo del OCR con más calma. En principio no me reconoce nada, pero intentaré orientarlo a varios objetos a ver que pasa.

счёт: +0

399. alfred,

Igual en estos momentos no uso ni la instalable ni la portable sino liclipse que me parece es más rápido en el debugging.

счёт: +0

400. BOFH ,

como se debuggea en eclipse/liclipse? No lo entendí nunca.

счёт: +0

401. alfred,

Con python. El debug consiste como yo lo entiendo en crear puntos de salida para revisar el codigo en tiempo real. Es decir esas salidas pausan el programa, el programa se congela y de esa forma se pueden revisar todas las variables para ver como van o detectar algún bug.

Ejemplo si tienes una función como esta:

def prueba():
x = 1
while x < 10:
x += 1
print(x)

puedes insertar un break point en la linea print(x) y el programa se detendra siempre en ese punto. luego en la consola puedes escribir x para ver cual es el valor actual de x.
tras revisar todas las variables se preciona F8 para continuar el programa.

El breakpoint se puede lanzar de la forma anterior o con una tecla asignada. Por ejemplo puedo programar que si preciono F12 se ejecute el break point, o que si se cumple tal condición como que salte un error, se ejecute un breakpoint para congelar el programa y detectar la causa del error.

para poner un break point es necesario situarse en la parte del codigo en la que se desea colocarlo, y precionar CTRL + F10 y darle a add breakpoint.
Para agregarle una condición al break point se preciona CTRL+F10 y se le da en breakpoint Properties. allí se activa la casilla add condition, o algo similar y se escribe la condición. Por ejemplo X == 5 para que la función se detenga si x es igual a 5.

счёт: +0

402. BOFH ,

Lo que no tengo yo claro es cómo ver valores de variable. Metes la variable en consola a porrillo y ya está? Y si el programa pide otra cosa por consola?

счёт: +0

403. alfred,

Si pusiste el break point dentro de una función o clase no te puede pedir nada que no esté dentro de esa función o clase, es todo local. tu puedes sin embargo revisar el valor de una variable global.
También puedes agregar expreciones a ser observadas via wach. Click derecho o aplicación y add to wach list o algo similar. Luego con CTRL+f7 te desplazas a expressions y revisas en un árbol las expreciones agregadas, así no tienes que estar escribiendolas en la consola.
Por ejemplo click derecho en x y add to wach list en el ejemplo que puse te mostrará el valor de x cuando se lance el breakpoint.
Hay otra pestaña donde se listan todas las variables posibles. las globales y las variables donde se lanzó el break point. Creo que se llama global expresións, ahora no tengo el eclipse a mano. allí se puede ver todo lo posible sin escribir nada en la consola ni agregar expreciones a la lista wach list.

счёт: +0

404. BOFH ,

Y ya para rizar el rizo... ¿Se puede depurar línea a línea para ver si el programa pasa o no por algún sitio? Sería ya la leche.

счёт: +0

405. alfred,

Si. tan simple como agregar un print con el nombre de la función o clase al inicio te imprimirá en la consola lo que hallas puesto en ese print. aun que yo recomiendo para eso usar la librería logging y revisarlo mas cómodamente en otro editor mas de solo texto como el notepad++.
Por ejemplo:

def prueba():
print('iniciando prueba.')
x = 0
while x < 10:
x += 1
bla bla bla.

te mostrará en consola cada ves que pase por la función prueba el mensaje print de la primera linea de prueba().

Con logging sería algo así.

import logging

def prueba():
logging.debug('iniciando prueba.')
x = 0
while x < 10:
x += 1
bla bla bla.

Te imprimirá lo mismo pero en un archivo a parte, de texto o log o lo que tu decidas. ese archivo lo puedes abrir en un editor distinto al eclipse o liclipse como el notepad++.

Ojo que antes hay que configurar el logging. busca info en google sobre como configurar la salida de logging y demas, o pregunta que si estoy respondo.

счёт: +0

Последнее изменение alfred, 21.08.2019 12:21:50

406. BOFH ,

No me refería a eso. Me referería a ejeutar un programa línea a línea desde un breakpoint.

счёт: +0

407. Halliday,

Hola:

Depurar con Eclipse sí es posible. Al menos, en Java, que es donde yo lo utilicé en mis prácticas.

Para ello, tras poner un breakpoint donde lo necesitemos, tenemos que irnos a la pestaña "Variables" con la combinación de teclas alt + shift + q, v, e ir revisando el árbol que nos va mostrando.

Conforme vayamos ejecutando el programa con F5, F6, F7 o F8 dependiendo de nuestras necesidades, ese árbol irá variando y reflejando las nuevas variables y sus valores. De forma que si queremos ver el valor de la variable i de un for, tan solo deberemos expandirla, y bajar al nivel inferior. Entre las distintas informaciones que nos dará, estará el valor.

perdonad por la explicación tan breve, pero es algo que habría que ir explicando en el momento y con un caso real, que es como mejor se puede ver. Al menos yo, hasta que no me lo mostraron, pensaba al igual que mucha gente. Que no era posible.

счёт: +0

408. alfred,

Si se puede. desde que lanzas un breakpoint puedes en lugar de precionar F8 para salir del breakpoint precionar F5 para que continue a la siguiente linea, aunque como lo digeron antes el resultado no se muestra en la consola sino en la pestaña debug.

счёт: +0

409. rhavi,

holac chiscos lo eclipce portable lo descargo desde la página de paquetes de eclipce?

счёт: +0

410. CoachJos,

no, desde la página de eclipse solo puedes descargar el instalador, el portable lo descargas desde sourceforge.net busca eclipse portable en google y es de los primeros resultados.

счёт: +0

411. rhavi,

gracias amigo!

счёт: +0

412. alfred,

Programar en python puede ser mas fácil con liclipse pues a diferencia de eclipse no he tenido que instalar pydev ni ningún componente JAVA. Solo liclipse.

счёт: +0

413. r-althor,

yo eclipse portable lo descargué del primer resultado poniendo en google eclipse jaba hide debelopers.

счёт: +0

414. CoachJos,

Es cierto que liclipse ya viene preconfigurado para python, pero trae otros complementos que lo hacen más pesado, a eclipse solo se le pone pidev y listo. aunque con NVDA el proceso se hace más complicado pues el lector se cuelga en la pantalla de instalación de software, yo esa parte la hice con narrador. y solo porque el narrador no trae aún la opción para decir sangría y el complemento de eclipse si no lo usaría pues la fluídez es muy buena.

счёт: +0

415. alfred,

Me parece que es lo opuesto. precisamente liclipse se llama como eclipse pero con "li" al principio. li de lightweight lightweight = ligero. o de poco peso.

счёт: +0

416. sol-dorado,

Hola, y vengo yo con las dudas raras y existenciales, pero es que si no es así no se aprende. Tengo instalado jdk8, tengo configurado la variable PATH y lo necesario, voy a usar Notepad++ como editor ya que prefiero no liarla mucho a éste viejo pc,
y todo funciona sin problema.
Preguntas preguntonas:
¿en java todo el tiempo se trabaja bajo la estructura de clases?
nota: la pregunta la hago porque siempre los ejemplos son de la misma forma, no he visto hasta ahora
funciones ceparadas tal como se puede ver en javascript, php, c, c++, y claro, bgt.
Si todo funciona en base a clases ¿entonces como organizamos el código?
por más que imagino un monhtón de cosas anidadas no me aclaro, pongamos un ejemplo básico:
public class Miprograma {
public static void main(String[] arg)
{
String nombre="Andres";
System.out.println("Hola a todos, mi nombre es "+nombre);
}
}
En otros lenguajes los cuales no he aprendido pero si he leído a modo de exploración estás acostumbrado a ver la función main, y montón de funciones que resiven parámetros, algunas devuelven valores, y en el caso concreto de yo que vengo
de bgt estamos acostumbrados a tener un archivo a parte con un montón de objetos, (clases), incluso creo que eso ocurre en c++ de la misma manera, pero entonces ¿en java que onda?
por suerte en java veo que los parámetros a los métodos de clase se pasan igual, eso no me lía; ya sé que me van a decirque me olvide de todo lo que sé, que bgt no es una buena idea para aprender a programar, eso de sobra lo sé, pero imaginar un montón de objetos para todo, funciones que no están fuera de ellos, me comienza a dar un poco de estrés y no soy capás de imaginar la estructura de un pequeño juego, y me encantaría programar cosas pequeñas.
Básicamente porque listo, supongamos que la class Miprograma es digamos la estructura principal, pero luego no me aclaro si las otras partes van en archivos ceparados, o si simplemente dentro de la class principal van las otras con sus métodos, etc. Todo ésto por partes y suelto lo entiendo, los ejercicios, pero no logro decirnir que hacer para un proyecto un poco más grande. @BOFH, y el que pueda, vengan y salven a éste pobre ignorante del a programación en java xd.

счёт: +0

Последнее изменение sol-dorado, 26.08.2019 19:49:11

417. Rayo.bgtr ,

Bueno una característica de java es que es muy como decirlo... boluminoso? bueno no se me ocurre en este momento otro término para nombrarlo.
Pero si, java se maneja en vase a clases, métodos obgettos etc. deecho por lo que ee investigado del lenguaje está orientado para programación orientada a objetos.
pego algo de mi travajo de la mañana xD:
• Aunque java es un lenguaje relativamente sencillo de manejar, no es recomendado implementarlo con personas que apenas se unen a este mundo, ya que Java se basa en una filosofía de programación (la orientación a objetos) que es una evolución de otras formas de entender la programación mas sencillas de enseñar e implementar
• Su sintaxis comparada con C# o Python parece para algunos bastante engorrosa y al contrario que su semejante en .NET, C#, es un lenguaje que evoluciona muy lentamente.
Java no es un mal lenguaje, para nada pero a comparación de otros es un poco más engorroso de usar...

счёт: +0

418. BOFH ,

Cada clase es un archivo distinto. Esto va así, un ejemplo a ver si lo pillas:
Estructura: Paquete clases métodos.
si no ponemos nada, usa el dephault pacage. Para este caso da un poco igual
Ejemplo:
Clase pelota. Archivo Pelota.java
privat int veces;
Constructores sin y con parámetros.
Métodos get y set para veces.
Método público void rodar que imprime un mensaje chorra con las veces que ha rodado.
Clase Principal
Archivo Principal.java
Clase con el método main que crea un objeto Pelota p = new Pelota(); y llama al método p.setVeces(10); y luego p.rodar(); para que ruede la pelota.

счёт: +0

419. sol-dorado,

Yea muchísimas gracias, esto me aclara un montón de cosas. Pues nada, le seguiré dedicando tiempo, me gusta.
Por cierto, para quienes no sepan como hacer que Notepad++ muestre solo el nombre de archivo en la ventana, he aquí el truquillo: Preferencias, otros, marcar la casilla Mostrar sólo nombre de archivo en el título de la ventana. Preferible así, no sepierde tanto tiempo al leer los nombres.

счёт: +0

420. Rayo.bgtr ,

Vengo a crear polémica chicos....
Resulta que en el proyecto estudiantíl de mi bachi viene aprender python con la POO (programación orientada a obgetos) pero también está la obción de trabajarla en java.
y mi maestra dijo que nosotros no usaremos python hasta finales de semestre que porque java está mas preparado para la POO (en lo cual estoy un poco deacuerdo).
Pero aquí viene en donde difiero totalmente. Ella dijo que seguirá con java porque python se le hace un lenguaje muy simple y minimalista. y que a ella no le gusta.
Además que en la universidad es el lenguaje que se imparte, como ejemplo nos puso a hacer un hello world en consola (python) y preguntó que a quien le gustava mas python...
y pues yo levanté el vrazo
( no se cuantos mas) y ella dijo que quien prifirera python es porque no le gusta trabajar...
Y la verdad es que yo e estudiado un poco mas el lenguaje y me agrada mucho, además que investigué un poco sobre el lenguaje y encontré que la naza lo usa para muchos de sus programas, etc.
La verdad ese comentario no me agradó.... pero que piensan ustedes?

счёт: +0

4036 сообщений, 135 страниц:  1; 12 1314 15 16; 135 ↖ Вернуться к списку тем

Ответить на тему

Чтобы писать на форуме, вам нужно сначала войти.

Забыли пароль? Создать учётную запись