Skip to main content

리팩토링

· One min read

I. 개요

개념

외부적 기능은 수정하지 않고, 내부를 단순화하여 유지보수성을 향상시키는 기법

배경

애자일 개발 방법론의 도입으로 TDD를 기반으로 코드스멜을 제거하기 위한 리팩토링의 중요성이 강조됨.

II. 리팩토링의 핵심요소, 적용방안

가. 리팩토링의 구조 (구성도, 개념도)

나. 리팩토링의 핵심요소

가.에 그린 다이어그램을 3단 표로 작성

구분내용비고
---

다. 리팩토링의 적용방안

구분내용비고
비지니스 관점--
기술 관점--
보안 관점--

기출

  • 129/2/6

아키텍처 스타일, 디자인 패턴 비교

· 2 min read

I. 개요

개념

시사점

II. 차이점, 핵심요소, 적용방안

가. 아키텍처 스타일과 디자인 패턴의 차이점

구분아키텍처 스타일디자인 패턴
역할--

나. 아키텍처 스타일 유형

구분내용비고
MVC--
서버-클라이언트--
브로커--

다. 디자인패턴 유형

구분내용비고
생성패턴--
구조패턴--
행위패턴--

III. 아키텍처 스타일과 디자인 패턴의 적용 전략, 접근 전략

가. ~의 적용 전략 SWOT 분석

나. ~의 적용 방안

구분내용비고
공공(대국민서비스 향상)-
금융(가용성)-
민간(이윤추구)-

어려울 경우

구분내용비고
비지니스 관점--
기술 관점--
보안 관점--

IV. 적용시 추가적인 고려사항

  • 1
  • 2

기출

  • 131/2/6

CBAM 비용편익분석 방법

· One min read

I. ~의 개요

개념

개념도 또는 관계도

배경

SAAM, ATAM의 기술적 측면만 고려한 평가에서 기존 아키텍처 평가 방법의 한계로 비용 측면까지 고려 필요.

  • SAAM: Software Architecture Analysis Method
  • ATAM: Architecture Trade-off Analysis Method

II. 구조, 핵심요소, 적용방안

가. 구조 (구성도, 개념도)

나. 핵심요소

가.에 그린 다이어그램을 3단 표로 작성

구분내용비고
---

다. 적용방안

구분내용비고
비지니스 관점--
기술 관점--
보안 관점--

기출

  • 128/1/7

폭포수 개발 방법론, 애자일 개발 방법론 비교

· 3 min read

I. 개요

개념

배경

급변하는 비지니스 요구사항과 소비자의 니즈 변화에 대응하기 위해 SDLC 와 개발 리드타임이 짧아질 필요가 있음. 전통적인 폭포수 개발 방법론은 변경에 유연하게 대응하지 못하여 애자일 개발 방법론 대두.

II. 구조, 핵심요소, 적용방안

가. 구조

워터폴 그림 / 스프린트 그림

나. 핵심요소

구분폭포수애자일
요구사항기준요구사항 정의시 모든 요구사항 정의 필요한 스프린트 주기 (2w-1m)에 가능한 만큼 정의
테스트기능 구현 후 단위/통합/시스템 테스트TDD 기반의 테스트 주도 개발
프로세스프로세스 준수 강조리뷰와 테스트를 토대로 유연하게 적용

다. 폭포수, 애자일 방법론의 적용방안

구분내용비고
공공대국민 서비스는 전통적인 기능을 제공하는 경우가 많으므로 신 RFP 기반의 폭포수 개발 방법론 도입레거시어플리케이션
금융전통적인 여신/이체 기능과 신규 서비스 기능을 나눠 두 가지 개발 방법론 선택복합적
민간비지니스 니즈에 대응하기 위해 애자일 개발 방법론 도입인터넷 비지니스, 이커머스

인터넷 비지니스에 가까우면 애자일 개발방법론, 전통적인 기능을 제공하면 폭포수 개발방법론 적용.

기출

  • 131/1/3

기술사 - 에세이

· 4 min read

에세이

