UTF-8

Nedir?
UTF-8 8-bitlik bir Unicode* dönüşüm biçimidir. 0-127 arası ASCII* harici karakterler, 1-6 byte uzunluğunda diziler olarak kodlanır. Bu da ek olarak veri sığa kullanımı demektir.

UTF-8, unicode karakter setlerinin en geçerli olanı. Dünyadaki bütün alfabelerin bütün karakterlerine bu sette yer alır. Karakter seti karışıklığına yol açmadan, hepsini bir arada kullanmayı mümkün kılar.

Joseph Becker’in 29 Ağustos 1988 tarihinde yazdığı Unicode 88 başlıklı makale, unicode hakkındaki ilk taslak metin olması bakımından önem taşır. Becker bu makalede neden unicode gibi bir sisteme ihtiyaç duyulduğunu, ascii’nin İngilizce dışındaki dillere ait karakterleri göstermekteki yetersizliğini ve herkesin ihtiyacına cevap verebilecek bir sistemin nasıl ortaya çıkarılabileceğini anlatır. Bu makaleye http://unicode.org/history/unicode88.pdf adresinden ulaşabilirsiniz.

Unicode 2.0’dan itibaren 16-bit sınırlaması kaldırılmıştır.


>>> a = unicode("Kâğıt", "utf-8")   # yada a = u"Kâğıt"
>>> b = "Kâğıt"
>>>
>>> a
u'K\xe2\u011f\u0131t'
>>> len(a)
5
>>> type(a)
type 'unicode'
>>> b
'K\xc3\xa2\xc4\x9f\xc4\xb1t'

>>> len(b)
8
>>> type(b)
type 'str'


Yorum
Yüzyıllardır süren asimilasyon dünyadaki birçok dili yok etmiştir. Bu şekilde devam ederse, gelecekte ASCII bize yetebilecektir :( Çok dilli, çok renkli dünyalar dileği ile...

*unicode” ise Türkçe’ye özgü harflerle birlikte dünya üzerindeki pek çok dile ait harfleri de tanıyabilen karakter kodlama biçimlerini içeren, gelişmiş bir sistemdir.
*“ascii”, Türkçe’ye özgü “ş”, “ç”, “ö”, “ğ”, “ü” ve “ı” gibi harfleri tanımayan bir karakter kodlama biçimidir. 7-bitlik bir karakter kümesidir.

http://www.evanjones.ca/python-utf8.html
http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
http://tr.wikipedia.org/wiki/UTF-8
http://opereysin.com/edebi-hezeyanlar/825-utf-8-ve-kizilderili-asimilasyonu/
http://www.istihza.com/py2/unicode.html