전체 글 354

Kotlin - 기본 자료형, 그리고 변수의 선언 및 할당

Kotlin에서는 변수들의 member function과 property를 호출할 수 있다는 점에서 변수들이 object로 되어 있다는 것을 알 수 있다. 일부 type의 경우 내부적으로는 primitive value로 관리될 지라도 사용자는 일반적인 class로 인지한다. (numbers, characters, booleans) Kotlin에서 일반적으로 사용되는 기본 변수 type은 다음과 같다. numberscharactersbooleansarraysstrings Kotlin에서 변수를 선언하고 값을 할당하는 방법은 2가지로 var과 val을 사용하는 방법이 있다. var과 val의 차이 val (Immutable reference) - val을 통해 선언된 변수는 한번 할당되면 수정이 불가능하다...

Language/Kotlin 2018.07.09

Kotlin - Kotlin 이 가지는 의미.

Android java api를 찾아볼 일이 생겨 android developers 에 오랜만에 접속하였다. Android Jetpack 이라는 메뉴가 보였다. Android app을 만들기 위해 Google이 새롭게 내놓은 library/tool의 모음이겠거니 생각이 들었다. Android Jetpack components are a collection of libraries that are individually adoptable and built to work together while taking advantage of Kotlin language features that make you more productive. 하지만 Android jetpack을 설명하는 문구 중에 Kotlin langu..

Language/Kotlin 2018.07.09

HTTP에서 HTTPS로의 전환 (with Let's encrypt)

언젠가부터 크롬 브라우저의 주소창 옆에 "안전하지 않음"이라고 표시되기 시작했다. 국내 대형 포털 중 하나인 daum.net 의 2차 도메인에도 안전하지 않음이 보인다. 왜 안전하지 않다고 하는 것일까. 위에 언급한 다음을 예로 들면 우리가 인터넷을 하는 컴퓨터와 포털 서버 사이에 아무런 암호화없이 데이터가 오가고 있는 중이라고 이해하면 좋을 것이다. 암호화 없이 데이터가 오간다는 것은 그 중간에서 누군가 그 내용을 들여다 볼 수 있다는 것을 의미하는 것이다. 예를 들면 현재 인터넷을 하고 있는 컴퓨터 바로 옆에 연결된 컴퓨터에서 무엇을 하고 있는지, 어떤 사이트에 들어가서 무엇을 하는지 다 알 수 있다는 것이다. 현재 글을 작성하고 있는 technote.kr 도 마찬가지이다. 현재 티스토리 기반으로 운..

Wordpress - functions.php 과 plugin의 사용의 차이

wordpress 의 기본 동작을 바꾸는 방법에는 두가지가 있다. 각 theme 폴더에 포함되어 있는 functions.php 파일을 사용.plugin 설치하여 사용. plugin과 functions.php 파일을 사용의 차이 Wordpress plugin을 사용하였을 경우Plugin 패널에서 활성화되었을 경우만 사용 가능모든 theme에 적용됨유일하고 특정한 Header text 필요 (아직 까지는 무슨 말인지 정확히 판단 불가, 원문: Requires specific unique Header text)wp-content/plugins 의 하위 디렉토리에 위치 functions.php 파일을 사용하였을 경우현재 활성화된 theme 의 디렉토리에 있는 functions.php 만 수행해당 theme 에 ..

Python - package와 module의 차이

Python에 있어 module은 하나의 python 코드 파일을 의미한다. 파일 이름 자체가 module을 나타내는 이름이다. 반면 package는 module을 모아 놓은 directory 구조하고 할 수 있다. module 과 package 사용의 예> import ModuleName import PackageNamefrom PackageName import ModuleName import를 하게 되면 해당 ModuleName 혹은 PackageName 이 Loading 상태인지 확인 후 Loading이 되지 않은 상태라면 다음의 위치에서 존재를 확인한다. 1) sys.path 에 선언된 위치2) 현재 실행 위치 Ubuntu 14.04 python 2.7에서 sys.path를 확인해 보면 다음과 같..

