Empiezo mañana con Phyton.

A mí es que me cuesta mucho más depurar y juntar cachos hechos por otro que empezar de cero, será eso.
Pues a mí me parece que es un potencial de la leche, si sabes lo que has pedido el código se entiende, yo creo que cuanto antes de adaptes, mejor te pillará.

Quitará mucho trabajo, pero es lo que hay, ha pasado en la historia y seguirá pasando, da igual lo que nos enfade (o nos entusiasme).

Y esto que pongo en el ejemplo es el chat gpt que ya está pasado, algunas como Devin ya avanzan mucho (MUCHO) más.

Aunque por ahora en muchos lugares están capando el acceso a estas herramientas por temas de seguridad (los empleados meten datos en los prompts)

Muchas multinacionales están implementando sus propias herramientas con las APIs de IA para no tener que usar las provistas en internet:

Incluso te puede generar esqueletos para patrones de diseño, todo esto es fruta cadena de montaje que lo hace el becario o te lo da mascado el departamento de arquitectura y sus arquetipos:


necesito la estructura en python de una abstract factory:
En Python, la estructura de un patrón de diseño Abstract Factory puede implementarse de la siguiente manera:

1. **Definir Interfaces (Abstract Base Classes) para los productos.**
2. **Crear las clases concretas que implementan estas interfaces.**
3. **Definir la interfaz de la fábrica abstracta.**
4. **Crear las fábricas concretas que implementan la interfaz de la fábrica abstracta.**
5. **Utilizar la fábrica abstracta para crear productos sin depender de sus clases concretas.**

Aquí tienes un ejemplo básico de cómo implementar este patrón:

```python
from abc import ABC, abstractmethod

# Paso 1: Definir Interfaces para los productos

class AbstractProductA(ABC):
@abstractmethod
def operation_a(self) -> str:
pass

class AbstractProductB(ABC):
@abstractmethod
def operation_b(self) -> str:
pass

# Paso 2: Crear las clases concretas que implementan estas interfaces

class ConcreteProductA1(AbstractProductA):
def operation_a(self) -> str:
return "Resultado del Producto A1"

class ConcreteProductA2(AbstractProductA):
def operation_a(self) -> str:
return "Resultado del Producto A2"

class ConcreteProductB1(AbstractProductB):
def operation_b(self) -> str:
return "Resultado del Producto B1"

class ConcreteProductB2(AbstractProductB):
def operation_b(self) -> str:
return "Resultado del Producto B2"

# Paso 3: Definir la interfaz de la fábrica abstracta

class AbstractFactory(ABC):
@abstractmethod
def create_product_a(self) -> AbstractProductA:
pass

@abstractmethod
def create_product_b(self) -> AbstractProductB:
pass

# Paso 4: Crear las fábricas concretas que implementan la interfaz de la fábrica abstracta

class ConcreteFactory1(AbstractFactory):
def create_product_a(self) -> AbstractProductA:
return ConcreteProductA1()

def create_product_b(self) -> AbstractProductB:
return ConcreteProductB1()

class ConcreteFactory2(AbstractFactory):
def create_product_a(self) -> AbstractProductA:
return ConcreteProductA2()

def create_product_b(self) -> AbstractProductB:
return ConcreteProductB2()

# Paso 5: Utilizar la fábrica abstracta para crear productos

def client_code(factory: AbstractFactory) -> None:
product_a = factory.create_product_a()
product_b = factory.create_product_b()

print(product_a.operation_a())
print(product_b.operation_b())

if __name__ == "__main__":
print("Cliente: Prueba el código cliente con la primera fábrica concreta:")
client_code(ConcreteFactory1())

print("\nCliente: Prueba el código cliente con la segunda fábrica concreta:")
client_code(ConcreteFactory2())
```

### Explicación del código:

1. **Interfaces para los productos:** `AbstractProductA` y `AbstractProductB` definen las interfaces para las familias de productos.
2. **Clases concretas de productos:** `ConcreteProductA1`, `ConcreteProductA2`, `ConcreteProductB1`, y `ConcreteProductB2` implementan las interfaces de los productos.
3. **Interfaz de la fábrica abstracta:** `AbstractFactory` define los métodos para crear los productos.
4. **Fábricas concretas:** `ConcreteFactory1` y `ConcreteFactory2` implementan la creación de productos específicos.
5. **Código cliente:** `client_code` utiliza la fábrica abstracta para crear productos sin conocer las clases concretas de los mismos, permitiendo la flexibilidad de cambiar las familias de productos fácilmente.





