« first day (859 days earlier)      last day (2548 days later) » 

00:06
@PedroMiguelPimientaMorales ¿Tiene algo para mí?
00:35
@lois6b el libro de hoy es "Building Slack Bots" packtpub.com//packt/offers/free-learning
00:59
@PaulVargas digame que necesita y le busco
01:41
que hacen?
arreglando un bug :D
¿y tú?
ejercitando un con algoritmo
con un*
¿Haciendo backtracking?
es un ejercicio donde devuelvo los datos de un arbol por niveles
por ejemplo si tengo un nodo raiz 1 y es tiene 2 ramas que son 2 y 3 el oput seria 1,2,3
y despues irian los hijos de 2 y 3
02:01
@PedroMiguelPimientaMorales Pues... cualquiera cosa que usted crea que pueda ser de mi interés... si es usted tan amable.
buena voz
@PedroMiguelPimientaMorales ¿De qué depende? ¿De si ellos saludan primero? Dígame, señor.
@fredyfx Saludos, mister.
@PaulVargas saludos hermano :D
@fredyfx :-o Creí que usted era respetuoso... :'(
02:21
@PaulVargas ok, saludos Mister :D
02:33
una pregunta, en que situaciones uds aplicarian recursion y en cuales no?
02:46
depende del escenario
por ejemplo, donde usaría recursión es en encontrar caminos
03:00
@PaulVargas listo dejem le paso algo
@fredyfx deje le paso algo maestro
una forma de verlo puede ser decir, que si la funcion necesita pasar por un mismo proceso, el cual pareciera ser el reflejo de cientos de espejos, es un buen momento para aplicar recursion?
03:28
hola, saludos a todos!
 
3 hours later…
06:27
A las güenas :-)
¡¡ Madrugator !!
Ha venido del futuro para madrugarnos a todos
@Paula_plus_plus XDDDDDDDDDD
¿ Mu temprano hoy tu aquí, no ?
¡ ostia ! ¡ que frase mas rara m'aquedao !
@Trauma El viernes pasado tuve un "accidente". Resulta que me desperté 30 minutos antes de que sonase la alrama y en lugar de seguir durmiendo decidí levantarme, vestirme, desayunar y cuando subí al coche y poner RNE5 suena la cortinilla de "España a las 7". Me quedé loco porque normalmente entraba en el coche a las 8. Descubrí que me había despertado 90 minutos antes de la alarma, no 30.
El caso es que como ya estaba en el coche fui a trabajar y al llegar... ¡virgen santa! ¡había párquing por doquier!
@Paula_plus_plus ¡ JAJAJAJA ! No veas que palo !
Así que he tomado como propósito entrar antes :D
06:39
@Paula_plus_plus Algo bueno tenía que tener
@Paula_plus_plus Buena decisión
Aquí mucha gente entra a las 7:30 o a las 07:00, así que aparcar es una lata igual
pero salgo a las 17:30 :-)
con lo cual, ahorro 45 minutos de caravana de vuelta
@Trauma Yo tengo caravana de ida y vuelta, siempre, eterna. Pero al menos la esquivo callejeando.
@Paula_plus_plus Si, recuerdo que me lo comentaste una vez
aquí mucha gente entra/sale temprano, pero aun mas gente entra a las 8:00 y sale a las 18:00
y la pelotera a la salida es peor que la de entrada
media hora antes ... pues un mínimo de 45 minutillos de diferencia
Bueno, continuo con mi efecto 2038, a ver como nos va saliendo
encontré ayer un código en GitHub que implementa algunas de las funciones de time.h, para enteros de 64 bits
a meterlo dentro de una plantilla :-)
Oye, @Paula_plus_plus, una plantilla con un único parámetro, y que además tenga valor por defecto, no se puede usar tampoco sin necesidad de Nombre< >, ¿ no ?
template DateTimeType< int SOTT = sizeof( time_t ) > { }
para usarla, hay que utilizar < > igual, ¿ no ?
@Trauma Depende ¿función? ¿objeto? ¿alias? ¿variable?
no se puede poner solo DateTimeType algo;
clase
class
@Trauma ¿11, 14, 17?
06:47
11
@Trauma Entonces no xD
no, perdón
98
Buenos días!
@Trauma Menos aún xD
Xam
Xam
Hola @DavidDPG
06:48
@Paula_plus_plus Bueno, pues que se aguanten y pongan < >, que tampoco es tanto :-D
Sólo las funciones tienen deducción de los parámetros de plantilla, hasta que en 17 se añadió también a los objetos. Así pues, aún con parámetro por defecto se requieren los paréntesis angulares.
@Paula_plus_plus Pues eso, que se aguanten :-)
@Trauma La manera pre C++17 de solucionar eso es con una función auxiliar.
Que los madrileños estos son muy quejicas
ya, tipo make_dtt( )
igual la pongo tambien
@DavidDPG ¡ Llegas tarde !! :-pp
@Trauma Y ahora quién es el quejica eh? Quién?
... Ha habido otra migración de dominio
Mi madrugator... :(
06:51
@DavidDPG Veo que ya estás concienciado sobre el tema de la inevitable pérdida del título ;-)
@DavidDPG excusas, excusas ...
¿ es con x o con s ?
Creo que viene de excusa
Por tanto, excusas?
Buenas
Escusa también es una palabra pero significa otra cosa
Y ya es miércoles así como quien no quiere la cosa
@Trauma ¿Por qué has borrado tu respuesta?
1
Q: Cómo calcular el Máximo Común Divisor de dos numeros enteros

