LINUX.ORG.RU

История изменений

Исправление twinpeaks, (текущая версия) :

emorozov (08.12.21 13:00:17)

Второе, что ты с самого начала утверждал, что хороший код — только тот, который удовлетворяет паре-тройке формальных признаков, основные - паттерны GoF и использование асинхронщины.

Где я удтверждал именно ровно в такой точно формулировке?

что хороший код — только тот

Я не давал ни каких оценок «хорошему» или «плохому» коду в целом. Я напомню, я говорил что:

  • питонисты ничего не соблюдают (про паттерны) в своей массе
  • не любят юзать async/await , хотя большинство языков обзавелось этим и многие юзают

К примеру, в той же Java - нет async/await (но есть в C#), но суть не в этом. Ты всё хочешь увести, что мол я якобы говорю:

Если нет паттернов, GoF, async/await - то это априори плохо.

Нет, я так не говорил. И это не плохо. Сразу тебе отвечаю. К примеру, я Haskell люблю мацать, ес-но там ОО-дизайн не всрался и типа async/await основан на Монадах может быть:

import Control.Concurrent.Async (async, wait)

newtype Task a = Task { fork :: IO (IO a) }

newTask :: IO a -> Task a
newTask io = Task $ do
    w <- async io
    return (wait w)

instance Monad Task where
    return a = Task $ return (return a)
    m >>= f  = newTask $ do
        aFut <- fork m
        a    <- aFut
        bFut <- fork (f a)
        bFut

Просто, это означает:

  • иной дизайн
  • иную парадигму
  • иные правилы

НО! Сцуко, правила-то все равно есть!!! Т.е. хочешь - не хочешь, но они есть, они просто иные. Поэтому, я не мог априори говорить, что GoF - это высечено на крови обязаловкой. Нет.

GoF и паттерны хорошо подходят для своей нищы: C#, Java, C++. Но! Поскольку, в Python v3 добавилось многое, что позволяет хоть «как-то» приблизиться и перестать писать говно из def()-глобалок, то почему бы Питонистам не перевоспитаться?

Плюс, соблюдение ОО-дизайна и GoF, там где это надо - хорошо, потому что обязывает структурировать, а не делать лапшу из 100500 глобальных функций.

P.S. и что есть адекватные питонисты, которые и в этом треде написали, что:

  • структурируют
  • даже какие-то паттерны применяют и др.

Я это признаю, НО! подчеркиваю, что таких - меньшинство. Речь в треде - о грехах большинства.

Исправление twinpeaks, :

emorozov (08.12.21 13:00:17)

Второе, что ты с самого начала утверждал, что хороший код — только тот, который удовлетворяет паре-тройке формальных признаков, основные - паттерны GoF и использование асинхронщины.

Где я удтверждал именно ровно в такой точно формулировке?

что хороший код — только тот

Я не давал ни каких оценок «хорошему» или «плохому» коду в целом. Я напомню, я говорил что:

  • питонисты ничего не соблюдают (про паттерны) в своей массе
  • не любят юзать async/await , хотя большинство языков обзавелось этим и многие юзают

К примеру, в той же Java - нет async/await (но есть в C#), но суть не в этом. Ты всё хочешь увести, что мол я якобы говорю:

Если нет паттернов, GoF, async/await - то это априори плохо.

Нет, я так не говорил. И это не плохо. Сразу тебе отвечаю. К примеру, я Haskell люблю мацать, ес-но там ОО-дизайн не всрался и типа async/await основан на Монадах может быть:

import Control.Concurrent.Async (async, wait)

newtype Task a = Task { fork :: IO (IO a) }

newTask :: IO a -> Task a
newTask io = Task $ do
    w <- async io
    return (wait w)

instance Monad Task where
    return a = Task $ return (return a)
    m >>= f  = newTask $ do
        aFut <- fork m
        a    <- aFut
        bFut <- fork (f a)
        bFut

Просто, это означает:

  • иной дизайн
  • иную парадигму
  • иные правилы

НО! Сцуко, правила-то все равно есть!!! Т.е. хочешь - не хочешь, но они есть, они просто иные. Поэтому, я не мог априори говорить, что GoF - это высечено на крови обязаловкой. Нет.

GoF и паттерны хорошо подходят для своей нищы: C#, Java, C++. Но! Поскольку, в Python v3 добавилось многое, что позволяет хоть «как-то» приблизиться и перестать писать говно из def()-глобалок, то почему бы Питонистам не перевоспитаться?

Плюс, соблюдение ОО-дизайна и GoF, там где это надо - хорошо, потому что обязывает структурировать, а не делать лапшу из 100500 глобальных функций.

P.S. и что есть адекватные питонисты, которые и в этом треде написали, что:

  • структурируют
  • даже какие-то паттерны применяют и др.

Я это признаю, НО! подчеркиваю, что таких - меньшенство. Речь в треде - о грехах большинства.

Исправление twinpeaks, :

emorozov (08.12.21 13:00:17)

Второе, что ты с самого начала утверждал, что хороший код — только тот, который удовлетворяет паре-тройке формальных признаков, основные - паттерны GoF и использование асинхронщины.

Где я удтверждал именно ровно в такой точно формулировке:

что хороший код — только тот

Я не давал ни каких оценок «хорошему» или «плохому» коду в целом. Я напомню, я говорил что:

  • питонисты ничего не соблюдают (про паттерны) в своей массе
  • не любят юзать async/await , хотя большинство языков обзавелось этим и многие юзают

К примеру, в той же Java - нет async/await (но есть в C#), но суть не в этом. Ты всё хочешь увести, что мол я якобы говорю:

Если нет паттернов, GoF, async/await - то это априори плохо.

Нет, я так не говорил. И это не плохо. Сразу тебе отвечаю. К примеру, я Haskell люблю мацать, ес-но там ОО-дизайн не всрался и типа async/await основан на Монадах может быть:

import Control.Concurrent.Async (async, wait)

newtype Task a = Task { fork :: IO (IO a) }

newTask :: IO a -> Task a
newTask io = Task $ do
    w <- async io
    return (wait w)

instance Monad Task where
    return a = Task $ return (return a)
    m >>= f  = newTask $ do
        aFut <- fork m
        a    <- aFut
        bFut <- fork (f a)
        bFut

Просто, это означает:

  • иной дизайн
  • иную парадигму
  • иные правилы

НО! Сцуко, правила-то все равно есть!!! Т.е. хочешь - не хочешь, но они есть, они просто иные. Поэтому, я не мог априори говорить, что GoF - это высечено на крови обязаловкой. Нет.

GoF и паттерны хорошо подходят для своей нищы: C#, Java, C++. Но! Поскольку, в Python v3 добавилось многое, что позволяет хоть «как-то» приблизиться и перестать писать говно из def()-глобалок, то почему бы Питонистам не перевоспитаться?

Плюс, соблюдение ОО-дизайна и GoF, там где это надо - хорошо, потому что обязывает структурировать, а не делать лапшу из 100500 глобальных функций.

P.S. и что есть адекватные питонисты, которые и в этом треде написали, что:

  • структурируют
  • даже какие-то паттерны применяют и др.

Я это признаю, НО! подчеркиваю, что таких - меньшенство. Речь в треде - о грехах большинства.

Исходная версия twinpeaks, :

emorozov (08.12.21 13:00:17)

Второе, что ты с самого начала утверждал, что хороший код — только тот, который удовлетворяет паре-тройке формальных признаков, основные - паттерны GoF и использование асинхронщины.

Где я удтверждал именно ровно в такой точно формулировке:

что хороший код — только тот

Я не давал ни каких оценок «хорошему» или «плохому» коду в целом. Я напомню, я говорил что:

  • питонисты ничего не соблюдают (про паттерны) в своей массе
  • не любят юзать async/await , хотя большинство языков обзавелось этим и многие юзают

К примеру, в той же Java - нет async/await (но есть в C#), но суть не в этом. Ты всё хочешь увести, что мол я якобы говорю:

Если нет паттернов, GoF, async/await - то это априори плохо.

Нет, это не плохо. Сразу тебе отвечаю. К примеру, я Haskell люблю мацать, ес-но там ОО-дизайн не всрался и типа async/await основан на Монадах может быть:

import Control.Concurrent.Async (async, wait)

newtype Task a = Task { fork :: IO (IO a) }

newTask :: IO a -> Task a
newTask io = Task $ do
    w <- async io
    return (wait w)

instance Monad Task where
    return a = Task $ return (return a)
    m >>= f  = newTask $ do
        aFut <- fork m
        a    <- aFut
        bFut <- fork (f a)
        bFut

Просто, это означает:

  • иной дизайн
  • иную парадигму
  • иные правилы

НО! Сцуко, правила-то все равно есть!!! Т.е. хочешь - не хочешь, но они есть, они просто иные. Поэтому, я не мог априори говорить, что GoF - это высечено на крови обязаловкой. Нет.

GoF и паттерны хорошо подходят для своей нищы: C#, Java, C++. Но! Поскольку, в Python v3 добавилось многое, что позволяет хоть «как-то» приблизиться и перестать писать говно из def()-глобалок, то почему бы Питонистам не перевоспитаться?

P.S. и что есть адекватные питонисты, которые и в этом треде написали, что:

  • структурируют
  • даже какие-то паттерны применяют и др.

Я это признаю, НО! подчеркиваю, что таких - меньшенство. Речь в треде - о грехах большинства.