2018.11.30 오전 02:55 (KR) Olimpiyskiy National Sports Complex





 

 Match Stats

 

Vorskla

 

Arsenal

41

점유율% 

59

9

 슛팅

13

2

 유효슛팅

9

425

 패스시도

564

0

 클리어런스

0

2

 코너킥

10

2

 오프사이드

5

13

 파울

12




스미스 로우는 아스날에서의 최근 4경기 3골 기록중 !



블로그 이미지

벵거빠돌이

,

2018.11.25 오후 (KR) 22:30 Vitality Stadium


라인업




 

 Match Stats

 

AFC Bournemouth


Arsenal

41.3

점유율%

58.7

11

슛팅

20

5

유효슛팅

4

394

패스시도

574

30

클리어런스

20

5

코너킥

8

1

오프사이드

2

9

파울

16


[공홈] 아스날이 역시나 본머스전을 통해 알게 된 4가지

https://www.arsenal.com/news/bouars-four-things-we-noticed


우리는 본머스전 2-1 승리로 17경기 무패를 이어갔다. 무엇을 깨달았는가?

오바메양의 끈기


피에르 에메릭 오바메양은 승리의 주역이었다. 이번 시즌에만 10골을 득점했다.
그보다도 오바메양의 매 라운드 출장이 눈길을 끌었다. 에메리는 팀을 위한 그의 의지를 칭찬했다.
본머스는 후방에 공간을 허용했고, 오바메양을 그의 마커들 어깨너머 뛰고, 또 뛰며 후방을 노렸다.
어느 정도는 가뭄이었다. 공이 오지도 않았으며, 공을 뒤에 두고 달리기도 했다.
오바메양은 그럼에도 불구하고 견디었다. 
미키타리안의 패스로 인한 좋은 기회를 날리기도 했지만, 콜라시나츠의 완벽한 크로스에 박스로 뛰어들어가며 득점에 성공했다.

탱크(콜라시나츠)의 활약



세야드 콜라시나츠는 지난 경기에서 그닥 즐기지 못했다.
울버햄튼이 1-1의 경기에서 왼쪽 측면을 노리면서 그는 LB의 자리에 종종 고립되기도 했다.
하지만 이번 경기는 세야드에게 훨씬 만족스러운 경험이었다.
센터백을 추가로 배치하는 우나이 에메리의 선택이, 본머스가 일찍이 우리를 밀어붙일 때 그에게 더 나아진 보호를 주었다.
우리가 그 폭풍을 견딘 후에는, 세야드가 폭풍같이 왼쪽 전방에서 잊을 수 없는 상처를 주었다.
헤페르손 레르마의 자책골도 역시 콜라시나츠의 크로스였다.
그리고 세야드의 공격적인 마음가짐이 우리의 승리를 결정짓는 득점자에게도 결정적이었다.
알렉스 이워비가 콜라시나츠의 쇄도를 눈치채기를 시작으로, 콜라시나츠의 낮은 크로스는 베고비치를 피하기엔 묵직하고, 오바메양이 툭 치고 넣기엔 가벼웠다.
이 '해적질'은 보스니아인의 특기다.

쓰리백


에메리는 유로파 카라바흐전 이후로 첫 쓰리백을 배치하며 우리를 놀라게 했다.
공격수들을 지적하면서, 프리시즌에서도 3-4-3 포메이션을 구사하기도 했고, 이번 경기에서도 효과적이었다.
본머스에는 최종 수비선에서 합이 잘 맞는 활발한 공격수들이 몇 있는 까닭에, 세 번째 센터백이 세야드 콜라시나츠가 나가있을 때 그에게 보호를 제공했다.
후방에 수비수가 한 명이 늘면서, 콜라시나츠와 베예린이 자신있게 전진하는 데에도 가능케했다.
전반적으로, 그 책략은 통했지만, 이 전략을 스퍼스 상대로도 펼칠 것인가?

이워비 vs 외질


이워비와 외질은 작은 역할에서 경쟁 중이다. 그들끼리 사적인 결투가 있을 지도 모른다.
빌드업에서 외질이 베예린에게 주는 날카롭고 무게감 있는 공에서 레스터전 우리의 첫 골이 되었다.
그 패스는 모두를 놀라게 했고, 그럴만도 하다.
본머스전에서, 이워비의 모습이 그와 비슷했다. 
이워비의 상대 풀백의 안쪽으로 찌르는 완벽한 페이스의 패스를 콜라시나츠가 돌진해 들어가면서, 오바메양이 득점하도록 크로스를 주었다.
두 고상한 패스, 누가 우세인가?

번역 : https://www.fmkorea.com/index.php?mid=football_news&search_target=member_srl&document_srl=1409295982&search_keyword=1087183107&page=1


블로그 이미지

벵거빠돌이

,

2018.11.12 오전 01:30 (KR) Emirates Stadium


라인업





 

 Match Stats

 

Arsenal


Wolverhampton Wanderers F.C.

71.7

점유율%

28.3

10

슛팅

13

3

유효슛팅

5

734