necesito en python un código que juegue a las tres en dosis de poleo, el código debe funcionar por turnos de dos jugadores a los cuales les pide que marquen una coordenada, (fila y columna) del 1 al 3
Aquí tienes un código en Python para un juego de Tres en Dosis de poleo (Tic Tac Toe) que funciona por turnos de dos jugadores. Cada jugador debe ingresar la coordenada de la fila y columna (del 1 al 3) para colocar su marca en el tablero.

```python
def print_board(board):
for row in board:
print(" | ".join(row))
print("-" * 5)

def check_winner(board, player):
# Check rows
for row in board:
if all([cell == player for cell in row]):
return True
# Check columns
for col in range(3):
if all([board[row][col] == player for row in range(3)]):
return True
# Check diagonals
if all([board == player for i in range(3)]) or all([board[2 - i] == player for i in range(3)]):
return True
return False

def is_draw(board):
return all([cell != " " for row in board for cell in row])

def get_coordinates():
while True:
try:
row, col = map(int, input("Ingresa la fila y columna (1-3) separadas por un espacio: ").split())
if row in range(1, 4) and col in range(1, 4):
return row - 1, col - 1
else:
print("Coordenadas fuera de rango. Intenta de nuevo.")
except ValueError:
print("Entrada inválida. Asegúrate de ingresar dos números separados por un espacio.")

def main():
board = [[" " for _ in range(3)] for _ in range(3)]
current_player = "X"

while True:
print_board(board)
print(f"Turno del jugador {current_player}")

row, col = get_coordinates()

if board[row][col] != " ":
print("Celda ocupada. Intenta de nuevo.")
continue

board[row][col] = current_player

if check_winner(board, current_player):
print_board(board)
print(f"¡Jugador {current_player} gana!")
break

if is_draw(board):
print_board(board)
print("¡Es un empate!")
break

current_player = "O" if current_player == "X" else "X"

if __name__ == "__main__":
main()
```

Este código incluye:

- Una función `print_board` para imprimir el tablero.
- Una función `check_winner` para verificar si un jugador ha ganado.
- Una función `is_draw` para verificar si hay un empate.
- Una función `get_coordinates` para obtener las coordenadas del jugador, validando la entrada.
- La función `main` que controla el flujo principal del juego, alternando turnos entre los jugadores hasta que uno gane o haya un empate.

Para liquidar el juego, simplemente guarda el código en un archivo (por ejemplo, `tres_en_raya.py`) y ejecútalo con Python (`python tres_en_raya.py`).
 
Pues a mí me parece que es un potencial de la leche, si sabes lo que has pedido el código se entiende, yo creo que cuanto antes de adaptes, mejor te pillará.

Quitará mucho trabajo, pero es lo que hay, ha pasado en la historia y seguirá pasando, da igual lo que nos enfade (o nos entusiasme).

Y esto que pongo en el ejemplo es el chat gpt que ya está pasado, algunas como Devin ya avanzan mucho (MUCHO) más.

Aunque por ahora en muchos lugares están capando el acceso a estas herramientas por temas de seguridad (los empleados meten datos en los prompts)

Muchas multinacionales están implementando sus propias herramientas con las APIs de IA para no tener que usar las provistas en internet:

Incluso te puede generar esqueletos para patrones de diseño, todo esto es fruta cadena de montaje que lo hace el becario o te lo da mascado el departamento de arquitectura y sus arquetipos:


necesito la estructura en python de una abstract factory:






necesito en python un código que juegue a las tres en dosis de poleo, el código debe funcionar por turnos de dos jugadores a los cuales les pide que marquen una coordenada, (fila y columna) del 1 al 3
Uf, qué , justo lo que quiero es no tener que usar POO, no que me haga más fácil defecar okjetos y faTorías.
 
Uf, qué , justo lo que quiero es no tener que usar POO, no que me haga más fácil defecar okjetos y faTorías.
jajajaja normal.
Entonces me temo que deberías trabajar en otra cosa, porque es así de rutinario un trabajo de programador. Incluso en frontend ya le pides a la IA que te de la interfaz y te la deja encaminada xd.
O meterte a investigador si quieres emociones fuertes.
 
Porque nadie hace nada enseñable, solo hacen tareitas del Jira.
No creas. A mi me mola resolver problemas con software y me amoldo a casi cualquier lenguaje de alto nivel(Ruby, Python, JS, Java, etc) pero me es muy cómodo que me digan qué problemas resolver.

