1. Куча / Говнокод #22446

    −13

    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
    Из преддипломной практики некоторого господина - свежак
    
    В настоящее время IT-индустрия является самой быстро развивающееся отраслью 
    в истории человечества. Постоянные изменения в  этой отрасли приводит к тому, 
    что современная система образования просто не успевает готовить квалифицированные
     ИТ-кадры, так как требования к знаниям специалистов растут быстрее, чем система
     образования может дать их. Отсюда – постоянная нехватка качественных специалистов 
    на рынке труда и, как следствие, результаты работы ИТ-команд достаточно часто имеют 
    различные изъяны, дефекты. Программные продукты даже самых известных 
    производителей часто бывают несовершенны. Многие ИТ-специалисты, прилагают все
     усилия, чтобы устранить все дефекты.
    
    При разработке кода самая распространенная ошибка – это ошибки программистов, в ходе
     написания кода. Причин появления таких ошибок достаточно много. Примером этих 
    причин являются невнимательность программистов или нехватка времени. Чаще всего,
     при разработки кода, программисты очень большое время уделяют тем участкам кода,
     которые будут выполняться чаще. При этом намного меньше времени он уделяет 
    остальному коду, вследствие чего программист может пропустить какие либо важные 
    аспекты. 
    
    Другая характерная причина появления ошибок в программном коде – внесение в него 
    изменений в ходе разработки. Разработчик меняет один кусок кода, который может 
    влиять на функциональность другого фрагмента программы. Вследствие чего 
    функциональность этого фрагмента программы становится измененной. 
    
    Реже причиной появления ошибок в программном коде является неисправная работа 
    среды разработки, компилятора и т.д.

    Запостил: kegdan, 27 Февраля 2017

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

    • Вореции отдыхают
      Ответить
      • В настоящее время уделяют тем участкам кода, программы. Вследствие, результаты работы ИТ-команд достаточно часто имеют различные изменения в этой отрасли приводит к тому, чтобы устранить все дефекты.

        Реже причина появления ошибок достаточно много. Примером этих причин являются невнимательность программном коде является неисправная работа среды разработы ИТ-команд достаточно много. Примером этих причин появления таких ошибок достаточно много меньше времени. Чаще всего, при разработки, компилятора и т.д.
        Ответить
      • В настоящее время уделяют тем участкам кода, которые будут выполняться чаще. Примером этих причин появления таких ошибок в программистов на функциональному коду, вследствие чего функциональность другого фрагмента программном кода, которые будут выполняться чаще. При этом намного фрагмента программном коде является изменения в этом намного. Примером этих причин являются невнимательность этого фрагмента программы. Вследствие чего просто не успевает готовить квалифицированные ИТ-кадры, так как следствие чего функциональному коду, вследствие чего функциональность программистов растут быстро развивающееся отраслью в истов или нехватка качественных специалисты, причиной появления ошибка – этого фрагмента программистов или нехватка время уделяют тем участкам кода, который может пропустить какие либо важные изъяны, дефекты.

        Реже причин появления кода, при разработчик меняет один кусок кода, компилятора и т.д.
        Ответить
      • В настоящее время IT-индустрия является самой быстрее, чем система образования кода. Причин появления ошибок в программы становить квалифицированные продукты даже самых известных специалистов на рынке труда и, как следствие чего программном кода самых известных причин являются неисправная работы ИТ-команд достаточно много. Примером этих причина появления ошибка – этой отраслью в истории человечества. Постоянная система образованиям специалистов растут быстро развивающееся отраслью в истории человечества. Постоянные изменения в этой отраслью в истов или нехватка качественных специалистов на рынке труда и, компилятора и т.д.
        Ответить
      • В настоящее время уделяют тем участкам кода, программист может влиять на функциональность этого фрагмента программисты очень большое времени. Чаще всего, при разработчик меняет один кусок кода, который может влиять на функциональность этого фрагмента программы. Вследствие чего программные продукты даже самых известных производителей часто имеют различные изъяны, дефекты. Программистов или нехватка качественных специалистов на рынке труда и, как требования к знаниям специалисты, прилагают все усилия, чтобы устраненная ошибка – это ошибки программы. Вследствие чего функциональность программные продукты даже самых известных производителей часто имеют различные изъяны, дефекты.

        При разработке кода самая распространить все дефекты.

        При разработки. Разработки кода, программы. Вследствие чего программист может дать их. Отсюда – постоянные измененной.

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

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

        Другая характерная причиной появления ошибок в программы. Вследствие чего программы. Вследствие, результаты работы ИТ-кадры, так как требования может дать их. Отсюда – постоянные измененной.

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

        Другая характерная причина появления ошибка – это ошибки программистов, в ходе разработки, компилятора и т.д.
        Ответить
        • Расчехлился, ворецираптор
          Ответить
          • Похоже на типичную дипломную работу гуманитария, только грамматических ошибок многовато (почему-то окончания некоторых слов неправильные).

            Из Диссернета я узнал, что кандидатские диссертации наших депутатов и министров представляют собой вореции, обученные на книжках. Т. е. не представляют вообще никакой научной ценности.
            Ответить
            • > не представляют вообще никакой научной ценности.

              Я тут недавно начал интересоваться статистическими методами, и узнал, что бОльшая часть "научных" работ, основанных на статистическом подходе (в области социальных наук, тесты медицинских препаратов, выводы исследователей мозга на базе fMRT, и т.п.), используют статистический метод криво, и основная их ценность — основа для мета-анализа и наглядный примеры того, как не надо делать.
              Но они хотя бы стараются.
              Ответить
        • Это твоя докторская?
          Ответить
    • А я свой говнокомпилятор в облаке нашел, его можно прям целиком сюда постить
      Ответить
      • А мой утрян. Там было дерьмище, но унылое
        Ответить
    • мы провели исследования, потратили четыре года времени и двадцать миллионов долларов и нам удалось доказать что:

      * средняя длина строки 78 символов
      * буква а встречается в программах на си чаще чем буква w
      * 38% программистов сидят за компьютером сгорбившись
      * программисты чаще пьют кофе чем чай
      * чай светлее кофе
      * кофе горячее воды
      * два конца
      * два кольца
      * по средине хвостик
      Ответить
      • >> кофе горячее воды

        Боюсь спросить что ты вместо воды в кофе льешь
        Ответить
        • Разработчик меняет один кусок кода, вследствие чего
          функциональность этого фрагмента программы становится измененной.
          Ответить
          • а функциональность твоих дырочек остается неизменной.
            Ответить
            • Построил функционал Минковского для твоих дырочек, проверь.
              Ответить
              • Посоны, китаец в треде.
                Ответить
                • > китаец
                  японец-математик: http://www.kurims.kyoto-u.ac.jp/~motizuki/papers-english.html

                  Странно, что он так хорошо говорит по-русски. Может быть, это не настоящий Shinichi Motizuki?
                  Ответить
        • В кофемашину пихаешь воду комнатной температуры, она жужжит, а потом сочится горячий кофе. Никакого противоречия
          Ответить
          • У нас на работе и термопод есть, а увлеченный работой я забываю пить кофе и он остывает
            Ответить
    • @<EXCEPTION_BAD_STRPTR>
      @В настоящее время IT-индустрия является самой быстро развивающееся отраслью

      Индус-Три-Али-зация
      Ответить
      • Что означает @ в твоих комментах?
        Ответить
        • @Что означает @ в твоих комментах?
          Копирую строку из коммента по ее адресу. Попробуй отредактировать коммент, увидишь, что случится.
          Ответить
          • > Попробуй отредактировать коммент
            Твой?

            Напиши что-нибудь с guestinho, а то не получается зайти со стептопа

            P.S. А как ты разбанился?
            Ответить
            • @P.S. А как ты разбанился?
              Разбанился? Вы о чём, сударь?
              Ответить
              • Недавно отвечал на твой коммент, показывалось стандартное сообщение с подчёркиванием в конце мыла

                Ах да, это наверное в сёмином оффтопе было
                Ответить
                • Быть может... Кстати, сейчас около 5 000 стоят.
                  Борманд, настятельно советую залогиниться.
                  Ответить
                  • Неудобно логиниться, когда с кровати тянешься за смартфоном, упавшим на пол.

                    Я правильно залогинился? Проверь.
                    Ответить
                    • Как ты там? Отбиваешься от кенгуру и пауков?
                      Ответить
          • > Копирую строку из коммента по ее адресу.

            @ -- это оператор взятия адреса из паскаля? Логика отчасти понятна, но, кмк, лучше использовать общепринятый оператор цитирования >.
            Ответить
            • Копирую строку из коммента по ее адресу^ := 'да он ибанат просто';
              Ответить
              • Забыл сказать: указатель только для чтения. AccessViolation ждёт тебя.
                Ответить
                • Если указатель только для чтения то ошибка компиляции ждет меня.

                  AV меня ждет если указатель на НЕ const данные, а поскоку копелятор имеет право ложить строковые литералы в RO память то вот.
                  Ответить
                  • Попробуй скомпилировать сие:
                    program HelloWorld;
                    var
                      P:PChar;
                    begin
                      P:=('Давайте в жопу ебаться.');
                      P[StrLen(P)]:='!';
                      // привет, АV
                    end.
                    Ответить
                    • uses
                        SysUtils;
                      var
                        P:PChar;
                      begin
                        P:=('Давайте.');
                        Writeln('До модификации P=', Format('%x', [Cardinal(P)]));
                        P[StrLen(P)]:='!';
                        Writeln('После модификации P=', Format('%x', [Cardinal(P)]));
                        // привет, АV
                        Writeln(P)
                      end.
                      Выводит:
                      До модификации P=4100A0
                      После модификации P=4100A0
                      Давайте.!


                      Другой вариант:
                      uses
                        SysUtils;
                      const
                        P:AnsiString = ('Давайте.');
                      begin
                        Writeln('До модификации P=', Format('%x', [Cardinal(P)]));
                        P[Length(P)]:='!';
                        Writeln('После модификации P=', Format('%x', [Cardinal(P)]));
                        // привет, АV
                        Writeln(P)
                      end.
                      Выводит:
                      До модификации P=4100B8
                      После модификации P=F5AF0
                      Давайте!


                      Третий вариант:
                      uses
                        SysUtils;
                      const
                        P:ShortString = ('Давайте.');
                      begin
                        Writeln('До модификации P=', Format('%x', [Cardinal(@P)]));
                        P[Length(P)]:='!';
                        Writeln('После модификации P=', Format('%x', [Cardinal(@P)]));
                        // привет, АV
                        Writeln(P)
                      end.
                      Выводит:
                      До модификации P=4100A0
                      После модификации P=4100A0
                      Давайте!


                      Заметим, что выделение новой памяти происходит только для AnsiString/WideString, остальные типы режутся "по-живому".

                      Не удастся скомпилировать, если мы напишем:
                      const  P = ('Давайте.');
                      Ответить
                      • Первый код (вылетает с AccessViolation):
                        http://s016.radikal.ru/i335/1703/3b/7df80d14f6c2.png

                        Второй код (не компилится):
                        http://s019.radikal.ru/i626/1703/82/7b84000a6401.png

                        И наконец, третий код (он мне особенно понравится):
                        http://s41.radikal.ru/i093/1703/54/26e46b2f623a.png

                        Проблемы, кэп?! Ах да, Вы же фокусник... Я уж и позабыл.
                        Ответить
                        • Проверил. У FPC и у Delphi разная реализация строк. И даже {$MODE DELPHI} не помогает.

                          Вот это фокус!
                          Ответить
                          • Падаю ниц перед таким чародейством.
                            Ответить
                            • Отсюда мораль: всё нужно проверять.
                              Ответить
                              • Только что проверил на Лазаре. Вывод ужасен:
                                FPC позволяет изменять значение строковых констант.
                                Ответить
                                • Трупопаскаль позволял изменять значение вообще любых констант
                                  Ответить
                                  • Нет. Он позволял изменять значение только типизированных констант, потому что по сути они являлись инициализированными переменными. Нетипизированные изменять было нельзя.
                                    const
                                      X = 'Эту строку изменить не получится';
                                      Y: string = 'А эту строку в Трубопаскале можно изменить';
                                    Ответить
                                    • В божественной сишечке аналог приведённого кода будет выглядеть примерно так:
                                      #define X "Эту строку изменить не получится"
                                      char * Y = "А эту строку можно изменить";


                                      Т. е. const без типа — это по сути макрос, разворачивающийся на этапе компиляции, а const с типом — это переменная с начальным значением (в экзешнике она будет в инициализированной части сегмента данных, а переменные без начального значения — в неинициализированной).
                                      Ответить
                                      • >>char * Y
                                        ну так конечно: ты скастил по сути конст массив чаров в неконст.
                                        Ну вот и сможешь его изменить (но можешь получить AV).
                                        Ответить
                                        • В трубопаскале не бывает AV, там реалмод
                                          Ответить
                                          • а мне кажется чтор поцкаль 7.0 умел делать 32битники
                                            Ответить
                                            • Не умел. Паскаль 7.0 умел компилировать для защищённого режима, но только для 16-битного.

                                              Дельфи перешла на 32 бита только с третьей версии (или со второй, надо проверить).
                                              Ответить
                                              • под win3.1 чтоль?
                                                Ответить
                                                • Под DPMI
                                                  Ответить
                                                  • Плюс обоим. И под DPMI (16 бит), и под Win3.1.

                                                    Delphi 3 уже умела под DPMI (32 бита) и под Win32 (Windows 95, Windows NT). Из коробки Delphi 3 под DPMI не могла, нужно было доустанавливать Borland Power Pack (как и в BCC 4.5, BCC 5.x).
                                                    Ответить
                                                  • точно-точно
                                                    чтобы иметь доступ ко всей памяти из доса

                                                    Сука, откуда ты знаешь про технологию, утратившую свою актуальность за пару лет до твоего рождения?
                                                    Ответить
                                                    • > Сука, откуда ты знаешь про технологию, утратившую свою актуальность за пару лет до твоего рождения?

                                                      Почему бы нет, я тоже люблю на досуге в приступе некромантии почитать книжки про CLOS, хоть и не планирую его нигде применять... пока
                                                      Всё интересней, чем SVN сервер настраивать.
                                                      Ответить
                                            • vanished
                                              Ответить
                                      • > char * Y
                                        Думаю, в божественной сишечке должно быть
                                        char Y[] = "А эту строку можно изменить";
                                        Ответить
    • Большой текст на ГК автоматически воспринимается как вореции
      Ответить

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