반응형

티스토리챌린지 14

Perl 서브루틴, 함수 호출부터 반환값까지 이해하기 - Perl #7

이번 글에서는 Perl 프로그래밍의 서브루틴 개념과 사용법에 대해 살펴보겠습니다. 서브루틴의 정의, 호출, 인자 전달, 반환값, 그리고 실제 응용 예제를 포함하여 실제 코딩시 유용한 내용이 되도록 정리합니다.  Perl 프로그래밍 서브루틴Perl에서 서브루틴(subroutine)은 반복적으로 사용할 수 있는 코드 블록을 정의하는 기능입니다. 이는 다른 프로그래밍 언어에서 함수(function)와 비슷한 개념으로, 동일한 코드를 여러 곳에서 재사용할 수 있도록 합니다. 서브루틴은 프로그래밍을 더욱 간결하고 가독성 있게 만들어 주며, 코드 유지보수에도 큰 도움을 줍니다.간단히 말해서, 서브루틴은 특정 작업을 수행하는 코드를 묶어서 이름을 붙인 것입니다. 이를 통해 복잡한 프로그램을 여러 작은 부분으로 나눌 ..

Perl 입출력 기본부터 활용까지 파일 모드와 예제 코드 - Perl #6

이번에는 프로그래밍을 하다 보면 자료를 참고한다든가, 수행 중 계산 결과를 잠시 저장한다든가 할 때 반드시 필요한 파일 입출력 기능에 대해 살펴보겠습니다. Perl 파일 입출력  파일 열기와 닫기Perl에서 파일을 열고 닫는 기본적인 방법을 먼저 살펴보겠습니다. 파일을 열기 위해서는 `open` 함수를 사용하고, 파일을 다 사용한 후에는 `close` 함수를 사용해 파일을 닫아야 합니다. 이 과정을 통해 파일이 손상되거나 예기치 않은 오류가 발생하는 것을 방지할 수 있습니다.    # 파일 열기open(my $file_handle, '`open` 함수는 파일을 열기 위한 함수로, 세 개의 주요 매개변수를 사용합니다.`$file_handle`: 파일을 다루기 위해 사용하는 핸들러입니다. 이것은 파일을 가리..

Perl 프로그래밍 문자열 처리 및 정규 표현식 - Perl #5

오늘은 Perl 프로그래밍의 문자열 처리에 대해 정리 보겠습니다. Perl의 기본적인 문자열 처리 기능을 정리해 보고 코드 예제를 통해 실제 코드 적용 방법을 살펴보겠습니다.  Perl 프로그래밍 문자열 처리문자열이란 문자의 연속된 집합으로, 예를 들어 "Hello, World!"와 같은 문장을 의미합니다. Perl에서는 문자열을 다루는 다양한 함수와 연산자를 통해 문자열을 쉽게 조작할 수 있습니다.    문자열 선언Perl에서 문자열을 사용하기 위해서는 먼저 변수를 선언해야 합니다. Perl에서는 문자열을 저장할 때 `$` 기호를 사용합니다. 예를 들어, 다음과 같이 문자열 변수를 선언할 수 있습니다.my $greeting = "Hello, World!";my는 변수를 선언할 때 사용하는 키워드로, 해..

Perl 데이터 구조 배열, 리스트와 해시 활용 방법 - Perl #4

오늘은 Perl의 데이터 구조에 대해 설펴보도록 하겠습니다. Perl의 주요 데이터 구조인 배열(Array), 리스트(List), 해시(Hash)에 대해 정리해 보고 코드를 통해 실제 적용하는 방법도 정리해 보도록 하겠습니다. Perl 데이터 구조  배열 (Array)배열은 Perl에서 순서대로 데이터를 저장하는 리스트입니다. 간단하게 생각해 보면, 여러 개의 데이터를 순서대로 나열하고 싶을 때 배열을 사용합니다.배열은 @ 기호를 사용하여 선언하며, 대괄호([])가 아닌 괄호(())를 사용하여 초기화합니다. # 배열 선언 및 초기화my @fruits = ("apple", "banana", "grape");# 배열의 요소 접근print $fruits[0]; # 출력: apple# 배열의 전체 출력fore..

Perl 프로그래밍 제어 구조, 조건문과 반복문 - Perl #3

Perl은 텍스트 처리나 간단한 스크립트 작성에 유용한 프로그래밍 언어로, 다양한 제어 구조를 통해 코드의 흐름을 제어할 수 있는 구조입니다. 이번 글에서는 Perl의 주요 제어 구조에 대해 살펴보고, 실행 가능한 예제를 다뤄보도록 하겠습니다. Perl 프로그래밍 제어 구조  조건문 (Conditional Statements)조건문은 프로그램의 흐름을 특정 조건에 따라 나누는 역할을 합니다. 가장 많이 사용되는 조건문으로는 if, elsif, else가 있으며, 이는 특정 조건을 만족할 때만 코드 블록을 실행하게 해 줍니다.   if, elsif, elseif는 조건이 참일 때 실행되는 블록을 의미합니다. 만약 여러 조건을 평가해야 할 경우, elsif나 else를 사용할 수 있습니다. my $age =..