문제를 가지고 아래 내용들을 생각해봐야한다.

  1. 개념적 What: 무엇인가 핵심, 원리, 가치, 결어 (기술, 서비스, 절차 중 하나)
  2. Why: 왜 필요한가
  3. 구체적 What: 세부구성은 무엇인가 아키텍쳐, 구성도 (개념도), 구성요소 (소스, 매커니즘, 결과)
  4. How: 어떻게 구현하는가 Provider, Consumer 관점, 이전에는 뭐가 있었는지
  5. Who: 누가 찾고, 활용하는가
  6. 결론: 향후방안, 예상 이슈, 발전 방향

용어형

1교시

문1)
I. ~의 개요
- 개념
개념도 또는 관계도
- 시사점 || 배경
II. ~의 구조, 핵심요소, 적용방안
가. ~의 구조 (구성도, 개념도)
나. ~의 핵심요소
가.에 그린 다이어그램을 3단 표로 작성
| 구분 | 내용 | 비고 |
| --- | --- | --- |
| - | - | - |
다. ~의 적용방안
| 구분 | 내용 | 비고 |
| --- | --------------- | --- |
| 공공 | (대국민서비스 향상) | - |
| 금융 | (가용성) | - |
| 민간 | (이윤추구) | - |
어려울 경우
| 구분 | 내용 | 비고 |
| ---------- | --- | --- |
| 비지니스 관점 | - | - |
| 기술 관점 | - | - |
| 보안 관점 | - | - |
III. ~의 성공을 위한 추가적인 고려사항 || 성공 포인트
- 1
- 2
"끝"

서술형

2-4교시, 기승전결

문1)
답)

I. ~의 개요
가. ~의 개념
나. ~의 시사점 || 필요성 || 중요성 || 배경 || 목적
II. ~구조, 핵심요소, 적용방안
가. ~의 구조 (구성도, 개념도)
나. ~의 핵심요소
가.에 그린 다이어그램을 3단 표로 작성
| 구분 | 내용 | 비고 |
| --- | --- | --- |
| - | - | - |
III. ~의 적용 전략, 접근 전략
가. ~의 적용 전략
SWOT 분석
나. ~의 적용 방안
| 구분 | 내용 | 비고 |
| --- | --------------- | --- |
| 공공 | (대국민서비스 향상) | - |
| 금융 | (가용성) | - |
| 민간 | (이윤추구) | - |
어려울 경우
| 구분 | 내용 | 비고 |
| ---------- | --- | --- |
| 비지니스 관점 | - | - |
| 기술 관점 | - | - |
| 보안 관점 | - | - |
IV. ~의 성공을 위한 추가적인 고려사항 || 성공 포인트
- 1
- 2
"끝"

공통

  • 문제 내 단락은 줄을 띄우지 않는다.
  • 다음 문제는 2줄을 띄운다.
  • 체점자에게 파워포인트 프리젠테이션을 하는 것이다.

참조

aggrid 디버깅

· One min read

AGGRID

  • 풀스펙을 지원하는 그리드
  • 대부분의 기능들은 엔터프라이즈 모듈로 분기되어있다.

모듈정보

  • Modules
    • ag-grid-react는 통 패키지
    • @ag-grid-community, @ag-grid-enterprise 스코프 하위는 모듈
  • Modules - Example

데이터 페칭

  • onGridReady 이후 실행
const onGridReady = useCallback((params: GridReadyEvent) => {
fetch("https://www.ag-grid.com/example-assets/olympic-winners.json")
.then((resp) => resp.json())
.then((data: IOlympicData[]) => setRowData(data));
}, []);

코드 예시

  • Full Spec
  • 여기서 보는 게 낫다. 문서가 최신화 되어있지 않다.

기술사 - 알고리즘

· 8 min read

알고리즘

트리

이진탐색트리

  • Binary search
  • O(logn)O(\log n)

균형이진탐색트리

  • AVL Tree: Adelson-Velskii-Landis Tree
  • Balance Factor: BF(T)=HlHrBF(T) = H_l - H_r = T의 왼쪽 서브트리 높이 - T의 오른쪽 서브트리의 높이
  • BF(T)가 -1, 0, 1 중 하나를 만족해야함.
  • LL, LR, RR, RL 용어를 보기보단 그림을 보고 이해해야함.
  • 최적화되어 O(logn)O(\log n) 탐색 시간 보장

m-원 탐색트리

  • m-way Search Tree, Multiway Search Tree

B- 트리

B* 트리

  • B애스터 트리

B+ 트리

  • 모든 키의 값이 단말 노드에 순차 나열된다, 링크드 리스트로

