profile
'개발사(社)' (주)영진
post-thumbnail

[Kotlin in Action] 04. 클래스, 객체, 인터페이스

이번 장에서는 코틀린 클래스 다루는 방법을 살펴본다. 자바와 달리 코틀린은 인터페이스에 프로퍼티 선언이 들어갈 수 있고, 선언이 기본적으로 final이며 public이다. 또한 내포 클레스(nested class, 중첩 클래스)는 기본적으로 내부 클래스가 아니다.

2025년 8월 12일
·
0개의 댓글
·
post-thumbnail

[Kotlin in Action] 03. 함수 정의와 호출

1. Collection 만들기

2025년 7월 27일
·
0개의 댓글
·
post-thumbnail

[Kotlin in Action] 02. Kotlin Basic

다음은 코틀린으로 "Hello World!"를 출력하는 함수이다. 여기서 찾을 수 있는 코틀린 문법의 특성은 다음과 같다.함수를 선언할 때 fun 키워드를 사용한다.함수를 모든 코틀린 파일의 최상위 수준에 정의할 수 있으므로 클래스 안에 함수를 넣을 필요는 없다. 즉,

2025년 7월 21일
·
0개의 댓글
·
post-thumbnail

[Kotlin in Action] 1. Kotlin: What and Why

Kotlin은 JVM(자바 가상머신) 플랫폼과 JVM외의 다른 플랫폼에서 돌아가는 현대 프로그래밍 언어이다kotlin은 처음에 '더 나은 자바'의 목적으로 처음 개발된 언어이다. 그 후 최근 10년간, 코틀린은 단순 JVM을 훨씬 뛰어넘어 cross-platform 솔

2025년 7월 17일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 10. Dynamic Programming

복잡한 문제를 여러 개의 간단한 문제로 분리하여 부분의 문제들을 해결함으로써 최종적으로 복잡한 문제의 답을 구하는 방법이 정의만 봤을 때는, 앞서 다뤘던 분할 정복(divide and conquer)와 매우 유사하다고 느낄 수 있다. 두 알고리즘 모두 큰 문제를 작은

2025년 5월 21일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 09. Divide and Conquer

'큰 문제'를 '작은 문제'로 나누어서 해결하는 알고리즘조금 더 풀어 말하자면, 하나의 큰 문제를 작은 부분의 문제들로 나누고, 나눈 부분 문제를 해결하고 해결된 해들을 모아 원래의 문제를 해결해 나가는 방식이다. 따라서 크게 '분할 > 정복 > 결합'의 단계를 지닌다

2025년 5월 14일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 08. Greedy Algorithm

현재 상태에서 보는 선택지 중 최선의 선택지가 전체 선택지 중 최선의 선택지라고 가정하는 알고리즘위의 트리구조를 봤을 때, 그리디 알고리즘의 경우는 그 단계단계마다 무조건 제일 큰 쪽, 즉 최선의 선택지를 선택하는 것을 확인할 수 있다. 핵심 이론은 다음과 같다.Sol

2025년 5월 11일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 07. Brute-Force algorithm

Brute force algorithm이란?

2025년 4월 30일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 06. Minimum Spanning Tree(MST)

최소 신장 트리(Minimum Spanning Tree) > MST, 최소 신장 트리란 그래프에서 모든 노드를 연결할 때 사용된 에지들의 가중치의 합을 최소로 하는 트리이다. MST를 구현하는 대표적인 방식 두 가지는 '크루스칼'과 '프림'이 있다. MST는 다음

2025년 4월 16일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 05. Traversal of Graph

1. DFS(깊이 우선 탐색) 2. BFS(너비 우선 탐색) 3. Binary Search(이진 탐색)

2025년 4월 8일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 04. Basic Graph Implementation

'그래프는 Node와 edge로 구성된 집합이다'Node: 데이터를 표현하는 단위Edge: Node를 연결가중치(Weight): 에지에 부여된 숫자값Tree 또한 그래프의 일종Union-Find: 노드들이 같은 그룹에 속해 있는지 확인할 때 사용, 싸이클 유무 판단위상