패스시도

291

4

클리어런스

26

11

코너킥

2

1

오프사이드

2

9

파울

16



다소간 향상된 그의 퍼포먼스에도 불구하고, 울브스전에 보여준 자꾸 정줄 놓는 모습은 자카가 가진 기본적 결함을 잘 드러내준다.


그라니트 자카는 아스널의 수수께끼다. 분데스리가 역사상 최연소 주장에 걸맞은 £30M의 이적료로 보루시아 묀헨글라드바흐로부터 이적해온 자카는, 때로는 열렬한 박수갈채를 받은 플레이를, 때로는 팬들을 크게 좌절시키는 플레이를 선보여왔다.

이를 극명하게 드러낸 것이 지난 일요일 울브스와의 경기였다. 26세의 자카는 거너스 유니폼을 입은 후 가히 최고의 퍼포먼스를 보여줬던 지난 라운드 리버풀전 이후 아주 높은 기대를 받으며 경기에 나섰다.

루카스 토레이라의 합류는 자카에게 더 많은 자유를 주었고, 잠깐 동안 레프트백 자리에서 땜빵을 뛴(이는 복합적 결과를 낳았다) 이후에 리버풀을 상대로 보여준 자카의 모든 플레이는 드디어 이 선수가 북런던에서 완전히 자신에 맞는 역할을 찾은 것처럼 보였다.

그는 피치 위의 어느 누구보다 많은 패스를 성공시켰고, 가장 많은 볼 탈취와 태클을 기록했으며, 지난 시즌 챔피언스리그 결승 진출팀 리버풀이 평상시와 같은 자유로운 플레이를 할 수 없도록 만드는 데 있어서 (토레이라와 함께) 핵심적 역할을 했다.

허나 승격팀 울브스와의 경기에선, 모든 좋지 않은 이유로 관심 집중의 대상이 되어버리고 만 자카였다.

울브스전 89%의 패스성공률에도 불구하고, 물론 그가 경기 초반에 받은 세아드 콜라시나츠의 패스가 굉장히 나쁘긴 했지만, 어쨌든 집중력을 잃어버린 자카는, 원정팀 울브스의 이반 카바예로가 선제골을 넣도록 찬스를 헌납해버렸다. 정규시간 종료 4분 전 터진 헨리크 미키타리안의 동점골이 아니었다면 이 실수가 경기 결과를 결정해버렸을 것이다.

울브스전 자카가 소유권을 잃어버린 상황은 29차례 나왔고, 이는 다른 어떤 선수가 기록한 것보다 많았다. 2016년 아스널에서의 데뷔 이후 자카는 이제 리그에서 실점으로 직결된 실수를 5회나 저질렀고, 이는 같은 기간 리그의 모든 선수를 통틀어 가장 많다.

우나이 에메리: (자카의 실수에 대해 질문받자)

"그는 아주 헌신적이고 개성이 있습니다. 그의 퍼포먼스와 퀄리티는 좋습니다. 우리는 팀원 모두를 필요로 합니다. 저도 그렇고 팀도 그렇고, 우린 더욱 꾸준해야만 합니다. 제 생각엔 가장 작은 부분부터 하나하나 만들어가며 자신감을 얻고 더 큰 일도 이뤄내는 것이 중요한 것 같습니다. 우리는 그걸 해내고 있고 자카 역시 그러고 있다고 생각합니다."

물론 에메리 체제에서의 아스널이 아주 인상적이긴 하지만, 자카의 기복은 아스널의 팀적 시스템 차원의 문제이며 계속해서 그들의 발등을 스스로 찍는 것과 다름이 없다.

지난 시즌 시작부터 지금까지를 기준으로, 상대의 실점으로 이어진 개인 실수를 아스널보다(17회) 더 많이 저지른 상위권[*역자 주: 빅6를 뜻하는 듯] 팀은 없으며, 16연속 무패행진은 분명 박수갈채를 받아 마땅하지만, 아스널이 앞으로도 저러한 실수를 더 저지르지 말란 법도 없다.

에메리가 앞으로 얼마나 더 자카를 참을성 있게 기다려줄 수 있을 것인지에 대해서는 지켜봐야 한다. 파이널 써드 지역으로 공을 연결해주는 자카의 능력은 리그 최상위권 수준이지만, 최근 크리스탈 팰리스전에 나온 그의 프리킥은 그가 무에서 유를 창조할 수 있으면서도, 탑 4에 들 수 있을지 없을지를 결정해버릴 수도 있는 차이가 돼버릴 수도 있다는 점을 강조해줄 뿐이다. [*역자 주: 정확한 해석인지 모르겠네요. 도와주세요 영잘알분들. 원문 - His ability to provide a link into the final third is up there with the very best in the league while his recent free-kick against Crystal Palace only serves to highlight that he is a player capable of providing a moment out of nothing who could yet be the difference between a place in the top four or outside come to the final knockings.]