Perl 프로그래밍, Hello World!부터 데이터 타입까지 - Perl #2

지난번에 Perl을 설치했으니 오늘은 "Hello world"를 출력해 보면서 기초적인 Perl의 문법에 대해 이야기를 시작해 보겠습니다. Perl 기초 문법  Hello, World! 출력하기프로그래밍 언어를 배울 때 가장 첫 번째로 배우는 예제는 "Hello, World!"를 출력하는 것입니다. Perl에서도 이 예제를 통해 기초적인 코드 구조와 실행 방식을 익힐 수 있습니다.   예제print "Hello, World!\n";print: Perl에서 출력을 담당하는 함수입니다. 화면에 원하는 문장을 출력할 때 사용합니다."Hello, World!": 큰따옴표로 감싸진 문자열입니다. 이 문자열을 화면에 출력합니다.\n: 줄바꿈줄 바꿈 문자입니다. Perl에서는 출력 후 다음 줄로 넘어가도록 줄 바꿈 ..

Perl 프로그래밍 언어에 대해 알아보자. 개요부터 설치까지 - Perl #1

그동안 여러 가지 프로그래밍 언어를 살펴봤는데요, 오늘부터는 Perl 스크립트에 대해 정리를 해 보겠습니다. Perl 프로그래밍 언어Perl은 1987년 래리 월(Larry Wall)에 의해 처음 개발된 프로그래밍 언어입니다. 당시 래리 월은 시스템 관리 작업을 간편하게 처리할 수 있는 도구가 필요했고, 이를 위해 Perl을 만들었습니다. Perl이라는 이름은 "Practical Extraction and Report Language"의 약자로, 데이터 처리와 보고서를 생성하는 데 실용적인 언어라는 의미를 담고 있습니다. 개발 초기에는 텍스트 처리와 데이터 조작에 집중했지만, 이후 다양한 기능을 갖추면서 다목적 프로그래밍 언어로 발전하게 되었습니다. Perl의 철학은 "There's More Than O..

C# Record 타입과 Init-Only 프로퍼티 불변 객체 활용법 - C# 25

오늘은 C# 프로그래밍 9.0 버전에서 새롭게 도입된 Record 타입과 Init-Only 프로퍼티의 개념에 대해 살펴보겠습니다. 이 두 기능은 객체의 불변성을 보장하면서도 간결하고 안전한 코드를 작성하도록 합니다.  C# Record 타입과 Init-Only 프로퍼티C#의 Record 타입은 .NET 5부터 도입된 새로운 데이터 구조입니다. 기본적으로 클래스를 사용해 데이터를 표현하는 것과 비슷하지만, `Record`는 특정 목적을 위해 더욱 간결하고 효율적인 문법과 기능을 제공합니다. 특히 `Record`는 데이터 모델링에 특화되어 있고, 데이터를 불변(immutable) 상태로 관리하는 데 유리합니다. 이는 클래스와 비교했을 때 `Record` 타입이 읽기 전용 데이터를 표현할 때 사용하기 쉽다는 ..

IDisposable 인터페이스를 활용한 C# 메모리 누수 방지 실전 가이드 - C# 24

C#은 가비지 컬렉터(Garbage Collector, GC)를 통해 대부분의 메모리 관리를 자동으로 처리합니다만, 관리되지 않는 리소스(Unmanaged Resources)를 사용할 때는 개발자가 직접 메모리를 정리하지 않으면 메모리 누수(Memory Leak)가 발생할 수 있습니다. 이러한 문제점을 방지 또는 보완하는 방법으로 `IDisposable` 인터페이스와 디스포저(Dispose) 패턴을 활용합니다. 오늘은 디스포저 패턴에 대해 살펴보고 메모리 누수를 방지에 대해 정리해 보고자 합니다. IDisposable 인터페이스를 활용한 메모리 누수 방지와 디스포저 패턴   관리되지 않는 리소스와 메모리 누수관리되지 않는 리소스는 .NET의 가비지 컬렉터가 자동으로 정리하지 않는 리소스를 의미합니다. 대..

C# 가비지 컬렉션 메모리 관리와 최적화 - C# 23

오늘은 C# 프로그래밍의 메모리 관리 핵심인 가비지 컬렉션(GC)을 이해하고, 이를 이용하여 효율적인 코드를 작성 방법에 대해 살펴보도록 하겠습니다. 가비지 컬렉션의 개념, 동작 원리, 세대별 관리, 실제 코드 예제 등을 알기 쉽게 정리해 보겠습니다. C# 가비지 컬렉션비지 컬렉션(Garbage Collection, GC)은 프로그램이 사용하지 않는 메모리를 자동으로 해제하는 기능입니다. 가비지 컬렉션의 목표는 필요 없어져서 더 이상 참조되지 않는 메모리를 회수하여 프로그램의 효율성을 높이고 메모리 부족 문제를 방지하는 데 있습니다. C#에서는 이러한 가비지 컬렉션 기능을 .NET 런타임 환경에서 자동으로 처리하므로, 프로그래머가 메모리 관리에 직접 신경 쓸 필요가 줄어듭니다.    가비지 컬렉터의 동작..

반응형