Red Black 트리

T 트리

  • AVL Tree + B tree

그래프

  • Node: 정점, Edge: 간선
  • 신장트리: Spanning Tree
    • 그래프의 모든 정점과 일부 간선을 포함한 트리로 표현
    • T=(V,F)T = (V, F)

최소 신장 트리

  • Minimal Spanning Tree
  • 가장 적은 비용/거리로 그래프의 모든 정점을 연결할 수 있는 구조

프림 알고리즘

  • Prim
  • 노드 기준
  • O(n2)O(n^2)

크루스칼 알고리즘

  • Kruscal
  • 엣지 기준
  • 간선 최소 개수: O(nlogn)O(n \log n)
  • 간선 최대 개수: O(n2logn)O(n^2 \log n)

최단경로 문제

  • Shortest Path

다익스트라

  • Dijkstra
  • 노드 수가 n이라면 n-1개의 목적지가 모두 확정될 때까지 반복
  • 다익스트라를 노드마다 반복한게 프림 알고리즘

벨만포드

  • 가중치가 음수일 경우, 불이익이 있는 경우 다익스트라 알고리즘으로 최단 경로가 계속 갱신되므로 이를 방어하기 위한 방법

정렬

선택 정렬

  • Selection Sort
  • O(n2)O(n^2)
  • 가장 작은 값을 순서대로 찾아내어 첫 번째 배열부터 채워나가며 정렬

버블 정렬

  • Bubble Sort
  • O(n2)O(n^2)
  • 왼쪽에서 오른쪽으로 비교해가며 오름차순으로 자리를 교환하여 정렬

합병 정렬

  • Merge Sort
  • O(nlogn)O(n \log n)
  • 분할 정복
  • 데이터 분포의 영향을 덜 받는다, 최악의 경우에도 효율적.

퀵 정렬

  • Quick Sort
  • O(nlogn)O(n \log n)
  • 피봇을 정한다. 전체 값을 읽어 중간값이나 몇 개의 값의 평균을 피봇으로 정함.
  • 프로그래밍 랭기지에서는 왼쪽에서 큰 값, 오른쪽에서 작은 값을 찾는 방식으로 구현.

삽입 정렬

  • Insert Sort
  • O(n2)O(n^2)
  • 추가적인 메모리를 안 씀: in-place sort

힙 정렬

  • Heap Sort
  • O(nlogn)O(n \log n)

Max Heap

Min Heap

Min-Max Heap

Deap

  • 왼쪽은 Min Heap, 루트는 비어있음, 오른쪽은 Max Heap
  • 왼쪽 서브트리의 임의 노드는 오른쪽 서브트리 같은 위치에 있는 노드와 대응된다.

기수 정렬

  • Radix Sort
  • O(n)O(n)

MSD

  • Most Significant Digit

LSD

  • Least Significant Digit

탐색

깊이 우선 탐색

  • DFS, Depth First Search
  • Solution 을 찾기 위해 Candidate Solution 인 노드들을 순회
  • Optimal Path (최적의 해)가 아닐 가능성이 높음, 보장할 수 없음.

너비 우선 탐색

  • Breadth First Search
  • Optimal Path를 보장
  • 탐색 과정에서 나타나는 모든 상태를 저장해야하기 때문에 메모리 비효율적.

최고 우선 탐색

  • Best-First Search

백트래킹

  • 탐색을 진행하면서 필수적인 부분의 그래프만 유지하여 시간과 공간을 절약.
  • 노드 부모로 돌아가서 다음 자식 노드의 검색을 계속.

N-Queen 문제

0-1 배낭문제

인공지능

휴리스틱 탐색

  • Heuristic Search
  • 논리적으로, 수학적으로 증명할 수 없으나 경험이나 직관에 의해 효율적으로 해를 얻을 수 있으리라는 기대를 갖게하는 근거에 의한 방법
  • 사람처럼 학습을 통해서 직관적으로 탐색

Hill-Climbing 탐색

  • 남은 경로에 대한 비용만 고려
    • 가장 가파른 길이 정상까지 가장 짧으니까
    • 가파른 다음에 내리막일 수도 있고, 평지일 수도 있고, 다음 가파른 길을 찾을 수 없을 수도 있음
  • 남은 길 중에 가장 가파른 길을 찾는 평가함수 사용
    • Evaluatio Function, Objetive Function