에메리가 끝내 자카에 대한 인내심을 완전히 잃어버린다면, 벌써 국가대표로 국제대회를 3차례나 나선 자카보다 경험은 많이 부족하긴 해도, 마테오 귀엔두지와 에인슬리 메이틀랜드-나일스가 대체자로서 가능하다. 심지어 에메리에겐 아론 램지를 토레이라 옆자리에 세운다는 선택지도 있다. 비록 램지는 내년 여름 자유계약으로 팀을 떠날 것이 확실시되고, 에메리는 그를 메수트 외질의 후보로 더 앞선에 쓰고 싶은 것처럼 보이기에 그가 투미드필더의 한 축으로서 3선에 기용될 가능성은 적어보이긴 하지만 말이다.

에미레이츠 스타디움의 열혈 팬들은 드디어 그들이 알던 아스널이 돌아왔다며 찬가를 부르고 있을 수도 있지만, 아르센 벵거의 말년을 힘들게 만들었고 끝내 그를 쫓아낸 수비 문제는 여전히 존재하며, 자카도 여전히 그 문제의 주요 제공자이다. 에메리는 축복인지 저주인지 모를 이 선수를 어떻게 할지에 대해 이른 시일 내에 결단을 내려야만 할 것이다.

번역 : https://www.fmkorea.com/best/1382277555 


블로그 이미지

벵거빠돌이

,

해쉬테이블 (Hashtable)

C# 2018. 11. 8. 11:12

해쉬 테이블의 이해와 구현 (Hashtable)


