먼저버림
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()
Search
Categories
← 목록으로
Comments
“정결–재단–정체성–언약. 이 네 흐름이 한 장 안에서 이렇게 또렷하게 연결되는 게 참 은혜네요. 버릴 것 버리고, 예배 세우고, 주님이 주신 이름을 붙들고, 다시 언약으로 돌아오게 하시는 그 손길… 오늘 하루도 이 흐름 그대로 걷고 싶습니다.”