A* 탐색

에이전트

  • 특정 목적을 가지고 자동으로 해결해주는 소프트웨어

신경회로망

K-means 클러스터링

패턴인식

딥러닝

선형회귀

  • Linear Regression
  • 기울기: 가중치, Weight
  • 절편: 바이어스, Bias
  • 최소 제곱법: LSM, Method of Least Squares
  • 평균 제곱근 오차: RMSE, Root Mean Square Error
    • 오차의 값이 더 이상 줄어들지 않을 때가 최적화
  • 경사하강법

다중선형회귀

로지스틱회귀

시그모이드 함수

  • Sigmoid Function

단층 퍼셉트론

다층 퍼셉트론

오차 역전파 알고리즘

  • Back Propagation

다중 분류 문제

  • 원 핫 인코딩
  • 소프트맥스

과잉 적합, 과소 적합

  • over fitting, under fitting
  • 해결방안
    • 조기 종료: Early Stopping
    • 가중치 규제 방법: Weight Regularization
    • 드롭 아웃: Drop out
    • 데이터 증강: data augmentation
    • 앙상블: Ensemble

유전자 알고리즘

  • 재생산: Reproduction
  • 교차: Crossover
  • 치환
  • 교배/돌연변이: Mutation

그래픽 알고리즘

베지어 곡선

압축 알고리즘

Run-Length 코딩

LZ77

허프만 코딩

논리회로

논리게이트

불대수

카노맵

전가산기

반가산기

비교기

베이즈 이론

조건부 확률

베이즈 정리

End of Year Retro 2023

· 6 min read

엄청난 일들이 많았던 해였다. 이보다 다이나믹할 수 있을까? 시작부터 완전히 망했다. 과도한 업무의 스트레스를 운동으로 풀던 나는 적정 무게를 지키지 않았고, 무리에 무리를 더하며, 결국 1월 첫째 주에 디스크를 터뜨렸다.

극복하는 과정은 더욱 힘들었다. 첫 두 달은 대부분의 시간을 누워서 보냈고, 앉아있지를 못해서 밥도 서서 먹었다. 와이프와 지인들이 도와줘서 몇 가지 해결책과 재활방안을 마련했고, 정선근 교수님의 모든 책과 영상을 보고 허리가 아프면 새벽에라도 공원을 걸었다. 그리고 회고를 하듯이 매일의 통증을 기록해 나갔다.

재활은 고통의 연속이었다. 누워있는 기간 동안 모든 근육은 잠겼고, 신경은 근육에 붙었고, 트라우마는 강해졌다. 통증의 원인이 재활인지, 디스크인지 구분할 수는 없었다.

하드웨어가 무너지니 소프트웨어에도 장애가 발생하기 시작했다. 평생 긍정적 살아온 내가 우울증이 오기 시작했다. 쥐 공원 실험을 알고 난 뒤부터 정신의 문제는 환경의 문제라고 생각하는 난, 주변의 모든 환경을 바꾸기로 결심하고 비즈니스 아키텍처보다 개인 아키텍처를 우선시하기로 했다. 시간과 건강이 돈보다 중요해졌기에 퇴사했다.

30대의 개인 아키텍처는 영어를 잘하는 개발자였고, 이는 점수로 증명할 수 있어야 했다. 대부분의 영미권 국가에서는 공학도에게 IELTS Academic Overall 6.5 점수를 요구했다. 인생에 한 번쯤은 영어를 언어학적인 접근으로 배워보고 싶기도 했지만, TOEIC, TEPS를 한 달 만에 원하는 점수를 취득했기에 이 시험도 무턱대고 도전하기 시작했다.

학생 때 영어 대신 수학 문제를 한 개 더 풀었기에, 어학에 많은 스트레스를 받을 것이 뻔했다. 그래서 일요일 오전에 모여서 각자 코딩하는 소모임에 나가기 시작했다. 만들고 싶었던 기술 스택으로 주차마다 웹페이지를 꾸며가며 정신적인 스트레스를 풀어나갔다. 국민취업지원금을 받기 위해 신청했던 토요일 정보관리기술사 강의도 오롯이 나에게 집중할 수 있는 좋은 시간이었다. 몇몇 기술사 선생님들은 내가 원하던 나의 40~50대 모습 같아 목표가 생겼다.