조대협 (http://bcho.tistory.com)


기본적인 해쉬 테이블에 대한 이해


해쉬 테이블은 Key Value를 저장하는 데이타 구조로, value := get(key)에 대한 기능이 매우매우 빠르게 작동한다. 개발자라면 자주 쓰는 데이타 구조지만, 실제로 어떻게 작동하는지에 대해서 정확하게 알고 있지는 모르는 경우가 많다. 이 글에서는 해쉬 테이블에 대한 기본적인 구조와, 구현 방식에 대해서 설명 하도록 한다.

 

해쉬 테이블의 기본적인 개념은 다음과 같다.

이름을 키로, 전화 번호를 저장하는 해쉬 테이블 구조를 만든다고 하자.  전체 데이타 양을 16명이라고 가정하면

 

John Smith의 데이타를 저장할때, index = hash_function(John Smith) % 16  를 통해서 index 값을 구해내고, array[16] = John Smith의 전화 번호 521-8976”을 저장한다.



(출처 :https://en.wikipedia.org/wiki/Hash_table )

 

이런 형식으로 데이타를 저장하면, key에 대한 데이타를 찾을때, hash_function을 한번만 수행하면 array내에 저장된 index 위치를 찾아낼 수 있기 때문에, 데이타의 저장과 삭제가 매우매우 빠르다.

 

충돌 처리 방식에 따른 알고리즘 분류

 

그런데, 이 해쉬 테이블 문제는 근본적인 문제가 따르는데, hash_function(key) / size_of_array의 값이 중복이 될 수 가 있다.

 

예를 들어 저장하고자 하는 key가 정수라고 하고, hash_function key%10 이라고 하자. 그리고 size_of_array 10일때, key 1,11,21,31은 같은 index 값을 가지게 된다. 이를 collision (충돌)이라고 하는데, 이 충돌을 해결하는 방법에 따라서 여러가지 구현 방식이 존재한다.

 

1. Separate chaining 방식

 

JDK내부에서도 사용하고 있는 충돌 처리 방식인데, Linked List를 이용하는 방식이다.

index에 데이타를 저장하는 Linked list 에 대한 포인터를 가지는 방식이다.



(출처 :https://en.wikipedia.org/wiki/Hash_table )

 

만약에 동일  index로 인해서 충돌이 발생하면 그 index가 가리키고 있는 Linked list에 노드를 추가하여 값을 추가한다.  이렇게 함으로써 충돌이 발생하더라도 데이타를 삽입하는 데 문제가 없다.

 

데이타를 추출을 하고자할때는 key에 대한 index를 구한후, index가 가리키고 있는 Linked list를 선형 검색하여, 해당 key에 대한 데이타가 있는지를 검색하여 리턴하면 된다. 

삭제 처리


key를 삭제하는 것 역시 간단한데, key에 대한 index가 가리키고 있는 linked list에서, 그 노드를 삭제하면 된다.

Separate changing  방식은 Linked List 구조를 사용하고 있기 때문에, 추가할 수 있는 데이타 수의 제약이 작다.

 

참고 : 동일 index에 대해서 데이타를 저장하는 자료 구조는 Linked List 뿐 아니라, Tree를 이용하여 저장함으로써, select의 성능을 높일 수 있다. 실제로, JDK 1.8의 경우에는 index에 노드가 8개 이하일 경우에는 Linked List를 사용하며, 8개 이상으로 늘어날때는 Tree 구조로 데이타 저장 구조를 바꾸도록 되어 있다.

 

2. Open addressing 방식

 

Open addressing  방식은 index에 대한 충돌 처리에 대해서 Linked List와 같은 추가적인 메모리 공간을 사용하지 않고, hash table array의 빈공간을 사용하는 방법으로, Separate chaining 방식에 비해서 메모리를 덜 사용한다. Open addressing  방식도 여러가지 구현 방식이 있는데, 가장 간단한 Linear probing 방식을 살펴보자

 

Linear Probing

 

Linear Probing 방식은 index에 대해서 충돌이 발생했을 때, index 뒤에 있는 버킷중에 빈 버킷을 찾아서 데이타를 넣는 방식이다. 그림에서 key % 10 해쉬 함수를 사용하는  Hashtable이 있을때, 그림에서는 충돌이 발생하지 않았다.

 

 


아래 그림을 보자, 그런데, 여기에 11을 키로 하는 데이타를 그림과 같이 넣으면 1이 키인 데이타와 충돌이 발생한다. (이미 index1인 버킷에는 데이타가 들어가 있다.) Linear Probing에서는 아래 그림과 같이 충돌이 발생한 index (1) 뒤의 버킷에 빈 버킷이 있는지를 검색한다. 2번 버킷은 이미 index2인 값이 들어가 있고, 3번 버킷이 비어있기 3번에 값을 넣으면 된다.


검색을 할때, key 11에 대해서 검색을 하면, index1이기 때문에, array[1]에서 검색을 하는데, key가 일치하지 않기 때문에 뒤의 index를 검색해서 같은 키가 나오거나 또는 Key가 없을때 까지 검색을 진행한다. 


삭제  처리


이러한 Open Addressing의 단점은 삭제가 어렵다는 것인데, 삭제를 했을 경우 충돌에 의해서 뒤로 저장된 데이타는 검색이 안될 수 있다. 아래에서 좌측 그림을 보자,  2index를 삭제했을때, key 11에 대해서 검색하면, index1이기 때문에 1부터 검색을 시작하지만 앞에서 2index가 삭제되었기 때문에, 2 index까지만 검색이 진행되고 정작 데이타가 들어 있는 3index까지 검색이 진행되지 않는다.

그래서 이런 문제를 방지하기 위해서 우측과 같이 데이타를 삭제한 후에, Dummy node를 삽입한다. Dummy node는 실제 값을 가지지 않지만, 검색할때 다음 Index까지 검색을 연결해주는 역할을 한다.


Linear probing에 대한 샘플 코드는

http://www.cs.rmit.edu.au/online/blackboard/chapter/05/documents/contribute/chapter/05/linear-probing.html

http://www.tutorialspoint.com/data_structures_algorithms/hash_data_structure.htm

를 참고하기 바란다.

Dummy Node를 이용해서 삭제를 할때, 삭제가 빈번하게 발생을 하면, 실제 데이타가 없더라도 검색을 할때, Dummy Node에 의해서, 많은 Bucket을 연속적으로 검색을 해야 하기 때문에, Dummy Node의 개수가 일정 수를 넘었을때는 새로운 array를 만들어서, 다시 hash를 리빌딩 함으로써, Dummy Node를 주기적으로 없애 줘야 성능을 유지할 수 있다.


Resizing

Open addressing의 경우, 고정 크기 배열을 사용하기 때문에 데이타를 더 넣기 위해서는 배열을 확장해야 한다. 또한 Separate changing에 경우에도 버킷이 일정 수준으로 차 버리면 각 버킷에 연결되어 있는 List의 길이가 늘어나기 때문에, 검색 성능이 떨어지기 때문에 버킷의 개수를 늘려줘야 한다. 이를 Resizing이라고 하는데, Resizing은 별다른 기법이 없다. 더 큰 버킷을 가지는 array를 새로 만든 다음에, 다시 새로운 arrayhash를 다시 계산해서 복사해줘야 한다.


해쉬 함수


해쉬 테이블 데이타 구조에서 중요한 것중 하나가 해쉬 함수(hash function)인데, 좋은 해쉬 함수란, 데이타를 되도록이면 고르게 분포하여, 충돌을 최소화할 수 있는 함수이다. 수학적으로 증명된 여러가지 함수가 있겠지만, 간단하게 사용할 수 있는 함수를 하나 소개하고자 한다. 배경에 대해서는 http://d2.naver.com/helloworld/831311 에 잘 설명되어 있으니 참고하기 바란다. (필요하면 그냥 외워서 쓰자)

String key

char[] ch = key.toChar();

int hash = 0;

for(int i=0;i<key.length;i++)

 hash = hash*31 + char[i]

 

Cache를 이용한 성능 향상


해쉬테이블에 대한 성능 향상 방법은 여러가지가 있지만, 눈에 띄는 쉬운 방식이 하나 있어서 마지막으로 간략하게 짚고 넘어가자. 해쉬테이블의 get(key)put(key)에 간단하게, 캐쉬 로직을 추가하게 되면, 자주 hit 하는 데이타에 대해서 바로 데이타를 찾게 함으로써, 성능을 간단하게 향상 시킬 수 있다.  




'C#' 카테고리의 다른 글

Label 투명하게!  (0) 2018.12.10
DLL을 C#에서 사용하기  (0) 2018.10.25
c#에서 비관리코드를 호출하는 방법  (0) 2018.10.24
[MFC] LPSTR,LPCSTR,LPCTSTR .. 과연 무엇인가?  (0) 2018.10.23
opos visual studio 적용....  (0) 2018.10.15
블로그 이미지

벵거빠돌이

,

2018.11.04 오전 02:30 (KR) Emirates Stadium


이날 레스터의 비극을 추모하는 뜻으로 검은 완장을 착용하였습니다. 

#TogetherForLeicester


라인업





 

 Match Stats

 

Arsenal


Liverpool

61.8

점유율%

38.2

12

슛팅

13

4

유효슛팅

4

586

패스시도

356

28

클리어런스

29

5

코너킥

8

7

오프사이드

1

7

파울

7




775249930_SM_2079_ED53694F8EA732D397340A130898EEB6.jpg [공홈] 리버풀전 이후 에메리 프레스 컨퍼런스


리버풀을 상대로 포인트를 획득하려고 분투했던 알렉상드르 라카제트의 동점골 이후 우나이 에메리는 기뻐 보였다. 

무승부가 합당한 경기였는지..

"잘 모르겠습니다. 우리의 경기력에 기쁘고, 90분동안의 밸런스는 우리 쪽이 긍정적으로 우위했다고 생각합니다. 하지만 그들에게 기회를 허용하지 않는 것도 매우 까다로웠습니다.
우리는 몇몇 상황에서 약간의 운이 필요했습니다. 우리가 공격할 때도 득점하기 위해 운이 필요했습니다.
실점 이후에도 우리가 90분동안 해온 것들을 고려하면, 끝내 1-1이 괜찮은 결과라고 생각합니다. 우리가 절반만 기쁜 이유이기도 합니다.
두 번째로, 우리에겐 패배할 상황이 있었고, 우리 또한 90분 동안 균형을 깨뜨릴 상황이 있었습니다."

관중에 대해..

"리버풀의 한 특징은 그들의 강렬함과 빅 플레이어들입니다. 따라서 오늘은 우리에게 좋은 시험이었죠.
우리의 작업과 전술적인 부분에 발전이 더 필요하지만, 우리가 원했던 스피릿이 있었고, 오늘의 분위기는 90분 동안 응원하는 서포터들과 함께 정말 뜨거웠습니다.
오늘은 우리에게나, 그들에게나 정말 스펙타클했습니다."

믿음이 상승하는 것에 대해..

"우리의 과정은 많은 시간이 필요합니다. 축구에 있어서 많은 시간을 요구함은 정말 어렵지만, 필요합니다.
좋은 예는 맨시티전, 첼시전 그리고 오늘의 리버풀전까지, 우리가 여러 경기를 치르면서 경기력이 얼마나 달라졌는지입니다.
이 세 경기 중 오늘의 경기는 우리에게 더 경쟁적인 경기였다고 생각합니다."

이워비의 임팩트에 대해..

"우리는 모든 선수가 필요하고, 그가 가지고 있는 재능은 중요합니다. 그를 벤치에 앉히고 경기를 시작했을 때 또한, 이워비는 경기에 큰 임팩트를 줄 수 있습니다.
오늘 그는 오른쪽에서 뛰었지만, 왼쪽에서 더 좋은 모습을 보였습니다. 몇몇 상황에선 우리의 득점 과정처럼, 임팩트도 있었습니다.
그의 에너지와 재능은 중요합니다. 더불어 그는 더 발전할 수 있습니다. 많은 경기를 치르면서도, 첼시를 상대로 득점했습니다. 
득점을 위해, 박스에 그가 더 밀접히 플레이하길 바라고, 그는 할 수 있다고 생각합니다.
그는 젊고, 나아지고 있지만, 그는 더욱더 발전할 수 있으므로 그에 대해 야망이 있습니다."

상위권 팀들을 상대로 경기에 대해..

"첫 번째로, PL이 우리에게 최우선 경쟁입니다. 한 시즌 38경기 동안, 우리에게 큰 꾸준함을 부여하기 때문입니다. 시티와 첼시, 리버풀과 같은 팀을 상대할 때도 매우 중요합니다.
승리한다면 좋지만, 리버풀을 상대로 3포인트와 크리스탈 팰리스를 상대로 3포인트는 같은 3포인트이기 때문에 모든 경기가 매우 중요합니다. 오늘은 시티, 첼시를 상대한 이후, 어떻게 변화했는지를 알아보기 위한 한 시험이었습니다.
오늘은 경기력에 있어서, 더 나아졌다고 생각합니다. 매 경기와 홈에서 치를 다음 울버햄튼전에도 또한 꾸준함이 필요하고, 중요한 경기입니다."

슈퍼리그에 대해..

"정확히는 잘 모르겠습니다. 무엇이 최고의 경쟁인지, 축구계 그리고 사람들과 함께 많은 시간을 들여 얘기를 나눠야 할 것입니다. 많은 지식을 함께한 긴 대화 말입니다."

늦은 득점과 우리의 공격수들에 대해..

"우리에겐 오바메양같은 정상급 득점자가 있고, 라카제트 또한 많이 득점할 수 있으며 다른 선수들도 있습니다. 이 통계는 중요합니다. 이번 골은 우리와 라카에게 있어 중요합니다.
계속 기회를 창출하고, 득점하는 것은 중요합니다. 오늘 우리는 많은 찬스가 있었습니다. 이러한 방면을 이어가는 것은 우리에게 중요합니다."


블로그 이미지

벵거빠돌이

,

14년 6월 자료네요 ㅠㅠ

https://www.thinglink.com/scene/536427472728621058?buttonSource=viewLimits



로그래밍 언어는 애초에 사람이 컴퓨터와 소통하기 위해 만든 것이지만, 필요에 따라 서로 다른 방식으로 발전해왔다. 처음에 사람과 컴퓨터는 바이너리 코드(2진수 언어)로 소통했다. 컴퓨터가 인식할 수 있는 건 1과 0 두 가지뿐이다. 전기가 통하면 1, 안 통하면 0이다. 컴퓨터에서 작동하는 모든 복잡한 프로그램과 데이터는 결국 1과 0의 조합이다.  컴퓨터는 1과 0으로 조합된 복잡한 명령을 재빨리 처리하는 장치다. 초기 컴퓨터에 명령을 내리려면 직접 전선을 연결해야 했다. 전선을 연결하면 1, 연결하지 않으면 0이라는 식이었다. 이런 식으로 수많은 전선 가닥을 연결해 복잡한 계산식을 설계해야 했다. 이것이 초창기 프로그래밍이었다.

이진수로 컴퓨터에 직접 명령을 내리던 단계에서 조금 나아가 자주 쓰는 비트 패턴을 사람이 이해할 만한 약어로 바꿨다. ‘move’, ‘jump’ 같은 명령을 패턴으로 만들어 두는 것이다. 이런 명령을 내리면 ‘어셈블러(assembler)’라는 프로그램이 명령어를 이진수로 바꿔 컴퓨터에 넘긴다. 그래서 이런 원시적인 프로그래밍 언어를 ‘어셈블리어’라고 부른다.

사람이 이해할 만한 프로그래밍 언어를 ‘고급 언어(high level language)’라고 부른다. 고급 언어가 나온 뒤 프로그래밍 언어는 급속도로 발전하기 시작했다. 요즘 널리 쓰이는 언어 대다수는 IBM이 항공우주 분야에 쓰려고 만든 고급 언어 ‘포트란’에 영향을 받았다. 프로그래밍 언어가 서로 어떻게 영향을 주고 받으며 발전했는지, 내가 쓰는 언어의 뿌리를 되짚어 보면 대학에서 C만 고집하는 교수님 속을 조금은 헤아릴 수 있지 않을까.

지금 가장 널리 쓰이는 프로그래밍 언어 12개의 계보를 인포그래픽으로 그렸다. SQL은 데이터베이스에 저장해 둔 데이터를 추출하는 쿼리 묶음 언어다. ‘데이터베이스 관리 프로그램(DBMS)’과 소통하는 데만 쓰이기 때문에 다른 언어와 동급으로 보기엔 무리가 있어 생략했다.

마우스를 인포그래픽 위에 올리면 단추가 나타난다. 단추를 누르면 간단한 설명을 볼 수 있다.

블로그 이미지

벵거빠돌이

,

2018.11.01 오전 04:45 (KR) Emirates Stadium






8강전은 12월 17일 토트넘을 만나게 됩니다. 



블로그 이미지

벵거빠돌이

,

2018.10.28 오후 22:30 (KR) Selhurst Park





 

 Match Stats

 

Crystal Palace


Arsenal

42.2

점유율%

57.8

16

슛팅

7

3

유효슛팅

2

399

패스시도

555

9

클리어런스

33

6

코너킥

4

2

오프사이드

0

10

파울

16




Booooooooooom


우나이 에메리는 원정 크리스탈 팰리스전 2:2 무승부 이후 프레스 컨퍼런스에서 경기력에 대해 파헤쳤다.

아래가 결과, 포인트 그리고 그의 전술에 대한 내용이다.

경기력에 대해..

"후반전에는 두 기점으로 두 골을 기록했습니다. 팰리스는 그들의 팬들과 함께 우리를 밀어붙였고, 모든 선수가 우리에게 공격적이었습니다.

이런 상황에서는 우리 포지션을 잃기 때문에 컨트롤이 필요합니다.

세 번째 득점이 간절했고, 침착해야 했습니다.

이런 상황에서 쉽지 않지만, 더 압박하고 계속 이길 궁리를 하길 바랬습니다. 그러지 못했지만요."

팰리스의 두 번째 골이 PK인지..

"많은 선수들을 박스 안에서 수비할 땐 그럴 수 있습니다. PK의 여부를 떠나서, (판단하는 것은) 제 분야가 아닙니다.

심판의 판정을 존중합니다. 찬스를 허용하지 않고, 볼에 대한 컨트롤 그리고 상대방을 박스 안으로 들어오지 않게 막았어야했죠. 

오늘은 그러지 못했습니다."

외질 표정이 좋지 않았는데..

"기분 나쁜건 당연하다고 생각합니다. 

저는 선수의 경기력이 좋지 않을 때 확실하게 표현하는 선수를 좋아합니다. 

2:1로 이기는 상황에서 그를 교체했을 땐 모든 선수가 계속 뛰고 싶었을 겁니다."

PK를 내준 무스타피의 오류에 대해..

"저보다 더 자세히 보셨잖아요!(웃으면서) 맞을 수도, 틀릴 수도 있습니다. 

경기를 다시 볼 것이고, 그 후에야 말할 수 있겠네요."

2:2 후에 선수들에게 무슨 말을 계속 전하려고 했는지..

"경기장에선 실수할 수 있습니다. 저도 제 선택에 있어 매일 실수를 합니다. 

실수로부터 배우고, 경기장에서 자신감과 믿음을 잃지 않게 합니다.

우리의 두 번째 골은 라카(제트)가 깊은 생각을 하고 있는 것처럼 보이지 않아서 더 궁리하도록 강요했습니다.

그 골은 상대 박스 안, 우리가 공을 가지고 있을 때였고, 좋지 않은 패스가 한 번 있었습니다.

상대 박스 안에서는 선수들에게 득점 혹은 슈팅을 위한 라스트 액션을 포함한 공격성을 보여주길 원합니다.

코너킥을 얻든 무엇이든지 말입니다. 하지만 이 패스로 인해 공을 뺏겼고, 전환으로 인해 실점했습니다.

공을 점유한 상태처럼 좋은 상황에서 우리가 보여줘야할 멘탈리티가 있습니다.

10분 남았을 땐, 더 압박하길 원했지만 말처럼 쉽지 않았기에 그러지 못했습니다."

외질 대신 웰벡을 10번 자리에 놓은 이유..

"풀럼전에서 이와 같이 배치했다가, 좋은 경기력이 나왔습니다.

지난 몇 경기처럼 우리가 약간 점유율을 놓치고, 전환에 중점을 둔 경기였다고 생각합니다.

또한, 대니(웰벡)와 라카(제트), 그 둘 사이에서 좋은 케미로 더 많은 골을 바랐습니다.

상대가 찬스를 위해 9번 역할의 선수를 투입하고, 압박 중이었으므로 프리킥에서는 수비적으로 하기 원했습니다.

대니 웰벡은 공격적이든 수비적이든 이런 상황에서는 훌륭합니다."

상위권 팀에게 압박을 주는 것을 이어가지 못해 실망스러운지..

"약간은요. 하지만 아직 우리는 과정 속에 있고, 우리의 목표를 위해서는 지금이 좋은 상황이라고 생각합니다.

원정은 힘들지만, 우리가 더 나아질 수 있다고 생각합니다. 무승부도 썩 나쁘지 않습니다.

이기고 싶지만 쉽지 않으니까 말입니다. 오늘 우리가 겪었던 것처럼 팰리스도 좋은 팀입니다.

모든 팀이 이곳에서 상대하는건 쉽지 않을 것입니다. 하지만 우리의 도전은 매 경기에서 끊임없이 배우는 것입니다.

이번 경기는 수비 상황과 경기력 향상에 관해 배울 수 있겠네요."


Granit Zhaka : 
 
무승부가 정당했는지..

"0:1인 상태에서 2:1로 따라잡았는데, 이기지 못했다면 기쁠 수가 없죠. 

후반전에는 경기력이 좋았지만 패널티는 운이 없었어요.

2점을 잃은 기분입니다."

패널티에 대한 입장은..

"난감합니다. 제가 그의 무릎을 건드려서 명백한 패널티라고 생각합니다."

골에 대해..

"감독님이 저보고 왜 전반전에는 코너킥과 프리킥을 하지 않냐고 하시길래 제가 차려했습니다.

후반전의 첫 번째 프리킥으로 기억합니다. 그래서 제가 찼죠. 그 득점에 관해선 기쁘지만, 결과에 대해선 별로 기쁘지가 않네요."

우나이랑 셀레브레이션의 의미는..

"감독님이 저보고 프리킥이나 코너킥 차라고 했고, 그 말을 지켜 득점했으니 고맙다는 말 밖에는 할 말이 없죠."

EPL이 얼마나 피 튀기는 경쟁인지 알게 되는 경기였는지..

"물론입니다. 팰리스전은 항상 힘든걸 압니다. 몇 년 전부터요. 공은 둥글고, 모든 게임을 이길 수는 없습니다.

우리의 최고 경기력은 아니지만, 우리는 최선을 다했고 1점도 괜찮습니다.

이 경기의 긍정적인 면을 받아들이고, 전진할 것입니다."


출처 : https://www.arsenal.com/news/emery-press-conference-every-single-word

번역 : https://www.fmkorea.com/index.php?document_srl=1352325433&s_comment_srl=1354128373



블로그 이미지

벵거빠돌이

,

2018.10.26 오전 01:55 Estadio Jose Alvalade





 

 Match Stats

 

Sporting CP

 

Arsenal

39

점유율%

61

15

슛팅

14

0

유효슛팅

7

279

패스시도

543

0

클리어런스

0

11

코너킥

11

1

오프사이드

1

13

파울

12



아스날은 목요일 밤 스포르팅 CP에 1-0 승리를 거두며 11연승을 내달렸습니다.


1. 새로운 레프트백 옵션 그라니트 쟈카

몬레알과 콜라시냑 모두 경미한 햄스트링 문제가 있어 위험을 무릅쓰고 출전하지 않았기 때문에 쟈카가 레프트백 임무를 맡게 됐습니다.


쟈카는 지난 레스터 시티전에서 짧은 시간 동안 이 자리에서 뛰었고, 오늘 경기는 쟈카에게 있어 훨씬 더 길고 도전적인 테스트였죠.


前 맨유 출신 윙어인 나니를 상대해야 했기 때문입니다. 하지만 쟈카는 낯선 포지션에서 자신의 역할을 잘 수행했습니다.


아마 쟈카가 레프트백 자리의 장기적인 옵션은 아닐거에요. 하지만 그의 다재다능함이 유용한 땜빵으로 활용할 수 있게 했습니다.


쟈카의 인상적인 모습은 에메리 감독에게 많은 도움이 될 겁니다.


2. 미드필드 구역에서 돋보였던 마테오 귀엥두지

귀엥두지는 19살에 불과한 선수지만, 그는 확실히 볼을 소유했을 때 숨거나 책임을 회피하거나 혹은 쉬운 선택을 하지 않습니다.


귀엥두지는 지속적으로 볼을 받았는데 이건 그가 동료들로부터 얼마나 높은 평가를 받았는 지를 보여주는 척도입니다.


동료들은 귀엥두지가 미드필드 구역에서 조율하는 모습을 보며 행복해 했습니다.


귀엥두지는 전반전에만 47차례 볼을 터치했고 40개의 패스를 성공시켰으며 이는 경기장 위에 다른 선수들보다 많은 수치입니다.


또한 87.5%의 패스 성공률을 기록했으며 이 역시 램지와 엘네니 다음으로 좋은 기록입니다.


비록 아직은 커리어 시작 단계에 불과하지만, 경기를 지배하고자 하는 귀엥두지의 열망은 매우 고무적입니다.



3. 하나의 징크스를 깨고 또다른 징크스를 이어가다.

이번 경기 전까지 아스날은 6차례 포르투갈 원정을 떠나 단 한 번도 승리를 거두지 못했었습니다. (3무 3패) 


하지만 웰벡의 득점으로 마침내 이 좆같은 징크스에서 탈출하게 됐습니다.


또한 11연승이라는 기록도 이어나가게 됐을 뿐만 아니라 후반전에 득점하는 기록 역시 이어가게 됐습니다.


아스날은 이번 시즌 득점한 33골 중 23골을 후반전에 넣었으며, 오늘 경기 역시 전반전엔 별로였지만 후반전엔 눈에 띄게 향상된 경기력을 펼쳤습니다. 



4. 점점 더 위협적인 모습의 대니 웰벡

라카제트, 외질, 오바메양 같은 선수들이 헤드라인을 장식하는 경향이 있는 반면, 웰벡의 번뜩임은 다소 덜 알려져 있습니다.


웰레는 자신의 트레이드 마크인 높은 에너지와 저돌적인 움직임으로 관중들의 눈을 사로잡았고, 결국에는 경기를 결정짓는 득점을 해냈습니다.


상대 수비의 실책 후 흐른 볼을 잡아 잘 마무리한 웰벡의 득점은 최근 5번의 선발 경기에서 기록한 5번째 공격 포인트였습니다. (4골 1어시)


웰벡에게 있어 순조로운 시즌 출발입니다.


번역 : https://www.fmkorea.com/best/1346303442

블로그 이미지

벵거빠돌이

,

2018.10.23 오전 04:00 (KR) Emirates Stadium




Ozile - Bellerin - Ozil


Ozil - Bellerin - Aubameyang


Torreira - Aubameyang - Guendouzi - Bellerin - (Ozil) - Lacazette - Ozil - Aubameyang


 

 Match Stats

 

Arsenal


Leicester City

69.1

점유율%

30.9

19

슛팅

8

6

유효슛팅

2

703

패스시도

309

12

클리어런스

18

6

코너킥

4

2

오프사이드

1

10

파울

10





Lacazette moved to the Emirates Stadium in the summer of 2017 and is expected to make his 50th appearance for the club when they host Leicester on Monday night.


라카제트 아스날 소속 50번째 출장 !!!


10연승!!!


에메리 볼!

Torreira - Aubameyang - Guendouzi - Bellerin - (Ozil) - Lacazette - Ozil - Aubameyang

Team Goal by Arsenal

블로그 이미지

벵거빠돌이

,