#7 Qué optimista. El año veinteavo un ingeniero no será el puto amo sino que estará despedido, porque cobra mucho y la empresa puede poner en su lugar al hijo/yerno del gerente. Total, solo tiene que enviar ese mail que dices al becario.
Ahora en serio, existe una tendencia absurda a hacer código overengineered. Si necesitas medir tu ego, mejor juega a ver quien mea mas lejos, que luego hay gente que tiene que leer tu código...
#14#15#35 Pues yo escribo year[19] ... Por aquello de darle un toque más internacional...
(Delirios de grandeza de pensar que tu código lo va a ver alguien más que tú mismo y puede que algún colega o jefe... si tal)
#28 El secreto está en el gigantesco ecosistema que se creó en su día, perfectamente documentado y mantenido.
Aunque la mayoría de ese ecosistema sea un mamotreto de proporciones astronómicas y su documentación más infumable que la Biblia en versos arameos, es justamente lo que hace que Java siga siendo ampliamente utilizado hoy en día.
#38, Usar un framework tiene sus ventajas, pero Yii no, por favor... Busca otra cosa, cuanto más pequeña, mejor. De hecho, su creador se ha pasado a Synfony2, lo cual no dice nada bueno ni de Yii, ni de Synfony
Ahora en serio, cualquier cosa que te facilite la vida, está bien. Y si se usa ampliamente, mejor para ti, que te da más oportunidades laborales.
Pero una vez que comprendas cómo funciona el cotarro, trata de usar aquello que realmente te haga las cosas más fáciles, y sobre todo, que no te limite.
Sobre el meneo, real como la vida misma, yo nunca he abandonado la doctrina KISS (es.wikipedia.org/wiki/Principio_KISS), y según va pasando el tiempo, creo ha sido la mejor decisión de mi vida.
#28 Ventajas de Java respecto a C hay unas cuantas: tienes orientación a objetos, contenedores genéricos, te despreocupas de punteros, hay una cantidad ingente de librerías modernas... no sé, en general es bastante más fácil de usar.
Respecto a C++ ya creo que sólo tiene que es algo más fácil de usar, pero más que nada porque tienes muchísimas menos opciones.
#5 Exacto, solo que en lugar de utilizar Java se utilizará otra lenguaje pero es lo mismico.
Lo bonito de la programación es su facilidad para hacer que te desconectes del mundo y solo pienses en como puñetas escribir el código para que el programa haga lo que tú quieres que haga.
La de salvajadas que se ven por ahí para hacer cualquier puta irrelevancia donde alguna estrellita del código ha gastado todas las opciones que le ofrecía el lenguaje. Y por supuesto, sin ni un puto test, claro. Las estrellitas del código no escriben tests porque no hacen falta. Ni documentación, que el código "se lee solo" y si no sabes lo que hacen todas esas variables monoletra y sus complicadas operaciones y llamadas a 3 funciones distintas dentro de esa función que se supone que simplemente devuelve un fichero abierto, es porque no eres tan estrellita como ellos.
#58 No, te voy a decir que "mejor" depende del criterio de evaluación. Y la velocidad de ejecución o el consumo de recursos no son los únicos criterios posibles.
Pues no lo acabo de ver... todo depende de las necesidades. Si sólo necesitas que imprima "Hello World" ningún desarrollador en su sano juicio pasaría por estas etapas de complejidad.
#61 En el proyecto en el que estoy trabajando ahora he visto una de las mayors aberraciones de mi vida. Un broker (cojo mensaje, distribuyo a otros brokers y si la subscripción casa, se lo mando al subscriptor) implementado con maquinas de estado, runnables por todas partes, factorias y polladas varias. Es como coger el libro de gang of four y implementar X patrones entren o no. Terrible. Lo he tenido que rehacer solo por no ponerme a hacer modificaciones.
#59 C++ sí que devuelve por defecto "return 0;" si el código no especifica un "return" en la función "main".
The body of the main function does not need to contain the return statement: if control reaches the end of main without encountering a return statement, the effect is that of executing return 0;.
Lo he tenido que rehacer solo por no ponerme a hacer modificaciones.
Es que es lo que se debe hacer con la basura. Mi procedimiento habitual para tratar con ella es ese. No será la primera vez ni la última que heredo código y, tras echar un vistazo y ver que es una puta mierda, hago unos cuantos tests (que el menda de antes no ha hecho) para comprobar que cumple lo que promete y acto seguido todo fuera y a hacerlo como toca.
#68 Con C++ (es lo que dice la frase...). Para empezar en Java casi no puedes hacer gestión de memoria, como mucho decirle al GC cuando quieres que pase. Y luego más cosas, como poder marcar las funciones como inline, virtual o const, poder marcar las variables como register o volatile, tienes herencia múltiple, tienes move semantics, tienes el preprocesador (que a veces es útil)... en fin, unas cuantas cosas.
#54 Tranqui, que ya tengo un tiempo en esto y sé cómo funciona el cotarro. Ahora, lo del creador de Yii (Qiang Xue) no encuentro nada que diga que se ha pasado a Symfony2.
#61 Bueno. Si no entiendes un código es porque es una mierda, no porque no haya suficientes comentarios.
Por cierto, en general, un programador que escribe un código que sólo entienden programadores senior es un mal programador y le está haciendo una putada a su empresa.
#67 Me lo dices a mi ? Bahh no pasa nada.
No soy de la misma opinión. Aunque sea básico, que en eso no te contradigo, crea costumbre y es muy útil para sistemas tener esos códigos de salida (me he descubierto ).
Yo les meto returns ( exit, quit ... ) hasta a los pseucodigos.
#46 No sé si viene muy a cuento, pero me flipa muchísimo que un programador que no sea capaz de ganar más de 1200€ al mes en España se piense que puede ganar más en el extranjero. Pero mucho más me flipa que igual tiene razón!
Hasta el programador más mediocre se puede ganar bien la vida en el extranjero.
#77, no es por trolear, pero ¿ quién te asegura que los tests testan lo que tienen que testar ? ¿ No es acaso el test otro código que a su vez requeriría otro test, para cumplir con el mismo principio que promete ?
Nope. Ya quisiera acercarse, por ejemplo, Minecraft a Minetest con el segundo con el mod Carbone petado de módulos.
Que no, que se dejen de magufadas, que en la vida alcazarán a C++. En un i7 con un SSD no lo notas casi, pero un Core Duo maximiza la ventana del MC contra Minetest, anda, o mejor: En un P4. Ni lo intentes.
Todo el que dice que Java con JIT se acerca a C++ que baje de la nube e imagine un Unreal Engine 4 con "eso".
void main()
{
printf("Hello world\n");
}
¿Para qué necesitas una clase para imprimir "hola mundo"?
PROGRAM Hola Mundo;
PRIVATE fuente1;
BEGIN
fuente1 = load_fnt("help/help.fnt");
write(fuente1, 160, 100, 4, "Hola Mundo");
LOOP
FRAME;
END
END
wass... que no se quede DIV atras
println "Hello World"
Ahora en serio, existe una tendencia absurda a hacer código overengineered. Si necesitas medir tu ego, mejor juega a ver quien mea mas lejos, que luego hay gente que tiene que leer tu código...
(define hello (lambda () (displayln "hello"))
(hello)
C
20 PRINT "¡Hola Mundo!"
30 GOTO 20
Sin int ni return para el SO ?!?
Suspenso !! Con un 4,99
taskinoor.wordpress.com/2011/09/21/the-abuse-of-design-patterns-in-wri
echo "hello world"
(Delirios de grandeza de pensar que tu código lo va a ver alguien más que tú mismo y puede que algún colega o jefe... si tal)
Aunque la mayoría de ese ecosistema sea un mamotreto de proporciones astronómicas y su documentación más infumable que la Biblia en versos arameos, es justamente lo que hace que Java siga siendo ampliamente utilizado hoy en día.
pastebin.com/TA8D1CV4
Pregunto, porque C++ sí que sé que lo hace...
Ahora en serio, cualquier cosa que te facilite la vida, está bien. Y si se usa ampliamente, mejor para ti, que te da más oportunidades laborales.
Pero una vez que comprendas cómo funciona el cotarro, trata de usar aquello que realmente te haga las cosas más fáciles, y sobre todo, que no te limite.
Edito, en inglés viene mucho más completo: en.wikipedia.org/wiki/KISS_principle
Respecto a C++ ya creo que sólo tiene que es algo más fácil de usar, pero más que nada porque tienes muchísimas menos opciones.
Lo bonito de la programación es su facilidad para hacer que te desconectes del mundo y solo pienses en como puñetas escribir el código para que el programa haga lo que tú quieres que haga.
Aún así , excusas no me vale
La de salvajadas que se ven por ahí para hacer cualquier puta irrelevancia donde alguna estrellita del código ha gastado todas las opciones que le ofrecía el lenguaje. Y por supuesto, sin ni un puto test, claro. Las estrellitas del código no escriben tests porque no hacen falta. Ni documentación, que el código "se lee solo" y si no sabes lo que hacen todas esas variables monoletra y sus complicadas operaciones y llamadas a 3 funciones distintas dentro de esa función que se supone que simplemente devuelve un fichero abierto, es porque no eres tan estrellita como ellos.
10 PRINT "Hello World!"
END
000100 IDENTIFICATION DIVISION.
000200 PROGRAM-ID. HELLOWORLD.
000300
000400*
000500 ENVIRONMENT DIVISION.
000600 CONFIGURATION SECTION.
000700 SOURCE-COMPUTER. RM-COBOL.
000800 OBJECT-COMPUTER. RM-COBOL.
000900
001000 DATA DIVISION.
001100 FILE SECTION.
001200
100000 PROCEDURE DIVISION.
100100
100200 MAIN-LOGIC SECTION.
100300 BEGIN.
100400 DISPLAY " " LINE 1 POSITION 1 ERASE EOS.
100500 DISPLAY "Hello world!" LINE 15 POSITION 10.
100600 STOP RUN.
100700 MAIN-LOGIC-EXIT.
100800 EXIT.
pd. Lo siento le he dado al botón de negativo sin querer. Te lo compenso.
Me encanta la simplicidad del scripting de cmd para según qué cosas :-P
The body of the main function does not need to contain the return statement: if control reaches the end of main without encountering a return statement, the effect is that of executing return 0;.
en.cppreference.com/w/cpp/language/main_function
kcaicasestudy.files.wordpress.com/2014/01/success.gif
Cc #10
Lo he tenido que rehacer solo por no ponerme a hacer modificaciones.
Es que es lo que se debe hacer con la basura. Mi procedimiento habitual para tratar con ella es ese. No será la primera vez ni la última que heredo código y, tras echar un vistazo y ver que es una puta mierda, hago unos cuantos tests (que el menda de antes no ha hecho) para comprobar que cumple lo que promete y acto seguido todo fuera y a hacerlo como toca.
Por cierto, en general, un programador que escribe un código que sólo entienden programadores senior es un mal programador y le está haciendo una putada a su empresa.
No soy de la misma opinión. Aunque sea básico, que en eso no te contradigo, crea costumbre y es muy útil para sistemas tener esos códigos de salida (me he descubierto ).
Yo les meto returns ( exit, quit ... ) hasta a los pseucodigos.
True Story
Hasta el programador más mediocre se puede ganar bien la vida en el extranjero.
Eso no es standard!
------ HelloWorldTest.java
import org.junit.Test;
import org.mockito.Mockito;
import java.io.PrintStream;
public class HelloWorldTest {
@Test
public void test_hello_world_is_printed() {
PrintStream output = Mockito.mock(PrintStream.class);
HelloWorld hw = new HelloWorld(output);
hw.sayPhrase();
Mockito.verify(output).println("Hello world!");
}
}
------- HelloWorld.java
import java.io.PrintStream;
private class HelloWorld {
private final PrintStream output;
public HelloWorld(final PrintStream output) {
this.output = output;
}
public void sayPhrase() {
output.println("Hello world!");
}
public static void main(String[] args) {
HelloWorld hw = new HelloWorld(System.out);
hw.sayPhrase();
}
}
Estudio programación y nunca tuve ese problema con netbeans
Cc. #38
Ahí lo dejo.
Nope. Ya quisiera acercarse, por ejemplo, Minecraft a Minetest con el segundo con el mod Carbone petado de módulos.
Que no, que se dejen de magufadas, que en la vida alcazarán a C++. En un i7 con un SSD no lo notas casi, pero un Core Duo maximiza la ventana del MC contra Minetest, anda, o mejor: En un P4. Ni lo intentes.
Todo el que dice que Java con JIT se acerca a C++ que baje de la nube e imagine un Unreal Engine 4 con "eso".
Todo dicho.
HAI 1.2
CAN HAS STDIO?
VISIBLE "HAI WORLD!!!1!"
KTHXBYE