GojiraUn ejercicio me pide realizar una función que calcule el máximo común divisor entre los dos numeros enteros que introduces en el programa al ejecutarse. Yo lo he hecho de la siguiente manera, pero creo que se puede optimizar y hacerlo mejor. Sobretodo en relación con el uso de variables de refer...

07:06
@Paula_plus_plus Porque cuando la respondí, me pareció una buena optimización ... 5 minutos después, me parecía una tontería ...
así que la borré
responde si quieres, que no la voy a recuperar
@Trauma Ya respondí, algo completamente distinto a lo tuyo, por lo tanto ambas respuestas no son excluyentes.
@Paula_plus_plus Mirando ...
Eh, el libro de hoy es un gimmick graciosete
@Paula_plus_plus Mira, una duda: ¿ que es mas rápido, una llamada recursiva con tail optimization, o un bucle ?
Se supone que serán iguales, ¿ no ?
Buenos dias
07:09
ah no, con tail optimization dependes del compilador :-p
@Trauma A mí me enseñaron que una tail el compilador lo suele pasar a bucle
Pero eso en java claro
@Trauma No tiene por qué. Una llamada de cola y un bucle pueden sufrir optimizaciones diferentes. Los bucles se pueden desenroscar, las llamadas de cola se pueden desrecursivar. Lo más rápido habrá que comprobarlo con pruebas.
@Trauma Y la optimización de bucles también dependes del compilador.
@Paula_plus_plus Sipe, pero sin optimizar ninguna de las 2 opciones, el bucle debería de ser mas rápido
es un simple jmp
77
Q: Support for OpenID ends on July 1, 2018

Joe FriendStack Overflow was an early and strong supporter of OpenID. We built our sign up/log in flow around it. We were idealistic and had high hopes, but these hopes weren't realized. Over the years people have wondered if OpenID is dead. We've had to remove support as OpenID providers pulled support or...

pero molaría ver pruebas sobre ambas versiones, ambas optimizadas :-)
07:11
@Trauma Posiblemente, pero no estoy seguro
@Paula_plus_plus Nos quedaremos con las ganas de saberlo :-p
@Trauma A no ser que alguien haga un benchmark... ¿dónde está benchmarkman cuando lo necesitas?
07:38
Buenos días
@Paula_plus_plus ¿ Cúal es la macro para comprobar si estamos en C++11 ?
para usar nullptr o NULL
Ya, __cplusplus <= 199711L
que no atinaba con las palabras a buscar :-)
Buenos dias ^^
@Trauma Perdón, fui a desayunar
@Paula_plus_plus ¡¡ No te perdono !!
@Trauma No esperaba menos de ti.
07:52
ya, que no atinaba con las palabrejas O_o
¿Cómo lo solucionas?

