1. C++ / Говнокод #7019

    +175

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    class BalanceValue
    {
      /* ... */
      BalanceValue( int pFamilyGroupId,
                    int ContractId,
                    int pProfileId,
                    int pSncode,
                    long pPurchaseSeqNo,
                    int pBundledProductId,
                    time_t pCreationDate,
                    time_t pNextresetDate,
                    char pState,
                    double pAggregate,
                    double pCredit,
                    double pInitialCredit,
                    double pReservation,
                    char pColor,
                    double pProrateFactor,
                    int pCurrencyId,
                    int pUomId,
                    time_t pSnapshotDate,
                    unsigned long pSequenceNumber,
                    time_t pValidFrom,
                    time_t pValidTo,
                    int pPricingAlternative,
                    int pCocTariffId,
                    time_t pLastresetDate,
                    double pLateCallAggr );
      /* ... */
      void getAllValues( int&            pContractId,
                         int&            pProfileId,
                         int&            pSncode,
                         long&           pPurchaseSeqNo,
                         int&            pBundledProductId,
                         time_t&         pNextResetDate,
                         char&           pState,
                         double&         pAggregate,
                         double&         pCredit,
                         double&         pInitialCredit,
                         double&         pReservation,
                         char&           pColor,
                         double&         pProRateFactor,
                         int&            pCurrencyId,
                         int&            pUomId,
                         time_t&         pSnapShotDate ,
                         unsigned long&  pSequenceNumber,
                         time_t&         pValidFrom,
                         time_t&         pValidTo,
                         int&            pPricingAlternative,
                         int&            pCocTariffId,
                         time_t&         pLastResetDate,
                         double&         pLateCallAggr );
      /* ... */
    };

    чудо интерфейс. 25 параметров у конструктора, 23 параметров (рефернсы!) у геттера. кто больше?

    ЗЫ как оба реализованы можете сами догадатся. и еще несколько других методов в подобном стиле.
    ЗЗЫ да, есть и нормальные геттеры.
    ЗЗЗЫ нет, другого конструктора нету.
    ЗЗЗЗЫ нет, разнести значение по мелким структурам, более приемлимым человеческому мозгу, народ не догадывается. не наш так сказать стиль. (да, есть естественная групировка параметров по источнику откуда они берутся.)

    Запостил: Dummy00001, 21 Июня 2011

    Комментарии (13) RSS

    Добавить комментарий