한 달, 두 달 기약 없이 영어 공부만 하는 시간이 지나갔다. 월 소득이 기회비용으로 환산되니 포기할 수도 없었다. 재활과 어학을 병행하는 건 벅찼다. 하지만 석 달째가 되니 뭔가 보이기 시작했다. 넉 달째가 되니 시험을 볼 수 있겠다는 자신감이 생겼다. 취업지원금을 받기 위해 면접을 봤던 회사는 주말의 코딩과 수업으로 준비가 되어있었기 때문에 한 단계씩 올라갈 수 있었다.

12월에 들어와선 매일매일 1시간 이상 진행했던 운동으로 허리 재활이 거의 끝나가는 걸 기록했던 수치와 컨디션으로 느낄 수 있었다. 장시간 앉는 걸 견딜 수 있을 인프라가 갖추어지니 시험을 볼 수 있었다. 기다리는 시간은 힘들었다. 두 가지 모두 인생 2막을 설계하기 위한 중대한 발표였다. 한 달 더 공부하기에는 내 의지가 못 버틸 것 같았다.

결과는 원하는 대학원의 진학할 수 있는 최소 요구사항을 맞췄고, 어디 가서 영어를 꽤 한다고 말할 수 있는 숫자가 나왔다. 똑똑하고 매너 있게 느껴졌던 면접관들과 같이 일할 수 있는 기회도 주어졌다. 소모임에도 꾸준함이 전해졌는지 운영진이 되었다.

2024년은 막연했던 모든 목표에 실현 가능성이 생겼다. 기술사 자격증 하나 남았지만, 디스크도 극복했는데 1년이란 시간이 있다면 어떤 것이든 못할까 싶다.

기술사 - 네트워크

· 9 min read

네트워크의 가치

  • 물리적 구성
    • NIC, 케이블, 허브
    • 라우터, 스위치
    • 기지국, 안테나
  • 논리적 구성
    • IP, MAC, Domain
    • 전화번호
    • 프로토콜
  • 정보전달의 원리: 멀리, 빠르게, 고품질로
    • 송신자 -> 전달자 -> 수신자
    • 속도 향상의 원리
    • 품질 향상의 원리
    • 먼거리 전달 원리
  • 네트워크 분류
    • 유선: PAN, LAN, WAN
    • 무선: WBAN, WPAN, WLAN
구분정보 처리(IT) 시대정보 통신(ICT) 시대
처리 형태저장, 검색, 가공, 연산유통, 공유
처리 주체컴퓨터, 제약된 공간네트워크 망, 장비
목표정보의 빠른 연산 및 처리정보의 신속, 정확, 안전한 전달
기술멀티코어, 파이프라이닝
캐시, 플래시
MEMS, 데이터마이닝
과거: 허브, 스위치, 라우터
현재: 인터넷, USN, 4G
미래: IoE, SDN, NFV
  • 정보처리시대에서 정보통신시대로 넘어오면서
    • 기회요인: 참여 공유 개방, 글로벌화
    • 위협요인: 개인정보유출, 프라이버시 침해 제거

네트워크 관련 법칙

멧갈프 법칙

  • Metcalfe's Law, 메칼프 법칙: 이더넷의 창시자
  • 네트워킹의 효과는 사용자(가입자, 노드) 수의 제곱에 비례, 네트워크의 외부성
  • 예시: SNS

길더의 법칙

  • Gilder's Law: IT칼럼니스트
  • 광섬유의 대역폭(Bandwidth)은 12개월마다 세 배씩 증가
    • 트래픽 증가는 통신 속도의 증가라고 볼 수 있음
  • 무어의 법칙으로 설명하는 직접회로 및 멤리의 증가 속도를 능가하는 광대역 통신망 설명

섀넌의 법칙

  • Shannon-Hartley theorem, 섀넌의 정리, 샤논의 정리
  • 채널용량은 대역폭과 신호 대 잡음비에 비례
C=Wlog2(1+SN)C = W \log_2(1 + \frac{S}{N})
  • C: 채널 용량
  • W: 대역폭
  • S: 신호전력
  • N: 잡음전력

네트워크 구성

네트워크의 물리적 구성

  • 교환기: 라우터
    • 가장 중요한 구성요소로 단말기들을 일시적으로 연결시켜주는 기능 제공
    • 회선 교환과 패킷 교환으로 나눠진다.
    • 패킷 교환은 Connection-Oriented 방식(TCP), Connection-Less 방식(UDP)로 나뉜다.
  • 중계기
    • 신호의 감쇄 및 왜곡을 보상하기 위해 증폭 및 재생 기능을 가지고 있음
    • 아날로그는 증폭만 가능하나, 디지털통신은 증폭과 재싱이 동시에 가능
  • 전송 및 다중화 선로
    • 전화선, 전용선
    • 광시분할 다중화
    • 광파장분할 다중화

네트워크의 논리적 구성

  • Network Address
    • 가입자를 식별하기 위한 식별자
    • 전화번호, IP, MAC, DNS, ENUM (tElephone NUmber Mapping) 등
    • DNS: 망에서는 숫자주소만 인식되나 사람의 사용 편의를 위해 문자주소를 사용함
  • 네트워크 프로토콜
    • 물리적 네트워크를 논리적으로 동작하도록 함
    • 사용자로 하여금 네트워크의 투명성 보장
    • 국제표준: OSI 7 Layer
    • 사실상의 표준: TCP/IP (이게 더 먼저 나옴, 인터넷 전용)
    • 하부계층(주로 LAN) 표준: IEEE 802, CSMA/CD, Ethernet

정보전달의 원리

데이터 통신의 원리

데이터 통신의 원리

무선 통신의 원리

무선 통신의 원리

부호화

  • 속도와 품질 향상
  • 정보를 이진코드로 변환/압축하는 소스 부호화과정과 이를 처리, 전송하는 과정에서 오류를 줄이는 변환 채널부호화 과정을 총칭

변조

  • 속도, 품질, 전송거리 향상
  • 신호 정보를 전송매체의 채널 특성에 맞게끔 신호(정보)의 세기나 변위, 주파수, 위상 등을 적합한 형태로 변환하는 과정
  • 변조 이유:
    • 전송 매체에 알맞은 변조방식 사용하여 장거리 전송 가능
    • 변조가 넓은 주파수 대역에 걸치므로 다중화 가능
    • 주파수를 높임에 따라 안테나 길이, 크기의 단축이 가능
    • ISI 등이 존재하는 채널에서 신호 대역폭을 늘려주어, 간섭효과 최소화 가능
      • Inter Symbol Interference: 심볼 간 간섭

네트워크의 분류

  • 유선
    • PAN: Personal Area, USB, HDMI
    • LAN: Local Area
    • MAN: Metro Area
    • WAN: Wide Area
  • 무선
    • WVAN: 의료목적
    • WPAN: 블루투스, NFC
    • WLAN
    • WIMAX: WIBRO, 예전에 도심에서 모바일 서비스
    • Radio

프로토콜

약속의 중요성

  • 사람을 위한 식별자: 도메인, 전화번호
  • 컴퓨터를 위한 식별자: IPv4, IPv6, MAC
  • 최단 거리를 위한 전송경로 설정: 라우팅, 포워딩(스위칭), 상태확인(ICMP)
  • 다양한 전송방식:
    • TCP, UDP, SCTP
    • 브로드캐스팅, 유니캐스팅
    • 멀티캐스팅, 애니캐스팅
  • 충돌, 지연 방지, 안전, 신속, 정확

통신프로토콜

통신프로토콜 개요

통신프로토콜 발전

통신프로토콜 기능

OSI

TCP/IP

컴퓨터를 위한 식별자

IP

ARP

사람을 위한 식별자

인터넷 주소 체계

전화번호, ENUM

전송 방식

인터넷 전송 방식

TCP

  • Transmission Control Protocol

UDP

  • User Datagram Protocol

SCTP

  • Streaming Control Transmission Protocol

라우팅 프로토콜

라우팅 알고리즘

Distance Vector Algorithm

기업용 네트워크

LAN

Inter-Networking 장비

고속 LAN

스위치

MPLS

WLAN

차세대 WLAN

CDN

가정용 네트워크

인터넷망

광가입자망

케이블망

홈네트워크

특수목적 네트워크

Ad-hoc

MANET

VANET

WMN

WBAN

WPAN

D2D

이동통신

발전단계

이동통신망

