Programming

; develop a program

반응형

Back-End 96

[Python] permutations

이번 포스팅에서는 파이썬에서 itertools 모듈에 속한 함수인 permutations에 대하여 공부를 해보고자 한다. permutations란 permutations은 itertools 모듈에 속한 함수로서, 주어진 iterable(반복 가능한 객체)의 원소들을 조합하여 가능한 모든 순열을 생성하는 기능을 제공한다. permutations 함수는 사전식 순서(lexical order)로 순열을 생성한다. 다시 말해, 결과적으로 생성된 순열은 입력된 iterable의 원소 순서를 따라서 정렬된다. permutations 함수의 기본 구문 permutations(iterable, r=None) iterable: 순열을 생성할 iterable 객체입니다. 일반적으로 리스트나 문자열 등이 사용된다. r (선..

Back-End/Python 2023.06.07

[Python] pass와 continue 차이점

이번 포스팅에서는 파이썬에서 제어 흐름을 조작하는 데 사용되는 pass와 continue에 대하여 공부를 해보고자 한다. pass 아무런 동작을 하지 않고, 다음 코드로 진행하도록 하는 역할을 한다. 즉, pass는 아무 일도 하지 않고 코드의 흐름을 그대로 유지한다. 일반적으로 pass 문은 문법적으로 블록이 필요하지만, 프로그램적으로 아무 작업을 수행할 필요가 없는 경우에 사용된다. 주로 조건문, 반복문, 함수, 클래스 등에서 구현해야 할 기능을 나중에 구현할 때 사용된다. 예시 코드 for i in range(5): if i == 3: pass print(i) 위 예제에서 pass 문은 if 문의 블록을 비워두고 있다. pass 문은 아무 작업을 하지 않기 때문에, i가 3일 때 아무 작업 없이 다..

Back-End/Python 2023.06.03

[Python] load( ) & dumps( )

이번 포스팅에서는 파이썬에서 파이썬에서 JSON 데이터를 다룰 때 사용되는 함수인 load( ) & dumps( )에 대하여 공부를 해보고자 한다. load( ) & dumps( ) load( )와 dumps( )는 데이터 직렬화와 역직렬화를 수행하기 위한 함수이다. 이 함수들은 주로 Python에서 사용되며, 데이터를 파일에 저장하거나 네트워크를 통해 전송하는 등의 작업을 수행할 때 사용된다. load( )와 dumps( ) 함수가 사용되는 경우 데이터의 영속성 유지 load( ) 함수는 직렬화된 데이터를 역직렬화하여 메모리로 로드한다. 이를 통해 데이터를 파일에 저장하고 나중에 필요할 때 다시 읽어 들일 수 있다. 예를 들어, 프로그램이 종료된 후에도 데이터를 유지하고 싶을 때 pickle 형식으로..

Back-End/Python 2023.06.02

[Python] 람다 방식(lambda)

이번 포스팅에서는 파이썬에서 람다 방식(lambda)에 대하여 공부를 해보고자 한다. 람다 방식이란 람다(lambda)는 파이썬에서 함수를 간단하게 정의하기 위한 방식이다. 람다는 이름이 없는 익명 함수를 생성하는데, 이는 일회성으로 사용되는 간단한 함수를 만드는 데 유용하다. 람다 함수는 다음과 같은 구문을 가진다. lambda arguments: expression 여기서 arguments는 함수에 전달되는 인자들의 목록이며, expression은 함수의 기능을 나타내는 표현식이다. 람다 함수는 이 구문을 사용하여 인라인으로 함수를 정의하고, 그 결과를 변수에 할당하거나 다른 함수 내에서 사용할 수 있다. 예제 두 개의 숫자를 더하는 간단한 람다 함수 add = lambda x, y: x + y re..

Back-End/Python 2023.05.31

[Java] Object 클래스

자바로 프로그램을 구현하면서 주로 사용하는 String, Integer와 같은 클래스는 java.lang 패키지에 속해 있다. String >> java.lang.String Integer >> java.lang.Integer java.lang 패키지에는 기본적으로 많이 사용하는 클래스들이 포함되어 있다. 이번 포스팅에서는 자바(Java)에서 최상위 클래스인 java.lang.Object에 대하여 공부를 해보고자 한다. Object 클래스란 Object 클래스는 java.lang 패키지 중에서 가장 많이 사용되는 클래스이자 모든 자바 클래스의 최상위 클래스이다. 따라서 자바의 모든 클래스는 Object 클래스의 모든 메서드를 상속받아 바로 사용할 수 있다. 이러한 Object 클래스는 필드를 가지지 않으..

Back-End/Java 2023.02.10

[Java] 인터페이스 요소

이번 포스팅에서는 자바(Java)에서 인터페이스 요소에 대하여 공부를 해보고자 한다. 인터페이스 상수 인터페이스는 추상 메서드로 이루어지므로 인스턴스를 생성할 수 없으며 멤버 변수도 사용할 수 없다. 그런데 인터페이스에 다음 코드와 같이 변수를 선언해도 오류가 발생하지 않는다. public interface Calc { double PI = 3.14; int ERROR = -999999999; ... } Calc 인터페이스에 선언한 변수 PI를 컴파일하면 public static final double PI = 3.14, 즉 상수 3.14로 변환된다. int형 변수 ERROR 역시 public static fianl int ERROR = -999999999로 변환되어 상수로 취급된다. 인터페이스에 선언한..

Back-End/Java 2023.02.10

[Java] 인터페이스와 다형성

이번 포스팅에서는 자바(Java)에서 인터페이스와 다형성에 대하여 공부를 해보고자 한다. 인터페이스의 역할 인터페이스는 클라이언트 프로그램에 어떤 메서드를 제공하는지 미리 알려주는 명세(sepcification) 또는 약속의 역할을 한다. 인터페이스는 디폴트 메서드와 정적 메서드 구현부(implementation part)가 없다면 무용지물이다. 예를 들어 Abc 인터페이스를 구현한 A클래스와 이 클래스를 사용하는 Z 프로그램이 있다고 가정했을 때, ABC 인터페이스에는 구현할 추상 메서드가 모두 선언되어 있고, 어떤 메개변수가 사용되는지, 어떤 자료형 값이 반환되는지 선언되어 있다. 즉 Z 프로그램에서는 A 클래스의 구현 코드 전체를 살펴보지 않고 Abc 인터페이스의 선언부만 봐도 이 A 클래스를 어떻..

Back-End/Java 2023.02.09

[Java] 인터페이스(Interface)

자식 클래스가 여러 부모 클래스를 상속받을 수 있다면, 다양한 동작을 수행할 수 있다. 하지만 클래스를 이용하여 다중 상속을 할 경우 메서드 출처의 모호성 등 여러 가지 문제가 발생할 수 있어 자바에서는 클래스를 통한 다중 상속은 지원하지 않는다. 하지만 다중 상속의 이점을 버릴 수는 없기에 자바에서는 인터페이스라는 것을 통해 다중 상속을 지원하고 있다. 이번 포스팅에서는 자바(Java)에서 인터페이스(Interface)에 대하여 공부를 해보고자 한다. 인터페이스란 인터페이스란 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 중간 매개 역할까지 담당하는 일종의 추상 클래스를 의미한다. 인터페이스는 클래스 혹은 프로그램이 제공하는 기능을 명시적으로 선언하는 역할을 한다. 인터페이..

Back-End/Java 2023.02.09

[Java] final 예약어

이번 포스팅에서는 자바(Java)에서 final 예약어에 대하여 공부를 해보고자 한다. final 예약어란 final은 '마지막'이란 의미를 갖고 있다. 즉, 마지막으로 정한 것이니 더 이상 수정할 수 없다는 뜻이다. 자바 프로그램에서 final 예약어는 변수, 메서드, 클래스에 사용할 수 있다. 사용 위치 설명 변수 final 변수는 상수를 의미한다. 메서드 final 메서드는 하위 클래스에서 재정의할 수 없다. 클래습 fianl 클래스는 상속할 수 없다. 상수를 의미하는 final 변수 public class Constant { int num = 10; final int NUM = 100;//상수 선언 public static void main(String[] args) { Constant cons ..

Back-End/Java 2023.02.08

[Java] 템플릿 메서드(Template Method)

템플릿 메서드는 추상 클래스를 활용한 예시 중 하나다. '템플릿(template)'이란 사전 용어로 틀이나 견본을 뜻한다. 즉, 틀이 있는 메서드라는 의미이다. 이번 포스팅에서는 자바(Java)에서 템플릿 메서드(Template Method)에 대하여 공부를 해보고자 한다. 템플릿 메서드란 템플릿 메서드는 싱글톤 패턴과 같은 디자인패턴 중 하나로, 추상 클래스를 사용해 구현할 수 있다. 템플릿 메서드를 사용하면 실행의 순서는 정해놓고 구현은 상속받는 각 하위 클래스마다 다르게 할 수 있게된다. 템플릿 메서드의 안의 메소드중 하나 이상이 추상 메소드로 정의되며, 그 추상 메소드는 서브클래스에서 구현된다. 이렇게 하면 서브클래스에서 일부분을 구현할 수 있도록 하면서도 구조는 바꾸지 않아도 된다. 예제 pub..

Back-End/Java 2023.02.07
반응형