2025년 4월 2일
·
0개의 댓글
·
post-thumbnail

[Algorithm] 02. Huffman Coding

Huffman Encoding이란? Greedy algorithm의 대표적인 예시 *Greedy Algorithm: 매 순간 가장 이득이 되는 선택을 하는 알고리즘 문자들의 '빈도수'를 기반으로, 자주 나오는 문자는 짧은 코드, 길게 나오는 문자는 긴 코드를 부

2025년 4월 1일
·
0개의 댓글
·
post-thumbnail

[Spring 스터디] 05. 회원 관리 예제 - 웹 MVC 개발

회원 웹 기능; 홈 화면 추가회원 웹 기능; 등록회원 웹 기능; 조회

2024년 11월 20일
·
0개의 댓글
·
post-thumbnail

[Spring 스터디] 04. 스프링 빈과 의존관계

의존성 주입(Dependency Injection): 컴포넌트 스캔앞서 개발했던 회원관리 서비스 개발에서, 회원 Controller가 회원 service와 회원 repository를 이용할 수 있도록 의존관계를 설정하려고 한다. 여기서 의존관계란, 한 객체가 다른 객체

2024년 11월 13일
·
0개의 댓글
·
post-thumbnail

[Spring 스터디] 03. 회원 관리 예제 - 백엔드 개발

비즈니스 요구사항 정리이번 스터디는 간단한 회원 관리 시스템을 개발해본다. 본격적인 개발을 시작하기 전에, 비즈니스 요구사항 및 웹 애플리케이션 구조와 클래스 의존관계에 대해 정의를 먼저 한다.데이터: 회원ID, 이름기능: 회원 등록, 조회데이터 저장소(DB)는 아직

2024년 11월 6일
·
0개의 댓글
·
post-thumbnail

[Spring 스터디] 02. 스프링 웹 개발 기초

정적 컨텐츠서버에서의 특별한 작업 없이 바로 클라이언트에 전달되는 파일들을 의미한다. HTML, CSS, Javascript, 이미지 파일과 같은 리소스들이 이에 해당된다. 스프링 부트는 정적 컨텐츠 기능을 자동으로 제공한다. 웹 브라우저에서 localhost8080/

2024년 10월 10일
·
0개의 댓글
·
post-thumbnail

[자료구조 스터디] 06. Recursion(재귀)

Recursion의 정의재귀란, 문제를 더 작은 문제들로 나누어 해결해가는 문제 해결 과정이다. 문제를 해결하기 위해 자기 자신을 호출하는 방식으로 문제를 풀어나간다. 다른 말로 '자기 호출'이라고 표현하기도 한다. 이는 수학적 귀납법과도 밀접한 연관이 있다. 1부터

2024년 10월 8일
·
0개의 댓글
·
post-thumbnail

[객체지향의 사실과 오해] 07. 함께 모으기

객체지향 설계의 세 가지 관점개념 관점(conceptual Perspective): 도메인 안에 존재하는 개념과 개념들 사이의 관계를 표현한다. 명세 관점(Specification Perspective):'사용자'의 영역인 도메인을 벗어나 '개발자'의 영역인 소프트웨어

2024년 10월 5일
·
0개의 댓글
·
post-thumbnail

[Spring 스터디] 01. 프로젝트 환경설정

스프링 프로젝트 생성'https://start.spring.io/' 접속해서 스프링 프로젝트 생성해보기프로젝트 선택: 최근에는 실무에서 거의 Gradle project만 사용Dependencies 선택: 어떤 라이브러리를 끌어다 쓸 것 인지를 선택Intelli

2024년 10월 3일
·
0개의 댓글
·
post-thumbnail

[자료구조 스터디] 05. 큐(Queue)

큐(Queue)란,영어 단어 'queue'는 마트에서 계산을 위해 줄을 서거나 번호표를 뽑고 줄서서 기다릴 때와 같이 이러한 '줄'을 의미하는 단어다. 자료구조에 이 큐를 접목시키면, 스택과 정반대로 가장 먼저 들어온 것이 가장 먼저 나가는, FIFO(Fisrt-in,

2024년 9월 23일
·
0개의 댓글
·