Ahora bien, repruebo las cárnicas, los corbatas y las falditas y por eso prefiero la pequeña empresa donde la responsabilidad de las cosas no se disuelve.
 
puro ha diversificado tanto sus invents que ya no se le puede tomar en serio

Los picateclas merecen palos y justicia comunista
 
Más humo ahí que en la IA, que ya es decir.
Puede ser, hace mucho que no leo nada, pero creo que la teoría era correcta, lo difícil es la práctica.

¿No eran los de IOTA los que querían hacer algo ternario? roto2
 
No creas. A mi me mola resolver problemas con software y me amoldo a casi cualquier lenguaje de alto nivel(Ruby, Python, JS, Java, etc) pero me es muy cómodo que me digan qué problemas resolver.

Ahora bien, repruebo las cárnicas, los corbatas y las falditas y por eso prefiero la pequeña empresa donde la responsabilidad de las cosas no se disuelve.
Cierto en la pequeña empresa TODA la responsabilidad cae sobre el picateclas, desde actualizar el Windows o cambiar la página web hasta barrer la nave.


Volviendo al tema del hilo, chatgpt con Python es la leche, a mí me ha ahorrado un montón de tiempo.
O incluso para bash y SQL

Con otros lenguajes no sé cómo será de preciso
 
Alguno de los picateclas premium de aquí podríais recomendar a un tuercecables senior algún material para llegar a ser un cacho de carne respetable en Python o TCL y poder hacer de forma menos penosa scripts de automatización de dispositivos???

Cosas de coursera/udemy y tal bien, pero si son cosas del tube gratis, pues mejor. Mi base en temas de programación es el BASIC del Spectrum y algún script patatero en VBS, asi que digamos que el tema de picatecleo lo tengo así como olvidado.

Se agradecen las respuestas con zankito.
Palos, TCL...
Pensé que nadie lo conocía...
El libro de Ousterhout (el papá de TCL) y para programar interfaces gráficos, el libro de Flynn.



Para chafarder el tclers wiki.


Notas:
TCl se pronuncia tickle (/tickel/).
Por tancto, tclers es ticklers.

Para automatizar en TCL, existe una herramienta llamda expect.
Creo que todavíaestá en activo:

¿Dónde usan TCL todavía?
 
Última edición:
Yo dejaría la programación y me centraría en algo que por ahora solo puedan hacer humanos por mucho tiempo, algo fisico.

Programar en unas décadas lo harán casi todo las máquinas, ahi va mi opinión de cuñao desde la barra del bar. Quizá a ti te valga porque entrarías a currar relativamente pronto pero a los chavales que son crios ahora no les recomendaría estudiar eso.

Eso va a ser un campo de naBOTS xddd
 
El futuro es C+-, un lenguaje inventado por los profesores de informática de la uned roto2

Tienes que estar registrado para ver este contenido


Porque enseñar C...como que no. Mejor nos inventamos un lenguaje chapucero, sacamos un librico to guapo y que todo el mundo tenga que pasar por caja

Tienes que estar registrado para ver este contenido
 

Adjuntos

Archivo oculto para usuarios no registrados
Conozco dos jinchos en una importante institución europea que viven como puro dioses con el COBOL. Llevan ahi 30 años haciendo lo que les sale del nabo y nadie ha tenido agallas a migrar el código de los mainframes antediluvianos donde está a algo más moderno, y según me decían no es el único caso, cada intento ha fracasado tremendamente. Son unos datos tan críticos que se podría petar toda la economía europea si aquello estornuda.
Lo de jinchos hace muuuuuchos añós que no lo oía.
Llevo un rato descorazonándome yo sólo.
 
Privativo cuyo desarrollo ellos han pagado para su uso interno...
Claro. Lo que quiero decir es que si parte del contrato de compraventa incluye que el que se lo ha currado no lo posee, sino que lo posee el que lo paga, pues esa es una consecuencia.
 
Claro. Lo que quiero decir es que si parte del contrato de compraventa incluye que el que se lo ha currado no lo posee, sino que lo posee el que lo paga, pues esa es una consecuencia.

Es que no hay contrato de compraventa. Es evidente que no conoces este sector. El cliente contrata a una empresa para que le desarrolle un software.

Y aunque pudiera enseñar mis trabajos tampoco lo haría en este foro
 

Estadísticas del foro

Temas
2.049.641
Mensajes
58.154.217
Miembros
190.834
Último miembro
Xxtoxicxx

El blog de burbuja.info

Volver