Програмният език Python навърши 30 години

На 20 февруари 1991 г. Гвидо ван Росум публикува първата версия на езика за програмиране Python в групата alt.sources, върху която работи от декември 1989 г. в рамките на проект за създаване на скриптов език за решаване на задачи по системно администриране в операционната система Amoeba, който да бъде на по-високо ниво от C, но, за разлика от Bourne shell, да предоставя по-удобен достъп до системните повиквания на ОС.

Името на проекта е избрано в чест на комедийната група Монти Пайтон (Monty Python). В първата версия е реализирана поддръжка на класове с наследяване, обработка на изключения, система от модули и базови типове list, dict и str. Реализацията на модулите и изключенията е заимствана от езика Modula-3, а стилът на кодиране на базата на отстъпи е от езика ABC, в разработката на който Гвидо е участвал преди това.

По време на създаването на Python Гвидо се ръководи от следните принципи:

  • Принципи, които спестяват време при разработката:
    • Заимстване на полезни идеи от други проекти.
    • Стремеж към простота, но без прекомерно опростяване (принципът на Ейнщайн "Всичко трябва да бъде изложено толкова просто, колкото е възможно, но не и по-просто").
    • Следване на философията UNUX, при която програмите реализират едно конкретно функционалност, но го правят добре.
    • Не е нужно да се притеснявате твърде много за производителността, оптимизациите могат да се добавят при необходимост, когато станат нужни.
    • Не се опитвайте да се борите с установените неща, а плувайте по течението.
    • Избягвайте перфекционизма, обикновено е достатъчно "достатъчно добре".
    • Понякога е допустимо да пропуснете детайли, особено ако можете да го направите по-късно.
  • Останалите принципи:
    • Реализацията не трябва да е привързана към конкретна платформа. Някои възможности могат да не са налични винаги, но основната функционалност трябва да работи навсякъде.
    • Не натоварвайте потребителите с детайли, които машината може да обработи.
    • Подкрепа и насърчаване на платформенезависим потребителски код, но без ограничаване на достъпа до възможностите и особеностите на платформата.
    • Голямите сложни системи трябва да предоставят няколко нива за разширение.
    • Грешките не трябва да са фатални и незабележими — потребителският код трябва да има възможност да прихваща и обработва грешките.
    • Грешките в потребителския код не трябва да влияят на функционалността на виртуалната машина и не трябва да водят до неопределено поведение на интерпретатора и до срив на процесите.

    Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster