@icarusmx/creta 1.0.13 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lessons/lesson1-system-decomposition.js +14 -14
- package/lessons/lesson2-object-requests.js +0 -3
- package/lessons/lesson3-only-way.js +0 -3
- package/lessons/lesson4-operation-signatures.js +0 -8
- package/lessons/lesson5-interface-set.js +0 -4
- package/lessons/lesson6-interface-design.js +0 -3
- package/package.json +1 -1
|
@@ -36,10 +36,10 @@ export class Lesson1SystemDecomposition {
|
|
|
36
36
|
|
|
37
37
|
async step1_SystemDefinitions() {
|
|
38
38
|
console.clear()
|
|
39
|
-
console.log("
|
|
39
|
+
console.log("Definición 1:")
|
|
40
40
|
console.log("El sistema es una totalidad deductiva de discurso")
|
|
41
41
|
|
|
42
|
-
console.log("\
|
|
42
|
+
console.log("\nDefinición 2:")
|
|
43
43
|
console.log("El sistema es un conjunto de cosas que relacionadas")
|
|
44
44
|
console.log("entre sí ordenadamente contribuyen a un determinado propósito")
|
|
45
45
|
|
|
@@ -48,10 +48,10 @@ export class Lesson1SystemDecomposition {
|
|
|
48
48
|
|
|
49
49
|
async step2_ApplyDefinitions() {
|
|
50
50
|
console.clear()
|
|
51
|
-
console.log("🏛️
|
|
51
|
+
console.log("🏛️ Ejemplo: Biblioteca Digital")
|
|
52
52
|
console.log("=" .repeat(40))
|
|
53
53
|
|
|
54
|
-
console.log("\n📚
|
|
54
|
+
console.log("\n📚 Definición 1 - Totalidad deductiva de discurso:")
|
|
55
55
|
console.log("Partiendo de 'Biblioteca Digital', ¿qué se deduce naturalmente?")
|
|
56
56
|
await this.waitForEnter("\nPresiona Enter para ver la primera deducción...")
|
|
57
57
|
|
|
@@ -62,7 +62,7 @@ export class Lesson1SystemDecomposition {
|
|
|
62
62
|
await this.waitForEnter("\nPresiona Enter para ver la deducción clave...")
|
|
63
63
|
|
|
64
64
|
console.log("\n⚡ Deducción clave:")
|
|
65
|
-
console.log("•
|
|
65
|
+
console.log("• Libros + Usuarios → deben interactuar")
|
|
66
66
|
console.log("• ¿Cómo? → préstamos, búsquedas, devoluciones")
|
|
67
67
|
console.log("\n💡 Conclusión: De 'biblioteca digital' se deduce naturalmente")
|
|
68
68
|
console.log(" un conjunto de libros y usuarios interactuando")
|
|
@@ -70,14 +70,14 @@ export class Lesson1SystemDecomposition {
|
|
|
70
70
|
await this.waitForEnter("\nPresiona Enter para la segunda definición...")
|
|
71
71
|
|
|
72
72
|
console.clear()
|
|
73
|
-
console.log("🎯
|
|
73
|
+
console.log("🎯 Definición 2 - Conjunto de cosas con propósito:")
|
|
74
74
|
console.log("¿Qué elementos relacionados contribuyen al propósito?")
|
|
75
75
|
|
|
76
76
|
console.log("\n📖 Elementos del sistema:")
|
|
77
|
-
console.log("•
|
|
78
|
-
console.log("•
|
|
79
|
-
console.log("•
|
|
80
|
-
console.log("•
|
|
77
|
+
console.log("• Libros - recursos que se prestan")
|
|
78
|
+
console.log("• Usuarios - quienes solicitan préstamos")
|
|
79
|
+
console.log("• Préstamos - relación temporal entre libro y usuario")
|
|
80
|
+
console.log("• Biblioteca - coordina todo el proceso")
|
|
81
81
|
|
|
82
82
|
console.log("\n🎯 Propósito determinado:")
|
|
83
83
|
console.log("Facilitar el acceso organizado a recursos bibliográficos")
|
|
@@ -225,20 +225,20 @@ export class Lesson1SystemDecomposition {
|
|
|
225
225
|
|
|
226
226
|
async conclusion() {
|
|
227
227
|
console.clear()
|
|
228
|
-
console.log("🎓
|
|
228
|
+
console.log("🎓 Conclusión: La Descomposición de Sistemas")
|
|
229
229
|
console.log("=" .repeat(50))
|
|
230
230
|
console.log("🎯 Hemos demostrado que:")
|
|
231
231
|
|
|
232
|
-
console.log("\n1️⃣
|
|
232
|
+
console.log("\n1️⃣ Sistema como totalidad deductiva:")
|
|
233
233
|
console.log(" • De 'biblioteca digital' se deduce naturalmente: libros + usuarios")
|
|
234
234
|
console.log(" • Esta deducción revela la interacción fundamental del sistema")
|
|
235
235
|
|
|
236
|
-
console.log("\n2️⃣
|
|
236
|
+
console.log("\n2️⃣ Sistema como conjunto con propósito:")
|
|
237
237
|
console.log(" • Elementos identificados: Book, User, Loan, Library")
|
|
238
238
|
console.log(" • Relaciones ordenadas: solicitud → evaluación → préstamo → devolución")
|
|
239
239
|
console.log(" • Propósito determinado: acceso organizado a recursos")
|
|
240
240
|
|
|
241
|
-
console.log("\n⚡
|
|
241
|
+
console.log("\n⚡ La parte difícil:")
|
|
242
242
|
console.log("¿Cómo decidimos que necesitábamos exactamente estos 4 objetos?")
|
|
243
243
|
console.log("¿Por qué no 3? ¿Por qué no 10? ¿Cuál es el criterio?")
|
|
244
244
|
|
|
@@ -14,9 +14,6 @@ export class Lesson2ObjectRequests {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
async start() {
|
|
17
|
-
console.log("🎯 LECCIÓN 2: Interacción a través de Solicitudes")
|
|
18
|
-
console.log("=" .repeat(50))
|
|
19
|
-
console.log("📚 Enunciado: Los objetos interactúan entre sí a través de solicitudes.")
|
|
20
17
|
console.log("\n💡 ¿Qué significa esto exactamente?")
|
|
21
18
|
console.log("- Los objetos NO acceden directamente a los datos de otros objetos")
|
|
22
19
|
console.log("- En lugar de eso, hacen SOLICITUDES específicas")
|
|
@@ -14,9 +14,6 @@ export class Lesson3OnlyWay {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
async start() {
|
|
17
|
-
console.log("🎯 LECCIÓN 3: Solicitudes como Única Forma")
|
|
18
|
-
console.log("=" .repeat(50))
|
|
19
|
-
console.log("📚 Enunciado: Las solicitudes son la única forma de conseguir que un objeto lleve a cabo una operación.")
|
|
20
17
|
console.log("\n💡 ¿Por qué ÚNICA forma?")
|
|
21
18
|
console.log("- No puedes forzar a un objeto a ejecutar algo")
|
|
22
19
|
console.log("- No puedes manipular directamente su estado interno")
|
|
@@ -14,14 +14,6 @@ export class Lesson4OperationSignatures {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
async start() {
|
|
17
|
-
console.log("🎯 LECCIÓN 4: Firmas de Operación")
|
|
18
|
-
console.log("=" .repeat(50))
|
|
19
|
-
console.log("📚 Enunciado: Cada operación declarada por un objeto debe incluir:")
|
|
20
|
-
console.log(" a) nombre de la operación")
|
|
21
|
-
console.log(" b) insumos necesarios para realizar la operación")
|
|
22
|
-
console.log(" c) el valor que regresa tras ejecutar la operación")
|
|
23
|
-
console.log(" Estos tres elementos constituyen la firma de operación.")
|
|
24
|
-
|
|
25
17
|
console.log("\n💡 ¿Por qué son importantes las firmas?")
|
|
26
18
|
console.log("- Define exactamente QUÉ hace la operación (nombre)")
|
|
27
19
|
console.log("- Define exactamente QUÉ necesita (insumos)")
|
|
@@ -14,10 +14,6 @@ export class Lesson5InterfaceSet {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
async start() {
|
|
17
|
-
console.log("🎯 LECCIÓN 5: Interfaz como Conjunto de Firmas")
|
|
18
|
-
console.log("=" .repeat(50))
|
|
19
|
-
console.log("📚 Enunciado: La interfaz de un objeto es el conjunto de todas sus firmas de operación.")
|
|
20
|
-
|
|
21
17
|
console.log("\n💡 ¿Qué significa esto?")
|
|
22
18
|
console.log("- Una interfaz NO es una sola operación")
|
|
23
19
|
console.log("- Es el CONJUNTO COMPLETO de todas las firmas")
|
|
@@ -14,9 +14,6 @@ export class Lesson6InterfaceDesign {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
async start() {
|
|
17
|
-
console.log("🎯 LECCIÓN 6: Diseño basado en Interfaces")
|
|
18
|
-
console.log("=" .repeat(50))
|
|
19
|
-
console.log("📚 Concepto: El énfasis al diseñar los objetos debe estar en la definición de sus solicitudes e interfaces.")
|
|
20
17
|
console.log("\n💡 ¿Por qué es importante?")
|
|
21
18
|
console.log("- Las interfaces definen QUÉ hace un objeto, no CÓMO lo hace")
|
|
22
19
|
console.log("- Facilita la colaboración entre objetos")
|