[학.알.17.실.개.기] 10장 XML~12장 Base64

Chaejung·2022년 2월 21일
0
post-thumbnail

<이기곤, 학교에서 알려주지 않는 17가지 실무 개발 기술_문자열 인코딩부터 웹 필수 지식까지, 한빛미디어>

10장 XML

이번 장을 읽고 나서는
'그래서 XML이 뭐지...?'라는 생각만 들었다.
그래서 XML 어디에 쓰이는지 궁금하여 구글링해보았다.
데이터 전달용 문서로서, 요소 데이터 간의 관계를 표현할 수 없는 HTML과 달리 XML은 데이터를 조직화하고 구조화 시켜 문서에서 바로 알아볼 수 있다.
확장성 있는 마크업 언어로, HTML과 달리 웹 브라우저는 데이터 간 관계 또한 파악할 수 있다고 한다.
출처

파이썬 문법에 관하여 하나만 덧붙이자면,
다음은 Xpath를 사용하여 XML 값을 읽는 코드이다.

<!--message1.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<message>
  <number>12345</number>
  <pi>3.14</pi>
  <!--중략-->
</message>
# xml_reader.py
from lxml import etree

def read_xpath(tree, xpath):
	tags = tree.xpath(xpath)
    if tags and len(tags) > 0:
    	return True, tags[0]
    else:
    	return False, None
# 중략

# Xpath 기반 데이터 접근

_, pi_t = read_xpath(xml_tree, '/message/pi')
print('pi={0}' .format(pi_t.text))

출력값
pi=3.14
함수 read.xpath(xml_tree, '/message/pi')의 리턴값은 True, 3.14인데, '_ ,' 가 앞의 값인 True를 무시하는 역할을 한다.
파이썬 언더스코어(_)에 대해

11장 프로토콜 버퍼

쓰임새를 알 수가 없어 이해하기가 어려웠다.
분명히 컴퓨터언어는 인간이 편리하게 쓰고자 개발했을텐데, 이렇게 이해하기 어렵게 만들어 낸 것이 이해할 수 없었다.

그래서 대략 이런 개념이 있구나 하는 정도로 발만 담구고 넘어갔다.

12장 Base64

11장과 마찬가지로 이해하기 어려웠다.

209쪽 그러나 오늘날 Base64로 인코딩된 데이터를 실시간으로 주고받는 환경은 거의 없습니다. 리얼 타임 메시징 프로토콜(Real Time Messaging Protocol(RTMP))*이나 HTTP 라이브 스트리밍(HTTP Live Streaming(HLS))**과 같은 훌륭한 동영상 프로토콜이 있기 때문입니다.

RTMP?

어도비 시스템즈사의 독점 컴퓨터 통신 규약이다. 처음 목표는 오직 플래시에서만 쓰이는 것이었다. 현재는 플래시뿐 아니라 다른 응용 프로그램에서도 쓰이고 있다. 출처

HLS?

애플이 개발한 통신 프로토콜. 여러 미디어 플레이어, 웹 브라우저, 모바일 기기, 스트리밍 미디어 서버에서 지원되고 잇다. 연간 비디오 산업 조사에 따르면 가장 대중적인 스트리밍 포맷으로 간주된다. 출처

마무리

아무래도 데이터 처리에 관한 기초 지식이나 경험이 더욱 필요해 보인다. 그래도 다음 스터디 때 읽은 부분은 웹과 관련된 부분이라 참고 이번 부분을 읽었다. 기대된다 HTTP, RESTful API!

profile
프론트엔드 기술 학습 및 공유를 활발하게 하기 위해 노력합니다.

0개의 댓글