Markdown To PDF
Markdown To PDF
Avanzado)
En esta etapa, exploraremos patrones avanzados, gestión de estado compleja, optimización y conceptos más profundos en cada área.
function incrementar() {
contador++;
}
function obtenerContador() {
return contador;
}
return {
incrementar: incrementar,
obtenerContador: obtenerContador
};
})();
moduloContador.incrementar();
moduloContador.incrementar();
console.log(moduloContador.obtenerContador()); // 2
Recursos Recomendados:
Explicación: Avanzaremos hacia la capacidad de mantener conversaciones, entender textos más complejos y expresar opiniones:
El Pasado Simple (Präteritum): Otra forma de hablar del pasado, común en la escritura.
El Genitivo: El caso posesivo.
Oraciones Subordinadas: Conectores como weil, dass , obwohl, wenn .
Voz Pasiva (Passiv).
Vocabulario: Discusiones, noticias, viajes, trabajo.
Ejemplos:
Recursos Recomendados:
Deutsche Welle (B1 y B2): Continúa con los cursos.
Libros de gramática alemana para nivel B1/B2.
-- Procedimiento Almacenado
CREATE OR REPLACE PROCEDURE actualizar_stock(producto_nombre VARCHAR, cantidad_cambio INTEGER) AS $$
DECLARE
producto_id INTEGER;
BEGIN
SELECT id INTO producto_id FROM productos WHERE nombre = producto_nombre;
IF FOUND THEN
UPDATE productos SET en_stock = (CASE WHEN cantidad_cambio > 0 THEN TRUE ELSE FALSE END)
WHERE id = producto_id;
RAISE NOTICE 'Stock actualizado para %', producto_nombre;
ELSE
RAISE NOTICE 'Producto % no encontrado', producto_nombre;
END IF;
END;
$$ LANGUAGE plpgsql;
Recursos Recomendados:
"High Performance PostgreSQL for Scale and Availability" (libro): Greg Smith.
Documentación oficial de PostgreSQL.
// En un componente:
import { useCounterStore } from '@/store/counter';
import { storeToRefs } from 'pinia';
export default {
setup() {
const counterStore = useCounterStore();
const { count, doubleCount } = storeToRefs(counterStore);
const { increment } = counterStore;
Recursos Recomendados:
function useContador(initialValue = 0) {
const [contador, setContador] = useState(initialValue);
useEffect(() => {
console.log(`Contador actualizado a ${contador}`);
}, [contador]);
function MiComponenteConContadorPersonalizado() {
const { contador, incrementar } = useContador(10);
return (
<div>
<p>El contador personalizado es: {contador}</p>
<button onClick={incrementar}>Incrementar el contador personalizado</button>
</div>
);
}
Recursos Recomendados:
interface Coche {
marca: string;
modelo: string;
año: number;
}
Recursos Recomendados: