Home
Apisapple
Cancel

리팩토링(5)_객체 사이의 기능 이동

메서드 이동 하나의 클래스에서 기능이 너무 많거나 클래스가 다른 클래스와 과하게 연동이 되어 의존성이 지나칠 때는 메서드를 옮기는 것이 좋다. 메서드를 옮기면 클래스가 간결해지고 여러 기능을 더 명확하게 할 수 있다. 방법 원본 클래스에 정의되어 있는 메서드에 사용되는 모든 기능을 확인한다. 기능을 확인하며 그 기능들도 전부 옮겨야 하는지...

스마트 컨트랙트 개발 중 enum class 활용

EOSIO 스마트 컨트랙트 개발 중 enum class 활용 회사에서 웹 서버 개발과 블록체인 스마트 컨트랙트 개발 업무를 하면서 다음과 같은 문제의 상황을 확인하였다. using namespace std; struct [[eosio::table]] person { name key; std::string first_name; ...

리팩토링(4)_method 정리_2

Refactoring (3)_method 정리 - 2nd 5. 직관적 임시변수 사용 사용된 수식이 복잡할 때, 수식의 결과나 수식의 일부부분을 용도에 맞는 직관적인 이름의 임시변수에 대입 방법 임시 변수를 final로 선언하고, 복잡한 수식에서 한 부분의 결과를 그 임시변수에 대입 그 수식에서 한 부분의 결과를 그 임시변수의 값...

EOSIO_1

EOSIO 지원환경 및 계정 권한과 합의 알고리즘 업무를 하며 Smart Contract에 대해서 공부를 하게 될 계기가 있었고 그 때 공부를 한 내용을 정리를 하고자 한다. EOSIO의 지원환경 EOSIO의 지원환경은 다음과 같다. Amazon Linux 2 CentOS 7 CentOS 7.x CentOS 8 Ubuntu...

리팩토링(3)_method 정리

Refactoring (3)_method 정리 - 1st 1. 매서드 추출 (Extract Method) 어떤 코드를 그룹으로 묶어도 괜찮다고 판단이 된다면, 그 코드를 빼내어 목적을 잘 나타내는 직관적인 이름의 method로 만들자. 방법 목적에 부합하는 이름의 새로운 method를 생성하자. 이 때 이름은 원리가 아닌 기능을 나...

리팩토링(2)

Refactoring (2) 리팩토링과 설계 사전 설계 없이 리팩토링만 하는 방법도 문제는 없지만, 작업에서 가장 효율적인 방법은 아님 리팩토링을 통해 사전 설계 과정에서 완벽한 솔루션을 찾을 필요가 없어진다. 즉, 설계가 단순해지는 효과가 나타난다. 리팩토링과 성능 빠른 SW를 작성할 수 있는...

M과 M(3)[백준 15651번]

N과 M(3) [백준 15651] 문제 문제링크 https://www.acmicpc.net/problem/15651 문제 내용 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도...

리팩토링(1)

Refactoring (1) 최근 업무를 하며 기존의 레거시 코드를 수정해야만 하는 일이 생겼습니다. 기존의 코드를 보면서 코드를 깔끔하게 작성하지 않았을 때, 수정하기 어렵고 다른 사람의 코드를 보았을 때 이해하기 어렵다는 것을 느껴 코드를 분리하고 클래스를 정리하는 등의 작업을 하였습니다. 그러던 중, 최근 토스 컨퍼런스에서 Clean...

정보보호기사_운영체제 이해 및 관리

정보화사회의 정보보호 운영체제 이해 및 관리 CPU(Central Processing Unit, 중앙처리장치)의 구조적 이해 CPU의 구조 이해 CPU 개념 입력장치로부터 자료를 받아 연산하고 그 결과를 출력장치로 보내는 일련의 과정을 제어 · 조정하는 핵심장치 사람의 두뇌에 해당 CPU의 구성요소 ...

정보보호기사_정보보호관리의 개념 1

정보화사회의 정보보호 정보사회의 특성과 정보화 역기능 정보사회의 특성 인터넷 확산과 전자상거래로 단일 생활권으로 압축 전자메일 및 인터넷을 통해 직접 방문없이 이체, 주식매매 등을 할 수 있음 기존의 전쟁개념에서 자동화된 지휘통제시스템과 바이러스를 사용한 사이버 전쟁 개념이 복합된 모습으로 변화 정보화의 역기능 개인의 ...