lexpexkex (lexpexkex) wrote,
lexpexkex
lexpexkex

Первые впечатления о Питоне.

Читал о том, что в питоне просто идеальный подход к ООП и прочие розовые слюни.
И правда, даже поиск о шаблонах проектирования в питоне как-то особо ничего не находит, кроме мнения, что "питону это не нужно". Казалось бы, что ещё надо для счастья идиоту? Но...

В итоге оказалось, что в методах классов надо переменные классов записывать как self.var.
Короче, везде надо добавлять self. Это раздражает.
Второй косяк с инкапсуляцией. Её просто нет. Если в С++ инкапсуляция доставляла мне гемморой и я ей не пользовался, потому что ленивый лох, то тут её просто нет. В качестве решения предлагают называть переменные и функции начиная с подчёркивания, чтобы другие программисты, плять, знали, что их трогать не надо.
И фиг бы с ним, но когда я пишу класс, я хочу оставить доступными только пару функций и переменных, через которые можно рулить объектом. Но в питоне хер спрячешь лишнее, в итоге, когда я нажимаю точку, чтобы посмотреть методы, мне просто реально высыпается туева хуча функций и переменных и искать нужные в этой каше банально неудобно. Не поймите меня неправильно, я хер забил бы на безопасность и что чужой дядя может не понять мой говнокод, но это просто неудобно при написании. Поставил точку - получил методы, а не кашу. И только так.

Поддержка синтаксиса и автодополнений в визуал студио какая-то корявая. Далеко не всегда, когда ставишь точку после имени какого-нибудь объекта видны доступные методы.

Учитывая, что питон считается самым удобным языком для программеров и вообще уть ли не преподносится, как единственный язык, приносящий удовольствие, мне это кк-то не зашло совсем. Это неудобно.
Вдвойне неудобно писать перед каждой переменной self. и начинать её с подчёркивания, ибо оно с шифтом и тянуться надо. Раздражает.

Для тренировки тупо переписал свою "диалоговую машину" на питон. Да, пару вещей оказалось более удобными. Да, некоторые встроенные функции слегка упростили задачу (хотя и с их заменой я вообще не запаривался). Единственный громадный плюс - практически прямая работа с json-файлами. Считал из файла, получил словарь. Сохранил словарь в файл одной строкой - получил json. Удобно, привычно, понятно. Как родное. В С++ с этим значительно похуже, ибо в итоге получается не родной словарь, а мутный rapidjson документ, который надо изучать на оффсайте.

Но, надеюсь, хоть в питоне я смогу осилить многофайловые проекты с пересекающимися классами, где из одного класса может вызываться метод другого. Например, при выкидывании из инвентаря я должен добавить объект на уровень, а значит иметь доступ к методу уровня.

Буду вникать дальше, конечно, но пока не буду учить всякие сторонние модули.
Subscribe

  • Ну, если москали уберутся, то хорошо.

    Что тут ещё сказать? Война не радует. Учения закончены, если начнут возвращаться в Каспий и Сибирь, то ОК. Непонятно, правда, зачем такой переход из…

  • Настала пора выполнять предвыборные обещания.

    Кандидат в президенты Украины, шоумен Владимир Зеленский, лидирующий в предвыборной гонке, в интервью телеканалу «1+1» объяснил свои слова о…

  • О ВСУ.

    Тут мне закидывают, что ВСУ имеют сравнимую численность с собравшейся группировкой, и легко наберут миллион для защиты Родины, отражения агрессии и…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 38 comments

  • Ну, если москали уберутся, то хорошо.

    Что тут ещё сказать? Война не радует. Учения закончены, если начнут возвращаться в Каспий и Сибирь, то ОК. Непонятно, правда, зачем такой переход из…

  • Настала пора выполнять предвыборные обещания.

    Кандидат в президенты Украины, шоумен Владимир Зеленский, лидирующий в предвыборной гонке, в интервью телеканалу «1+1» объяснил свои слова о…

  • О ВСУ.

    Тут мне закидывают, что ВСУ имеют сравнимую численность с собравшейся группировкой, и легко наберут миллион для защиты Родины, отражения агрессии и…