#if __cplusplus < 199711L
#define nullptr NULL
#endif
@Paula_plus_plus Exactamente así XD
Oye, como se actuaría en caso de desbordamiento del time_t
@Trauma Jon los crea y ellos se juntan.
si al hacer time( ), obtenemos un valor negativo, señal de desbordamiento
@Trauma Como cualquier desbordamiento de escalar, creo (debería consultarlo) que es dependiente de implementación
07:55
@Paula_plus_plus No, me refiero a como sacar el año real
if( time( ) < 0 ) { ...
Acabo de fabricar lo que hace 28 años juré no volver a crear. He creado una herramienta de muerte y lo he hecho con éxito. Lo he hecho porque filosóficamente estoy de acuerdo con tu objetivo. Puedo decir sin presunción que ésta es mi mejor espada. Si en tu viaje los dioses se interponen en tu camino, este acero los atravesará
aunque desborde, pero sigue conteniendo datos válidos
@Pikoh kill bill, vol 2
@Trauma Correcto. Buenos dias
@Pikoh A las güenas :-)
@Trauma std::time devuelve la fecha de calendario del sistema, en caso de erro devuelve (std::time_t)(-1)
08:02
ayer un usuario me preguntó que es un Stream y no supe como definirlo. ¿Alguien me daria una explicacion coloquial?
@Paula_plus_plus Instead, the behavior on Linux is undefined when the system time is out of the time_t range.
Ya empezamos ...
@lois6b puede valer algo como... una transmisión de datos continua? un canal de transferencia de datos continuo?
@Trauma Dónde has visto eso?
@Paula_plus_plus man 2 time
@Aritzbn hahah puede.. lo que yo le dije fue una manera de recoger y recorrer datos xDD
08:05
Na, ya está. A codificar un DateTimeManager
no, si no termino ... :-(
@lois6b una secuencia de datos que varía en el tiempo, y que no tiene límite definido o algo asi...
@lois6b yo si me preguntarían diría que es un canal por el que se transmiten datos de forma continua. Sin límite
@Trauma El comportamiento indefinido es una alimaña curiosa, en realidad el comportamiento está definido en algún sitio, aunque sólo sea en el código fuente. Me sorprende que el man no de detalles.
@Trauma ¿Y cómo piensas testar fechas raras? ¿cambiarás la fecha de tu sistema?
@Paula_plus_plus Supongo que variará bastante entre versiones del Kernel
@Pikoh gracias. Ayer tuve que hacer peripecias para poder resolver algo bastante simple en principio xD
08:07
@Paula_plus_plus no, obtengo la fecha de una máquina externa. Basta con un timer e ir incrementando un contador interno
la fecha inicial, digo
me actualiza aprox. 1 vez cada hora, y al arrancar
un TimeDateManager, y que todo el mundo tome la fecha/hora de ahí
y no se puede hacer nada hasta que no tengamos la hora
@Trauma ¿Se espera que se desincronice periódicamente como si la máquina que informa de la hora estuviera en una dimensión espaciotemporal diferente?
@Paula_plus_plus Se espera que me actualice cada hora. Es lo que pone en el funcional
Con eso tengo :-)
@Trauma Entonces confirmado, la máquina del tiempo está en una dimensión espaciotemporal distinta, de ahí la necesidad de sincronización periódica.
@Paula_plus_plus no hombre xDDD
Es que esa otra máquina se sincroniza mediante GSM, usando NTP
mientras que la nuestra es un sistema embebido
y el control de la fecha/hora es relativamente importante
@Trauma Si no está en otra dimensión ¿qué sentido tiene resincronizar? Una vez sincronizada, dado que se está en la misma dimensión, el tiempo transcurrirá igual.
Por cierto, he probado en godbolt.org tu código de mcd y el mío. Mi código genera menos ASM, pero no es algo que me sorprenda pues la función es más corta.
08:13
@Paula_plus_plus no lo se. Y la verdad es que me da igual
@Paula_plus_plus Anda, otra página nueva :-D
@Trauma Estoy intentando compartir, pero no se puede
o no lo encuentro
@Paula_plus_plus Na, no problem. La verdad es que no conocía el sitio
Vale, lo encontré.
Sinceramente, se me ha olvidado ASM así que no se qué versión es mejor
Ah, y es con flags por defecto, seguro que puede optimizarse mediante flags de compilación
@Paula_plus_plus no te lo vallas a tomar mu enserio, que es por no estar aburrido nada mas xD
bueno, aburrida tu
Alguien sabe si los puertos thunderbolt están solo en ordenadores de apple?
08:24
@Aritzbn son un standard de Intel
pueden estar en cualquier equipo. Otra cosa es que estén
@Trauma Ciertamente el aburrimiento me corroe
@Paula_plus_plus Pues si quieres, te mando faena
hazte una clase que encapsule un std::bind
@Trauma para conectar una gráfica externa a través de los mismo qué tal? es que una amiga se compro un portatil i7 con 8 de ram pero sin grafica y pues, lo quería para jugar y ...
@Trauma Estoy con las diapos de plantillas C++
@Aritzbn ni idea. Se que existen, pero ni los he visto siquiera :-(
08:27
Es que quería ver como identificarlo
por que el thunderbolt 3 es igual al usb type c...
@Paula_plus_plus pues si te aburres de los mismo ... tengo parado ahora mismo el nmc !!, a la espera de meterle mano ...
@Paula_plus_plus ¡ con plantillas variadicas y std::bind !! ¿¿ no te pica la curiosidad ??
xD
@Trauma ¿nmc? ¿No Me Cosco? ¿Nueve Milímetros Cúbicos? ¿Nunca Menciones Capibaras? ¿Normalidad Mandatoria Catalana?
@Paula_plus_plus No More Callbacks ! Así, con signo de admiración y todo :-)
@Trauma Ah, debí suponer que el acrónimo estaría en inglés viniendo de ti.
wrapper sobre libuv, usando std::bind para poner a la espera llamadas a funciones, y un thread-pool basado en moodycamel::concurrentqueue
un peazo de código eso último
@Paula_plus_plus jejeje ... es que queda mas cool XD
@Trauma Cool en inglés se pronuncia igual que Cul (culo en Catalán).
@Paula_plus_plus XDDDD
Entonces, supongo que para tí será menos glamuroso xDD
@Trauma Para mi, no tiene nada de especial que las cosas estén en Inglés, de hecho me enerva mucho que se abuse del Inglés... no es la primera vez que lo menciono.
@Paula_plus_plus Si, lo se. Efectivamente, no es la primera vez
08:34
Mi pipol y yo fuimos a una rave y nos pusimos a ful to crazy solo por los loles, no veas el swag que se gastan algunos de mis mates.
@Paula_plus_plus tengo miedo.
:( como es para poner curisva
Lo de mates no lo pillo
mates= compañeros
@Aritzbn *
hola
Oh wow
08:36
O _
Valen las dos
@Aritzbn Y tienes motivos.
Cursiva
@blonfu Mate es como "compañero", "colega", "camarada". Se usa como sufijo en varias palabras "workmate" (compañero/a de trabajo) "flatmate" (compañero/a de piso).
A mi loles me gusta :) es una palabra tan absurda, unas siglas minúsculas y en plural
@Paula_plus_plus ok, no conocía esa palabra
@blonfu El colmo del ridículo sobre LOL: escucharlo en lugar de leerlo en una partida online
08:38
@PabloLozano El recontracolmo, escuchar en una partida online: "Hay que me lol".
Una pregunta seria, cuanto se parece java a javascript? por que ambos se llaman "java"
@PabloLozano equis de
@Aritzbn Java is to Javascript what Ham is to Hamburguer
@Aritzbn Como ya dijeron por aquí: "Java es a Javascript lo que Pata a Patata".
Vaya
Entonces alguien que sabe java no tiene por que saber de javascript? quiero decir, se comparte algo entre ambos lenguajes?
08:40
@Aritzbn se comparte lo mismo que con c#
@Aritzbn Los de Netscape decidieron crear un lenguaje de scripting para su navegador, y como por entonces Java era el lenguaje de moda, decidieron que estaría bien relacionarlo
Se comparte el estilo de la sintaxis, heredado de C
todos tiene un antecedente común, pero son lenguajes diferentes (por llamar lenguaje a Jav. y jav.script)
2
XD
Gracias por contestar :)
@Pikoh Acepto que no te guste Java, pero si no consideras a Java un lenguaje, entonces C#, que es una copia, tampoco lo es :P
El jefe de mi jefe deduce que quien sabe java sabe javascript y creo que me van a meter en un proyecto de esto sin yo haber programado nada en javascript, así que...
08:43
@Aritzbn de hecho al principio tuvo otros nombres
@Aritzbn para los jefes si has hecho un curso de dos horas de algo eres el experto en ese algo
@Aritzbn Nunca está de más aprender Javascript, si sabes inglés hay bastantes libros y recursos
@PabloLozano es broma hombre. Y llamar copia a C# de Jav...es muuuuuuucho decir
@Aritzbn Comparte estructuras de control (if, switch) bucles (for, while, do-while) y varias sintaxis (distingue entre mayúsculas/minúsculas, usa llaves ({}) para delimitar ámbitos). Pero eso es algo que puedes decir de muchos de los lenguajes existentes no sólo Java VS JavaScript.
@PabloLozano lamentablemente,saber javascript ahora es practicamente imprescindible
Jul 11 '17 at 10:19, by PaperBirdMaster
@eferion Eso es lo que me preocupa. Sutter es un peso pesado de C# y dicen las malas lenguas que Microsoft creó C# porque no tenía (no le dejaban tener) control sobre C++... y ahora resulta que está intentando (otra vez) transformar C++ en C# xD
08:45
Al menos a niver basico
@PabloLozano nunca esta de más aprender cosas en general, pero me da un poco de miedo que me metan en ese proyecto por que es para un banco y... siento que es mucha responsabilidad para un becario como yo
@Aritzbn la responsabilidad es de tu jefe si te mete ahi sin supervision
@Pikoh ya pero si la lío o hago algo mal al que despiden es a mí, no a mi jefe xd
@Aritzbn Si eres un becario tu responsabilidad es igual a tu experiencia: pŕacticamente ninguna
de todas maneras, javascript es como cualquier lenguaje. Sabiendo C#, java....aprender javascript a nivel mas o menos básico es sencillo
@PabloLozano exacto
08:48
@PabloLozano Tengo experiencia de 6 meses ya, que no es mucho pero... es igual que tengo el ojete prieto, quiero que me contraten después para seguir cogiendo experiencia
Si tienes un nivel de inglés decente (como para leer un libro), el libro del creador de jQuery se me hace bastante ameno
Tutoriales y libros de javascript tienes millones, literalmente
y va al grano, asume que sabes programar en algún lenguaje "cercano", como Java o C#
@Pikoh Yo empecé a programar en BASIC xD
@Paula_plus_plus y yo. Y en código máquina metiendo los códigos del microhobby XD
08:49
@Paula_plus_plus Y, a pesar de la leyenda urbana, no te ha destrozado la mente :)
Hay algún edd para javascript o se desarrolla en la consola de comandos del f12 en caso de chrome?
@Aritzbn usa algun editor como sublimetext o visual studio code
@Aritzbn la consola de los navegadores es mas para depuración
@Pikoh vale, por si acaso voy a ir mirando en lo que deciden en que proyecto voy a estar xd
que poco me gusta el desarrollo web de verda'
@PabloLozano Te equivocas, yo era menos anormal antes de empezar a programar ;P
@Aritzbn bienvenido al club. Yo lo odio
eso lo metía yo a mano en mi tierna infancia
08:52
@Pikoh Si, yo también empecé con eso, recuerdo pasar horas copiando cosas sin entenderlas, un día decidí "retocar" las cosas que introducía a ver que pasaba xD
@Paula_plus_plus asi empezamos muchos :)
@Paula_plus_plus te suena el libro "El problema de los tres cuerpos "¿? me lo han recomendado
Por cierto, por si algun abuelo como yo tiene nostalgia: microhobby.speccy.cz/mhforever/index.htm
@Pikoh wow, qué web más chula xDD
@lois6b tu hasta que no pongas el libro de hoy,no tienes derecho a hablar nada
08:54
@Pikoh ya lo puse ... ¬¬
It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration Supuestamente es un comentario de Dijkstra
@PabloLozano gran persona, mejor algoritmo XD
@lois6b hmmm...porqué pensaba que era el de ayer?
@Pikoh nop. es que cuando yo lo pongo ya lleva unas horas puesto. y Fredyx se me adelanta a veces
@lois6b ya,pero me sonaba el título,no se porque. Mis mas humildes disculpas
08:56
@Pikoh pensé que me iban a pegar por decir que lo odio xd mi profe casi me mata cuando le dije que no me gustaba.
@Pikoh hahaha aceptadas.
@Aritzbn yo en mi empresa, cada vez que alguien quiere una app web, siempre les convenzo de que no XD
@Pikoh enchúfame allí, yo quiero trabajar contigo jajajaj
De hecho, teniamos una app web (que iba como el culo) y la pase a escritorio. Y la gente es mas feliz XD
@PabloLozano dudo que eso lo dijera dijkstra...
@Pikoh Cliente de escritorio? ¿pero te comunicas con HTTP con el servidor?
@Pikoh Por eso lo de supuestamente
08:59
@PabloLozano para que? me conecto al sqlserver directamente
en google las fuentes de la cita apuntan a otras páginas o libros que son recopilaciones de citas famosas
@Pikoh Ah, cliente pesado
@Pikoh gestionas la seguridad y permisos directamente ahi?
@PabloLozano active directory
Es aplicación interna de empresa por supuesto
@PabloLozano hmm..pues parece que si lo dijo, parece que he encontrado el paper original: cs.virginia.edu/~evans/cs655/readings/ewd498.html
@Pikoh a mi me alucina pensar ahora que se podía programar en cintas
> The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence.
xD
@blonfu es mejor aun: en tarjetas perforadas
09:03
@lois6b No me suena (Ö_ö)
@lois6b pues yo lo tengo todo: aprendi basic y cobol
@lois6b Es un libro de física?
@Paula_plus_plus @PabloLozano es de ciencia ficcion
@Pikoh yo eso no lo vi, pero aunque yo no tuve ordenador hasta mucho después si conocí gente con spectrums
@PabloLozano Anda, curiosamente opino igual, pero cambiando BAS͠IC҉ ҉̵͜p̡͡͞o̶r ͜͏Obj̸͡é̕ct̶͘i̵̧̨v͢͞è̕-͘C ͘͘ ҉̧ ̛ ̵̵͟ ͠ ̢ ͢͢
09:06
ZALGO
@PabloLozano esto es muy turbio en realidad
1325
Q: RegEx match open tags except XHTML self-contained tags

JeffI need to match all of these opening tags: <p> <a href="foo"> But not these: <br /> <hr class="foo" /> I came up with this and wanted to make sure I've got it right. I am only capturing the a-z. <([a-z]+) *[^/]*?> I believe it says: Find a less-than, then Find (and capture) a-z one or ...

Siempre me acuerdo de la respuesta cuando veo esas cosas...
@Paula_plus_plus de donde sacas esos caracteres?
@blonfu busca Zalgo is coming
@blonfu Mi cerebro los pone ahí cuando piensa acerca del lenguaje que más odio.
09:11
Visual Basic es Basic, verdad? viene a ser lo mismo
@Aritzbn Basic tiene pinta de ser más basic que VisualBasic xD
2
Ḿ̭͓̯o̵̙͙̜̝̫l̗͍̬̣͢a̴̤͓͍
@Aritzbn buff...no exactamente.Comparten mas o menos sintaxis,pero son diferentes
@Aritzbn No exactamente, creo que tiene algunas diferencias, pero no podría enumerarlas. Que yo sepa hay como cuatro familias de BASIC: BASIC, QBASIC, Visual Basic y Visual Basic.NET
@lois6b y menos visual :)
09:13
Visual basic es exclusivo de microsoft
Es que estaba mirando ejemplos y se parecían y bueno, eso
Pero si que he visto que se parecían un poco
@blonfu seh hahah
@Aritzbn Creo que básicamente (jajajaja) Visual Basic es orientado a objetos y BASIC no lo es.
@Paula_plus_plus visual basic es pseudo orientado a objetos (por no decir que no lo es) Visual Basic .net si es orientado a objetos
@Pikoh Pero, pero, pero... yo recuerdo haber usado Me (que viene a ser this) en Visual Basic 6 \_(Ö_ö)_/
09:18
@Paula_plus_plus si,por eso digo que es pseudo orientado a objetos. Pero no cumple todas las caracteristicas (por ejemplo, herencia) (si no recuerdo mal)
@Pikoh ¿Herencia es condición sine qua non para ser orientado a objetos?
@Paula_plus_plus hombre...yo diría que es una caracteristica principal no?
La programación orientada a objetos (POO, u OOP según sus siglas en inglés) es un paradigma de programación que viene a innovar la forma de obtener resultados. Los objetos manipulan los datos de entrada para la obtención de datos de salida específicos, donde cada objeto ofrece una funcionalidad especial. Muchos de los objetos pre-diseñados de los lenguajes de programación actuales permiten la agrupación en bibliotecas o librerías, sin embargo, muchos de estos lenguajes permiten al usuario la creación de sus propias bibliotecas. Está basada en varias técnicas, incluyendo herencia, cohesión, abstracción…
@Pikoh Yo diría que es una característica que un lenguaje orientado a objetos podría tener, pero no imprescindible. Puedes programar orientado a objetos sin siquiera tocar herencia ¿no?
@Paula_plus_plus una cosa es que no la uses, y otra que el lenguaje no disponga de ella
Los pilares de la poo son herencia, polimorfismo, abstracción y encapsulamiento(?)
09:20
@Aritzbn asi lo aprendi yo XD
C: mamá he aportado algo a una conversación (?)
JAJAAJA
@Pikoh yo igual
c# tiene herencia múltiple?
@Aritzbn Puedes tener polimorfismo sin poo y la abstracción es un concepto de diseño no de poo.
@Aritzbn no
@Aritzbn Puedes heredar de varias interfaces pero sólo de una clase (igual que Java)
@Paula_plus_plus puedes tener polimorfismo sin poo, pero no poo sin polimorfismo
09:22
Vale vale
@Pikoh Puedes tener un planeta sin atmósfera pero no puedes tener atmósfera sin planeta. Es una perogrullada.
@Paula_plus_plus realmente no puedes tener un planeta, la tierra es redonda y todos los planetas que conocemos son redondos, por lo que son redondetas(?)
@Paula_plus_plus correcto, por que la condicion sine qua non para tener atmosfera es tener planeta, como la condicion para tener poo es tener polimorfismo
@Pikoh No me has entendio. La poo es un paradigma múltiple que puede compartir múltiples características, algunas de ellas compartidas por paradigmas diferentes. No se puede decir que el polimorfismo es poo, se puede decir que el polimorfismo puede formar parte de poo, pero puedes tener poo sin polimorfismo.
@Paula_plus_plus lo pillé a amazon. ya te diré que tal
09:26
@Paula_plus_plus si claro que te he entendido, pero no lo comparto. Polimorfismo, o herencia, son partes basicas e imprescindibles de la poo. Si tienes alguna fuente que diga lo contrario, me gustaría leerla
@Pikoh No tengo fuentes, tengo conceptos.
@Paula_plus_plus conceptos propios o adquiridos?
Imagina el objeto A, con métodos a, b, c; y el objeto B, con métodos u, v, w; No puedes transformar A en B porque no hay polimorfismo, pero puedes instanciar A y B y llamar a sus métodos ¿es programación orientada a objetos? Si no es poo ¿qué es?
@Paula_plus_plus creo que es el problema en esta "discusión". En un programa en concreto, no tienes que hacer uso de todas las características del lenguaje para que sea poo. Poo es el lenguaje en si, que debe tener disponibles las características basicas de herencia, polimorfismo, abstracción y encapsulamiento. Otra cosa es que tu quieras usarlas o no,pero el lenguaje debe disponer de ellas para ser considerado poo
Ahora imagina un lenguaje no poo, pero con tipado blando, te permite usar números en lugar de texto y viceversa, de manera que hay un polimorfismo entre "1" y 1.
09:31
De hecho,tu puedes simular herencia, o polimorfismo en un lenguaje no poo, pero eso no convierte el lenguaje en poo
@Pikoh poo no es un lenguaje, es un paradigma. El paradigma gira en torno al concepto "objeto". El "objeto" puede (o no) tener herencia y puede (o no) tener polimorfismo. Quita los objetos de la poo y te quedas sin poo, quita cualquier cosa que no sean los objetos y seguirás teniendo poo.
@Paula_plus_plus a ver..poo no es un lenguaje, pero un lenguaje o es poo o no lo es.
@Pikoh Pues me estás dando la razón, si la herencia y polimorfismo fuesen parte indispensable de la poo, añadir esas características a un lenguaje no-poo lo transformaría en poo.
@Paula_plus_plus vaya...pues no se donde te doy la razón la verdad
@Pikoh "si la herencia y polimorfismo fuesen parte indispensable de la poo, añadir esas características a un lenguaje no-poo lo transformaría en poo".
09:33
@Paula_plus_plus si añades todas las caracteristicas si, no dos a elegir
@Pikoh Usaré una analogía. Tú me estás diciendo que las ruedas y volante son imprescindibles para un coche, con eso se infiere que cualquier cosa con ruedas y volante sería un coche, entonces yo te digo que una calabaza gigante con ruedas y volante es un coche y un coche con joystick y oruga no lo es.
Dado que las ruedas y el volante no son, de hecho, imprescindibles para un coche (un coche es un concepto diferente) no por añadir ruedas y volantes a algo obtienes un coche, y un coche con tracción diferente a ruedas y dirección diferente a volante no deja de ser coche.
@Paula_plus_plus yo te estoy diciendo que un paradigma se define por sus caracteristicas, y si no se cumplen estas no se cumple el paradigma. Usando tu analogía, yo te digo que para que sea un coche tiene que tener ruedas, volante, puertas y una forma determinada. Eres tu el que dice que con tener solo ruedas y volante ya es un coche
@Pikoh Correcto, y yo digo que un objeto, es un objeto, incluso aunque no sea polimórfico o heredable.
@Paula_plus_plus Un coche tiene más cosas que ruedas y volante, tiene carrocería, motor, frenos y demás, si tu a una calabaza le añades una carrocería con ruedas, volante, motor frenos y todo lo que hace a un coche, coche, la conviertes en un coche. Pero si solo añades ruedas y volantes a una calabaza no la conviertes en coche.
@Aritzbn Pues justo lo que digo (ñ_ñ)
09:39
No me entero entonces de donde está el problema de esta discusión
@Paula_plus_plus hombre,pues yo creo que es justo al reves de lo que dices
Tu dices que solo con que exista el concepto de objeto, ya es poo
lo que encaja en tu analogia que una calabaza, solo cono tener ruedas y volante, ya es un coche
@Pikoh Claro, porque a poo le quitas la o y se queda po xD
El polimorfismo y herencia son conceptos que se aplican sobre el objeto, no del paradigma.
@Paula_plus_plus pues volvemos al principio, para mi(y creo que en general) para que un lenguaje sea poo necesita mas características a parte de tener objetos
de hecho, el paradigma define todas las caracteristicas descritas, y no solo el concepto de objeto
@Pikoh Pues para mi, para que un lenguaje sea poo requiere objetos. El polimorfismo y herencia son características que pueden (o no) tener los objetos, pero no forma parte del paradigma.
Yo ya me he perdido de sobre lo que se estaba discutiendo...
09:44
@Aritzbn Te lo resumo, papá pone una semillita en mamá, entonces Lex Luthor llega del futuro y te hace la declaración de la renta.
@Paula_plus_plus para ti y para todo el mundo, obviamente el concepto de objeto es fundamental, pero tambien las caracteristicas
@Pikoh Las características son sobre el objeto, no sobre el paradigma.
@Paula_plus_plus las caracterisitcas no me las invento yo, están definidas en el paradigma
@Pikoh Si son características de paradigma, podrías tener lenguajes orientados al polimorfismo o lenguajes orientados a la herencia... y eso no existe. Lo que existe es lenguajes orientados a un paradigma que incluyen polimorfismo o herencia como utilidades para sus datos.
De todas maneras, es una discusion conceptual. Tu tienes un concepto mas laxo, y yo mas restrictivo, de lo que es un lenguaje poo
09:48
En sí, como yo lo estudié , un lenguaje poo es aquel que incluye tanto polimorfismo, como herencia, como encapsulamiento, como abstracción, por lo que, siguiendo esta definición cualquier lenguaje que tenga las cuatro características es un lenguaje poo. Es eso lo que hace a un lenguaje un lenguaje poo y no un lenguaje otra cosa
@Pikoh Si, la discusión es más filosófica que práctica.
bien es cierto que @Paula_plus_plus tiene algo de razón en el que hay lenguajes que normlemente se consideran poo y que en realidad no lo son en su totalidad. Por eso se habla a veces de oop puro, "pseudo" poo como yo dije de visual basic etc..
por ejemplo, c++,java, c#...no son poo "puros", como si lo son python,scala...
@Pikoh c++, java y c# no son poo "puros"? ¿Que es lo que no los hace puros?
Por cierto, ahora en la uni estoy dando programacion orientada a objetos, voy a discutirselo al profe
XD
@Pikoh Sinceramente, poco me fío de los profesores de programación... ya he comentado en este chat más de una vez y otros usuarios están de acuerdo.
09:55
@Paula_plus_plus yo tampoco,por eso lo digo :)
20
A: Is C# a 100% Object Oriented Programming Language?

GregIt depends on your definition of "Object Oriented Programming Language". Using your definition, yes C# meets 100% of the requirements: Abstraction Encapsulation Polymorphism Inheritance However, C# contains features that aren't strictly "Object Oriented" such as Enums Value ty...

@Pikoh Entonces, según esto, definimos un lenguaje poo "puro" , como un lenguaje que exclusivamente siga el paradigma de la poo y que no tenga otros elementos?
@Aritzbn como ves en esa respuesta, y en mi conversación con @Paula_plus_plus...en realidad se basa en opiniones y debe ser cerrada

« first day (859 days earlier)      last day (2548 days later) »