이동통신 원리

4G

4G LTE

  • Long Term Evolution

CR

  • Cognitive Radio

Handover

MIH

  • Media Independent Handover

5G

6G

네트워크 품질

IPv4 주소 효율화

IPv6

IPv4 to IPv6

모바일 IPv4

흐름 제어

오류 제어

ARQ

  • Automatic Repeat Reqeust

H-ARQ

  • Hybrid ARQ

TCP 혼잡제어

Slow start, Congestion Avoidance

Fast Retransmit, Fast Recovery

QoS

  • Quality of Service

최신 이슈

VoIP

  • Voice over IP

H.323

SIP

  • Session Initiation Protocol

MGCP

  • Media Gateway Control Protocol

H.248

  • MEGACO, MEdia Gateway Control

VoIP 프로토콜 비교

LBS 측위기술

미래 네트워크

ICN

  • Information Centric Network

SDN

  • Software Defined Network

범정부 프로젝트

  • 기가 코리아 프로젝트
  • 국가 재난 안전 통신망: PS-LTE

국가에 대한 의존성 분리

· 5 min read

개요

게임에 신규유저가 없으면 어떻게 되나?

  • 아이템 시세는 떨어지고, 화폐가치는 떨어진다.
  • 고인물만 살아남고, 그들만의 리그가 형성된다.
  • 유저 수는 점차 줄어가고, 게임사는 고인물이라도 붙잡기 위해 고인물 친화적인 이벤트를 진행한다.
  • 그러다가 신규 유저가 사라질 때쯤 버닝이벤트를 활용해 특정 레벨까지의 빠른 성장을 지원한다.
  • 아쉽게 국가는 버닝이벤트를 할 수는 없다.

이커머스 산업은 패션이 대부분의 카테고리를 차지한다.

  • 패션의 주고객층은 20-40이다. 신규 유저가 없고, 산업 전반이 감소할 수 있기에 글로벌 진출은 필수라고 이야기한다.

이민청을 신설한다고 한다. 외국인 노동자를 많이 받아들인다고 한다.

  • 글로벌 공용어는 영어다.
  • 시니어 포지션에선 그들과 커뮤니케이션 비용이 있으면 안 된다.
  • C레벨과 대화하고 보고해야하기 때문에 글도 잘 써야한다.

핵심 가치

나의 20대의 목표는 결혼과 연봉이였고, 그 목표치를 달성했다. 나의 30대의 개인 목표는 영어를 잘하는 개발자였다. 왜냐하면 21세기까진 영어를 잘하면서 서비스 전반을 다뤄본 프로그래머가 IT산업군에서는 1티어를 유지할 것 같아서다.

핵심 가치를 생각하니 결국 지긋지긋한 영어를 먼저 끝내야했다. 그렇다면 어느정도 해야 한다고 할까? 내가 생각하는 30대는 모든 스킬셋이 숫자로 증명이 되어야했다.

그 숫자는 다른 나라에 이민을 가거나 대학교를 갈 때의 수준이라고 생각했다. Reading, Listening, Writing, Speaking 을 모두 증명할 수 있는 시험은 IELTS 였고, 이 시험은 모든 영어권 국가와 학교, 회사에서 최소한의 Bilingual 조건으로 요구한다.

의존성 분리

컴퓨터공학은 아래 단어로 요약된다.

  • 알고리즘은 최소 비용, 최고 효율, 분할 정복
  • 프로그래밍은 의존성 분리, 낮은 결합도, 높은 응집도

프로그래밍은 현실세계의 개념을 차용해서 설계하고, 구현하는 것인데 언제부턴가 나는 이 개념을 반대로 적용하기 시작했다. Binary World 의 개념을 Real World 에 차용하면 대부분의 목표는 실현가능했고, 도달가능해졌다.

matrix

자격조건을 갖추니 직업 시장이 무한하게 확장되었다. 시간이 생기면 대학원에서 밀렸던 학업을 더 보강할 수도 있게 되었다. 내년부터는 밀렸던 수학 리팩토링과, 외국인들과의 게더링, 현지 답사와 현지 사람들을 만나가며 계획했던대로 인생의 세컨드 페이즈를 준비할 수 있게 되어 행복하다.

진정한 의존성 분리는 나 자신한테 먼저 해야하는거 아닐까?

참조