Програмиране с python 2012, лекция 0

74
Tuesday, March 6, 12

Upload: alek-andreev

Post on 21-Jul-2015

1.314 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 2: Програмиране с Python 2012, лекция 0

0. Програмиране с Python

Алек АндреевНиколай БачийскиКирил ВладимировЙоан Карадимов

Tuesday, March 6, 12

Page 3: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 4: Програмиране с Python 2012, лекция 0

План

Tuesday, March 6, 12

Page 5: Програмиране с Python 2012, лекция 0

ПланЗа курса

Tuesday, March 6, 12

Page 6: Програмиране с Python 2012, лекция 0

ПланЗа курса

Цели на курса

Tuesday, March 6, 12

Page 7: Програмиране с Python 2012, лекция 0

ПланЗа курса

Цели на курсаОрганизационни

Tuesday, March 6, 12

Page 8: Програмиране с Python 2012, лекция 0

ПланЗа курса

Цели на курсаОрганизационниЕзикът Python

Tuesday, March 6, 12

Page 9: Програмиране с Python 2012, лекция 0

ПланЗа курса

Цели на курсаОрганизационниЕзикът PythonЗащо Python?

Tuesday, March 6, 12

Page 10: Програмиране с Python 2012, лекция 0

План

Tuesday, March 6, 12

Page 11: Програмиране с Python 2012, лекция 0

21 фев. - ???23 фев. - Python за 1 ден28 фев. - “входен” тест

Tuesday, March 6, 12

Page 12: Програмиране с Python 2012, лекция 0

За курса

Tuesday, March 6, 12

Page 13: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 14: Програмиране с Python 2012, лекция 0

http://www.flickr.com/photos/martin_heigan/4086843060/

Tuesday, March 6, 12

Page 15: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 16: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 17: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 18: Програмиране с Python 2012, лекция 0

Цели на курса

Tuesday, March 6, 12

Page 19: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 20: Програмиране с Python 2012, лекция 0

1 2 3

Tuesday, March 6, 12

Page 21: Програмиране с Python 2012, лекция 0

1 Друга гледна точка

Tuesday, March 6, 12

Page 22: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 23: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 24: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 25: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 26: Програмиране с Python 2012, лекция 0

Какво можем да направим с един динамичен език

Tuesday, March 6, 12

Page 27: Програмиране с Python 2012, лекция 0

Функционалния стил в живия живот

Tuesday, March 6, 12

Page 28: Програмиране с Python 2012, лекция 0

Итератори и генератори

Tuesday, March 6, 12

Page 29: Програмиране с Python 2012, лекция 0

Автоматизирано тестване

Tuesday, March 6, 12

Page 30: Програмиране с Python 2012, лекция 0

Version control(Git)

Tuesday, March 6, 12

Page 31: Програмиране с Python 2012, лекция 0

1 Друга гледна точка

2 Да придобиете умения

Tuesday, March 6, 12

Page 32: Програмиране с Python 2012, лекция 0

1 Друга гледна точка

2 Да придобиете умения

3 Да се забавляваме

Tuesday, March 6, 12

Page 33: Програмиране с Python 2012, лекция 0

Организационни

Tuesday, March 6, 12

Page 34: Програмиране с Python 2012, лекция 0

1 2 3

Tuesday, March 6, 12

Page 35: Програмиране с Python 2012, лекция 0

1 Лекции

Tuesday, March 6, 12

Page 36: Програмиране с Python 2012, лекция 0

вторник и четвъртък19 часа

зала 101/200, ФМИ

Tuesday, March 6, 12

Page 38: Програмиране с Python 2012, лекция 0

1 Лекции

2 Сайт

Tuesday, March 6, 12

Page 40: Програмиране с Python 2012, лекция 0

1 Лекции

2 Сайт

3 Консултации

Tuesday, March 6, 12

Page 41: Програмиране с Python 2012, лекция 0

Торонто

Tuesday, March 6, 12

Page 42: Програмиране с Python 2012, лекция 0

Консултации

Tuesday, March 6, 12

Page 43: Програмиране с Python 2012, лекция 0

≈300

160

130

100

7013376

54

3

Tuesday, March 6, 12

Page 44: Програмиране с Python 2012, лекция 0