Language/Python 2018.06.16

Python - datetime/time module, 현재 시간 출력 방법

datetime 혹은 time module 중 하나를 이용하여 현재 시간을 표시할 수 있다. 먼저 datetime 을 이용한 현재 시간 표현은 다음과 같다. import datetime now = datetime.datetime.now() print now 결과> $ python now_datetime.py 2018-06-05 10:30:06.986065 반면 time module을 이용하면 좀 더 세분화/정교화하여 표시할 수 있다. import time now = time.localtime() print "%04d/%02d/%02d %02d:%02d:%02d" % (now.tm_year, now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec) 결과..

Language/Python 2018.06.16

Python - email package, raw email message 다루기

poplib 를 이용해 raw email message를 받아오더라도 MIME (Multipurpose Internet Mail Extensions, 전자 우편을 위한 인터넷 표준 포맷)이기 때문에 막상 출력해 보면 알아보기 힘든 문자열들로 표현되어 있다. 이에 따라 원하는 값을 추출하기 위해 추가적인 코드를 작성하여야 한다. MIME 형식의 raw email message를 parsing 하기 위해서는 python의 email package를 사용하면 된다. poplib의 M.retr()[1] 을 통해 구한 raw email string은 아래의 코드를 통해 하나의 string으로 표현이 가능하다. raw_email = b"\n".join(M.retr(mList+1)[1]) 이렇게 구해진 raw_ema..

Language/Python 2018.06.15

Python - poplib, POP3 를 통한 이메일 수신

이메일을 웹 Interface가 아닌 별도의 프로그램을 통해 수신하기 위해서는 POP3 혹은 IMAP 을 사용하여야 한다. 가볍게는 POP3가 많이 사용되고, 좀 더 구체적인 기능을 위해서는 IMAP을 사용하면 된다. python에서 POP3을 사용해 이메일 수신하는 방법 python2 : https://docs.python.org/2/library/poplib.html python3 : https://docs.python.org/3/library/poplib.html python2나 python3나 POP3를 위한 python library - poplib 를 가지고 있다. 간단하게 네이버 메일에서 POP3를 통해 이메일을 수신하는 코드를 살펴보자. import getpass, poplib M = po..

Language/Python 2018.06.15

netfilter

iptables : linux kernel의 firewall (netfilter) 를 설정하는 user-space program로 netfilter core 팀에 의해 작성 좀 더 구체적으로 protocol에 따라 아래와 같다.iptables : IPv4ip6tables : IPv6arptables : ARPebtables : ethernet frames bridge iptables 는 user-space program을 말할 때 사용되기도 하지만 kernel-space의 IPv4 firewall을 말할 때도 사용된다.4개의 방화벽 구조를 통틀어 Xtables 라고 하기도 한다. kernel 3.13 이후 new packet classification framework라고 해서 ntftables가 기존 ..

카테고리 없음 2018.05.27

Python - divmod(), 두 숫자를 나누어 몫과 나머지를 tuple로 반환하는 함수

divmod >>> divmod(x, y) 두 숫자를 인자로 전달 받아 첫번째 인자를 두번째 인자로 나눈 몫과 나머지를 tuple 형식으로 반환한다. __builtin__ module에 포함된 function 이다. argument x - 복소수(complex)가 아닌 숫자.y - 복소수(complex)가 아닌 숫자. return value 몫과 나머지를 tuple로 반환한다. example 모든 인자가 양의 정수일 경우) >>> divmod(4,2) (2, 0) >>> divmod(8,3) (2, 2) 인자 중 음의 정수가 있을 경우) >>> divmod(10,-3) (-4, -2) >>> divmod(-10,-3) (3, -1) >>> divmod(-10,3) (-4, 2) 인자 중 실수가 있을 경우..

Language/Python 2018.01.13