먼저버림

2025년 12월 5일 10:54분

package com.jesusbornd.genesis;

import java.util.*;

public class Genesis_35_Chapter_Lv1_V2 {

    // --- 데이터 모델 ---
    static class Node {
        String ref;
        String krv;
        String esv;
        String key; // 그룹핑 키

        Node(String ref, String krv, String esv, String key) {
            this.ref = ref;
            this.krv = krv;
            this.esv = esv;
            this.key = key;
        }
    }

    // --- 대표 구절 4개 ---
    private static final List<Node> NODES = List.of(
        new Node(
            "창세기 35:2",
            "너희 중에 있는 이방 신들을 버리고 스스로 정결케 하고 의복을 바꾸라",
            "Put away the foreign gods… purify yourselves and change your garments.",
            "PURIFY"
        ),
        new Node(
            "창세기 35:7",
            "그가 거기서 단을 쌓고… 하나님이 그에게 나타나셨음이라",
            "He built an altar… because God had revealed himself to him.",
            "ALTAR"
        ),
        new Node(
            "창세기 35:10",
            "네 이름을 다시는 야곱이라 부르지 아니하고 이스라엘이라 부를 것이니라",
            "Your name shall not be called Jacob… but Israel shall be your name.",
            "IDENTITY"
        ),
        new Node(
            "창세기 35:12",
            "내가 아브라함과 이삭에게 준 땅을 네게 주고 네 후손에게도 주리라",
            "The land I gave to Abraham and Isaac I will give to you.",
            "COVENANT"
        )
    );

    public static void main(String[] args) {
        System.out.println("[Genesis 35 | KRV & ESV]");
        System.out.println("— Covenant Renewal Engine (초·중급 변주) —\n");

        // 키 그룹핑
        Map<String, List<Node>> map = groupByKey(NODES);

        for (String key : map.keySet()) {
            System.out.println("## SECTION: " + key);
            for (Node n : map.get(key)) {
                System.out.println(n.ref);
                System.out.println("KRV: " + n.krv);
                System.out.println("ESV: " + n.esv);
                System.out.println("=> " + explain(key));
                System.out.println();
            }
        }

        System.out.println("[Summary]");
        System.out.println("정결(35:2) → 단(35:7) → 새 이름 재확인(35:10) → 언약 재확인(35:12). "
            + "하나님은 야곱을 다시 일으켜 세우신다.\n");

        System.out.println("[Practice]");
        System.out.println("오늘 ‘정결-재단-정체성-언약’ 흐름 중 하나를 선택해 실천하자.");
    }

    // --- 키로 그룹핑 ---
    private static Map<String, List<Node>> groupByKey(List<Node> list) {
        Map<String, List<Node>> map = new LinkedHashMap<>();
        for (Node n : list) {
            map.computeIfAbsent(n.key, k -> new ArrayList<>()).add(n);
        }
        return map;
    }

    // --- key별 해석 제공 ---
    private static String explain(String key) {
        return switch (key) {
            case "PURIFY" -> "정결: 새출발은 ‘버림’에서 시작된다.";
            case "ALTAR" -> "재단: 하나님은 ‘다시 나타나시는 분’이다.";
            case "IDENTITY" -> "정체성: 야곱은 도망자에서 이스라엘로 변화된다.";
            case "COVENANT" -> "언약: 하나님은 약속을 잊지 않으시고 대를 이어 이루신다.";
            default -> "";
        };
    }
}

#### Genesis_35_Chapter_Lv1_V2.py
#### Variation: Covenant Renewal Engine (초·중급)

from dataclasses import dataclass
from typing import List, Dict

@dataclass
class Node:
    ref: str
    krv: str
    esv: str
    key: str

NODES: List[Node] = [
    Node("창세기 35:2",
         "이방 신들을 버리고 정결케 하라",
         "Put away the foreign gods… purify yourselves.",
         "PURIFY"),
    Node("창세기 35:7",
         "거기서 단을 쌓았더라",
         "He built an altar there.",
         "ALTAR"),
    Node("창세기 35:10",
         "네 이름은 이제 이스라엘이라",
         "Your name shall be Israel.",
         "IDENTITY"),
    Node("창세기 35:12",
         "아브라함과 이삭에게 준 땅을 네게 주리라",
         "The land I gave to Abraham and Isaac I give to you.",
         "COVENANT"),
]

def explain(key: str) -> str:
    return {
        "PURIFY": "정결: 새출발은 버림에서 시작된다.",
        "ALTAR": "재단: 하나님은 다시 나타나신다.",
        "IDENTITY": "정체성: 야곱은 이스라엘로 재확인된다.",
        "COVENANT": "언약: 하나님은 약속을 잊지 않으신다.",
    }.get(key, "")

def group_by_key(nodes: List[Node]) -> Dict[str, List[Node]]:
    result = {}
    for n in nodes:
        result.setdefault(n.key, []).append(n)
    return result

def main():
    print("[Genesis 35 | KRV & ESV]")
    print("— Covenant Renewal Engine (Python Variation) —\n")

    grouped = group_by_key(NODES)

    for key, rows in grouped.items():
        print(f"## SECTION: {key}")
        for n in rows:
            print(n.ref)
            print("KRV:", n.krv)
            print("ESV:", n.esv)
            print("=>", explain(key))
            print()

    print("[Summary]")
    print("정결 → 재단 → 정체성 → 언약. 하나님은 야곱을 새롭게 세우신다.\n")

    print("[Practice]")
    print("오늘 이 네 흐름 중 하나를 삶에 적용해 보자 — ‘버림·예배·정체성·언약’.")

if __name__ == "__main__":
    main()

Comments

Avatar
 2025년 12월 5일 10:55분

“정결–재단–정체성–언약. 이 네 흐름이 한 장 안에서 이렇게 또렷하게 연결되는 게 참 은혜네요. 버릴 것 버리고, 예배 세우고, 주님이 주신 이름을 붙들고, 다시 언약으로 돌아오게 하시는 그 손길… 오늘 하루도 이 흐름 그대로 걷고 싶습니다.”



Search

← 목록으로