Два теста50 точки

Задачи50 точки

Проект50 точки

Други150 точки

Tuesday, March 6, 12

Page 45: Програмиране с Python 2012, лекция 0

Subject to change.

Tuesday, March 6, 12

Page 46: Програмиране с Python 2012, лекция 0

Други

Tuesday, March 6, 12

Page 47: Програмиране с Python 2012, лекция 0

1. Участие в час (сникерси)2. Бонус за домашни3. Форум4. Да помагате на другите5. Ревизиране на домашни

Tuesday, March 6, 12

Page 48: Програмиране с Python 2012, лекция 0

Езикът Python

Tuesday, March 6, 12

Page 49: Програмиране с Python 2012, лекция 0

питон vs. пайтън

Tuesday, March 6, 12

Page 50: Програмиране с Python 2012, лекция 0

Python 3Python 2.7

Tuesday, March 6, 12

Page 51: Програмиране с Python 2012, лекция 0

ООПTuesday, March 6, 12

Page 52: Програмиране с Python 2012, лекция 0

Процедурният стил също е на почит

Tuesday, March 6, 12

Page 53: Програмиране с Python 2012, лекция 0

Интерпретируем

Tuesday, March 6, 12

Page 54: Програмиране с Python 2012, лекция 0

Динамичен

Tuesday, March 6, 12

Page 55: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 56: Програмиране с Python 2012, лекция 0

Динамично типизиранDuck typing

Tuesday, March 6, 12

Page 57: Програмиране с Python 2012, лекция 0

Свободен!Tuesday, March 6, 12

Page 58: Програмиране с Python 2012, лекция 0

Испанската инквизиция(Не я очаквахте, нали?)

Tuesday, March 6, 12

Page 59: Програмиране с Python 2012, лекция 0

Monty PythonTuesday, March 6, 12

Page 60: Програмиране с Python 2012, лекция 0

Защо Python?

Tuesday, March 6, 12

Page 61: Програмиране с Python 2012, лекция 0

Супер прост синтаксисprint("Hello, World!")

def answer(question): if question == 'Life' or question == 'Universe': return 42 else: return 6 * 9 # четиридесет и две

Tuesday, March 6, 12

Page 62: Програмиране с Python 2012, лекция 0

alek@ricotta:~$ python3Python 3.2.2 (v3.2.2:137e45f15c0b, Sep 3 2011, 17:28:59) >>> a = 4 + 12>>> a * 42672

Интерактивен интерпретатор

Tuesday, March 6, 12

Page 63: Програмиране с Python 2012, лекция 0

Култура на езика

Tuesday, March 6, 12

Page 64: Програмиране с Python 2012, лекция 0

• използване на инстроспекция за по-малко код

Култура на езика

Tuesday, March 6, 12

Page 65: Програмиране с Python 2012, лекция 0

• използване на инстроспекция за по-малко код • итератори/генератори

Култура на езика

Tuesday, March 6, 12

Page 66: Програмиране с Python 2012, лекция 0

• използване на инстроспекция за по-малко код • итератори/генератори • Test Driven Development

Култура на езика

Tuesday, March 6, 12

Page 67: Програмиране с Python 2012, лекция 0

• използване на инстроспекция за по-малко код • итератори/генератори • Test Driven Development • функционален стил в нефунцкционалния Python

Култура на езика

Tuesday, March 6, 12

Page 68: Програмиране с Python 2012, лекция 0

• използване на инстроспекция за по-малко код • итератори/генератори • Test Driven Development • функционален стил в нефунцкционалния Python • документация още в изходния код

Култура на езика

Tuesday, March 6, 12

Page 69: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12

Page 70: Програмиране с Python 2012, лекция 0

бавен?

Tuesday, March 6, 12

Page 71: Програмиране с Python 2012, лекция 0

CTuesday, March 6, 12

Page 72: Програмиране с Python 2012, лекция 0

GvR

Guido van Rossum

BDFLBenevolent Dictator For Life

Tuesday, March 6, 12

Page 73: Програмиране с Python 2012, лекция 0

...Tuesday, March 6, 12

Page 74: Програмиране с Python 2012, лекция 0

Tuesday, March 6, 12