안녕하세요.
저는 자바(Java), 파이썬(Python), C 언어를 중심으로 프로그래밍을 가르치고 있는 강사이며, 현재 대구 그린컴퓨터아트학원에서 강의를 진행하고 있습니다.
저의 강의 철학은 “실습으로 배우는 프로그래밍”입니다. 단순히 이론을 전달하는 것이 아니라, 직접 코드를 작성하고 문제를 해결하는 과정을 통해 배우는 것이 가장 효과적이라고 믿습니다. 그래서 수업은 언제나 실습 중심으로 진행되며, 학습자들이 스스로 생각하고 응용하는 능력을 키울 수 있도록 지도하고 있습니다.
특히,
자바에서는 객체지향 프로그래밍의 핵심 개념과 프로젝트 실습,
파이썬에서는 데이터 분석, 자동화, 인공지능 기초 활용,
C 언어에서는 알고리즘 사고력과 시스템 프로그래밍 기반 다지기,
정보처리기사 실기에서는 기출문제 분석과 실전 대비 전략을 중심으로, 합격을 위한 실질적 학습 방법을 제공합니다.
최근에는 정보처리기사 실기 대비 강의를 통해 많은 수강생들이 자격증 합격에 도전하고 있습니다. 시험의 핵심은 기출문제에 있다는 점을 바탕으로, 출제 경향 분석과 반복 학습을 통해 수험생들이 단기간에 효율적으로 합격할 수 있도록 돕고 있습니다.
저는 학생들이 단순히 지식을 쌓는 것에서 그치지 않고, 혼자서도 문제를 해결할 수 있는 개발자로 성장하는 것을 목표로 합니다. 처음 프로그래밍을 배우는 분들에게는 재미와 성취감을, 취업이나 실무를 준비하는 분들에게는 실질적인 기술과 자신감을 드리는 강사가 되겠습니다.
앞으로도 더 많은 학습자들이 프로그래밍과 자격증 학습을 통해 새로운 기회를 열어갈 수 있도록 최선을 다하겠습니다.
여러분의 도전과 성장을 진심으로 응원합니다. 잘 부탁드립니다!
강의
수강평
- 2026 벼락치기 합격! 기출문제 집중 정보처리기사 실기
- 2026 벼락치기 합격! 기출문제 집중 정보처리기사 실기
- 2026 벼락치기 합격! 기출문제 집중 정보처리기사 실기
게시글
질문&답변
11강 따라하는중에 오류가 발생해서 문의드립니다.
안녕하세요! 제 강의를 수강해 주시고, 알찬 질문과 함께 열정적으로 학습해 주셔서 진심으로 감사드립니다.수강생분들께 더 나은 학습 경험을 제공해 드리고자, 기존 Spring Boot 강의에 부족했던 내용을 추가하여 보강했습니다. 전체적으로 새로 업데이트 할 예정입니다.궁금한 점이나 필요한 내용이 있으시다면 언제든 편하게 말씀해 주세요.질문자분의 성장을 응원합니다. 열공하세요!보강 강의 바로가기:https://inf.run/6JoxU
- 좋아요수
- 0
- 댓글수
- 1
- 조회수
- 32
질문&답변
수업노선자료파일 다운
https://forested-buffet-8b9.notion.site/C-Java-Python-287fbf9f0d33808d8b42d1e20120af49수업자료 파일 다시 보내드렸습니다. 불편을 드려 죄송합니다.ㅜㅜ
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 78
질문&답변
데이터베이스 노션
https://forested-buffet-8b9.notion.site/sqliteonline-com-2a6fbf9f0d3380fd8795c5e104fa6bc2여기에 접속 하시면 안되는 건가요? 불편을 드려 죄송합니다.
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 81
질문&답변
정보처리기사 실기 zip
(사진)혹시 여기 수업노션자료 파일에서 저기 링크를 클릭하게 되면 파일 다운로드가 안되는건가요?메일로도 보내드렸습니다. 불편을 드려 죄송합니다
- 좋아요수
- 1
- 댓글수
- 2
- 조회수
- 96
질문&답변
20년 4,5회 13번
샘플링 오라클(True Oracle)이라고 표기된 부분은 강의 자료 오류입니다.혼동을 드려 죄송합니다.정리하면 다음과 같습니다.참 오라클(True Oracle): 모든 입력값에 대한 기대 결과를 정확히 알고 있는 오라클샘플링 오라클(Sampling Oracle): 일부 대표 입력값(샘플 테스트 케이스)에 대해서만 기대 결과를 제공하는 오라클휴리스틱 오라클(Heuristic Oracle): 경험적 판단이나 직관을 기반으로 결과의 타당성을 판단하는 오라클일관성 검사 오라클(Consistency Checking Oracle): 이전 실행 결과나 다른 시스템 결과와 비교하여 일관성을 확인하는 오라클따라서 문제의 설명인“특정 몇몇 테스트 케이스의 입력값에 대해서만 기대 결과를 제공”이라는 내용은 샘플링 오라클(Sampling Oracle)에 해당합니다.
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 71
질문&답변
25년 3회 1번 문제
맞아요. 이 그림은 패키지 다이어그램 예시로 보면 됩니다.핵심은 이거예요.Order 패키지가Security 패키지를 import해서 사용하고Security 안에는 Credentials, MD5Crypt 같은 요소가 들어 있음자바 소스로 비슷하게 만들면 이렇게 볼 수 있어요.1) security 패키지// 파일: security/Credentials.java package security; public class Credentials { private String username; private String password; public Credentials(String username, String password) { this.username = username; this.password = password; } public String getUsername() { return username; } public String getPassword() { return password; } } // 파일: security/MD5Crypt.java package security; public class MD5Crypt { public String encrypt(String password) { // 실제 md5 구현 대신 예시용 return "MD5_" + password; } } 2) order 패키지// 파일: order/OrderService.java package order; import security.Credentials; import security.MD5Crypt; public class OrderService { public void loginAndOrder() { Credentials credentials = new Credentials("hong", "1234"); MD5Crypt md5Crypt = new MD5Crypt(); String encrypted = md5Crypt.encrypt(credentials.getPassword()); System.out.println("사용자: " + credentials.getUsername()); System.out.println("암호화된 비밀번호: " + encrypted); System.out.println("주문 처리 완료"); } } 3) 실행 클래스// 파일: Main.java import order.OrderService; public class Main { public static void main(String[] args) { OrderService service = new OrderService(); service.loginAndOrder(); } } 패키지 다이어그램과 자바 코드 연결해서 보기그림에서는 대략 이런 뜻입니다.Order → Security: Order 패키지가 Security 패키지에 의존한다import: 자바 코드에서 import security.Credentials; 같은 형태로 표현 가능Security 내부 요소: Credentials, MD5Crypt 같은 클래스가 그 패키지 안에 들어 있음즉, 자바 코드로 바꾸면 결국 이런 느낌이에요.package order; import security.Credentials; import security.MD5Crypt; 괜히 복잡하게 이해하려다가 시간 쓰는 문제 아니고, 이건 그냥 기출 암기 문제로 가져가는 게 맞아요 2020 / 2023 / 2025 반복 출제된것이기때문에 꼭 외우시길 바랍니다감사합니다.
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 98
질문&답변
25년 2회 8~11 3:14
코드 다시 보면System.out.print(run(f) + run((int n) -> n + 9));이건 사실 이렇게 풀어서 생각하면 이해가 쉽습니다:int a = run(f); int b = run((int n) -> n + 9); System.out.print(a + b);run()이 2번 호출됨그 안에서 각각 apply()가 실행됨각각 어떻게 실행되냐1⃣run(f)return f.apply(3);여기서 실행되는 apply는:(x) -> { if (x > 2) { throw new Exception(); } return x * 2; }3 > 2 → 예외 발생catch에서 7 반환2⃣run((int n) -> n + 9)여기 apply는:(int n) -> n + 9apply(3) → 12✅ "run()이 두 번 호출되기 때문에 apply도 두 번 실행된다"✔ 람다는 "함수 정의"일 뿐F f = (x) -> {...}👉 이건 실행이 아니라 정의만 한 것✔ 실제 실행은 여기서 일어남f.apply(3);👉 이게 실행 트리거요소역할F f = ...함수 정의run(f)함수 실행 요청f.apply(3)실제 실행run(...) + run(...)두 번 실행run()이 두 번 호출되기 때문에 apply()도 두 번 실행되는 것입니다.
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 82
질문&답변
자료 다운로드 건 문의 입니다.
다시 보내드렸긴 한데 혹시 다시 못받으시면 여기에서 받아주세요 불편을 드려 죄송합니다
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 124
질문&답변
수업 자료 질문 건
이메일 별도로 전달해드렸습니다^^
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 106
질문&답변
수업노션자료파일 자료 다운로드 건.
현재 링크를 통해서는 정상적으로 다운로드가 확인되고 있습니다.다만 계속해서 다운로드가 어려우신 경우,이메일 주소를 알려주시면 별도로 전달드리겠습니다.
- 좋아요수
- 0
- 댓글수
- 3
- 조회수
- 147




