реклама на сайте
подробности

 
 
> Как вы пишете код в продакшене?
Tronix286
сообщение Jun 26 2015, 21:54
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Настает время, когда проще из различных кусков копи-пастой собрать готовый проект с минимумом правок - там закоментил, тут немного китайского кода. При этом осознаешь, что это полнейший говнокод, треш и угар, так писать ни в коем случае нельзя, и все надо переписать с нуля в идеале, но лень и вроде работает - не трож, а то перестанет. Cроки и вроде работает. Что это? Я один такой?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
halfdoom
сообщение Jun 29 2015, 07:21
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 003
Регистрация: 20-01-05
Пользователь №: 2 072



Цитата(Tronix286 @ Jun 27 2015, 00:54) *
проще из различных кусков копи-пастой собрать готовый проект с минимумом правок - там закоментил, тут немного китайского кода. При этом осознаешь, что это полнейший говнокод, треш и угар, так писать ни в коем случае нельзя, и все надо переписать с нуля в идеале, но лень и вроде работает - не трож, а то перестанет.


Это говорит о нежелании или неумении систематизировать свои (и чужие) разработки оформляя их в библиотеки. "Копи-паст" должен быть сведен к минимуму.
Go to the top of the page
 
+Quote Post
CrimsonPig
сообщение Jun 29 2015, 07:43
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502



Цитата(halfdoom @ Jun 29 2015, 08:21) *
Это говорит о нежелании или неумении систематизировать свои (и чужие) разработки оформляя их в библиотеки. "Копи-паст" должен быть сведен к минимуму.


Слишком категоричное утверждение, ИМХО. В жизни всегда есть место копи-пасту sm.gif Заниматься созданием библиотек надо, если это оправдано..
Какой смысл заниматься разработкой библиотеки, если она нужна один раз и в одном проекте ? Стаскивать всякое барахло и организовывать его в библиотеку ? Есть вещи в жизни и по-интереснее.
Говнокоду тоже есть место в жизни, если надо накидать по-быстрому какой-нибудь опытный образец, например.

Вообще-то существуют методики оценки качества кода, включая оценки процента копипаста внутри проектов sm.gif Некоторая поблема заключается в том, что многие методики неприменимы или очень сложно применимы к разным видам софта (типа эмбеддед) или их применение неоправданно дорого, да и вообще процесс разработки софта, похоже, не формализуем.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jun 29 2015, 08:09
Сообщение #4


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(CrimsonPig @ Jun 29 2015, 10:43) *
Стаскивать всякое барахло и организовывать его в библиотеку ?


Да о каком барахле вы говорите, покажите это барахло.

А то как-то логика хромает: ума значит понять, что это барахло хватает, а самому написать барахло ума не хватает?
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Jun 29 2015, 10:53
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



тут в борьбе главное приоритеты расставить и сроки расписать.
Попробуйте составить план хотелок ну хотя бы по текущему проекту, со сроком исполнения и аргументацией "зачем оно надо". А потом расставьте приоритеты. А потом покажите это человеку, который за это платит (начальнику, если в рабочее время хотите сделать; или жене, если трудовой подвиг будет совершаться в дополнительное время). И список очень быстро уменьшится до приемлемого и действительно полезного.
Это вообще всего касается, не только программирования sm.gif
Go to the top of the page
 
+Quote Post
CrimsonPig
сообщение Jun 29 2015, 12:11
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502



Кстати, про говнокодеров и не очень:

http://geektimes.ru/post/252690/

Опять же, советую обратить внимание на случай с Арианом.. Вопросы "а как мне преобразовать float в int а потом обратно" до сих пор мучают неокрепшие умы кгхм..кодеров судя по данному форуму и дгугим, типа сахары. . sm.gif
Окрепшие умы таких же кодеров, небось, смело и прямо проверяют даблы на равенство путем "==" sm.gif

Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jun 29 2015, 14:51
Сообщение #7


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(CrimsonPig @ Jun 29 2015, 15:11) *
Кстати, про говнокодеров и не очень:

http://geektimes.ru/post/252690/

Опять же, советую обратить внимание на случай с Арианом.. Вопросы "а как мне преобразовать float в int а потом обратно" до сих пор мучают неокрепшие умы кгхм..кодеров судя по данному форуму и дгугим, типа сахары. . sm.gif
Окрепшие умы таких же кодеров, небось, смело и прямо проверяют даблы на равенство путем "==" sm.gif


Только при чем тут код? Или кодом называете сниппеты на пару строк?

Ошибки в распределенных и RT системах управления это классика.
На этот счет появляются даже теоремы типа теоремы CAP


Цитата(CrimsonPig @ Jun 29 2015, 17:22) *
Ммм.. что-то я начал терять нить... ну ладно, вот пример про сравнение даблов
volatile здесь шоб никто не догадался sm.gif

volatile double d1 = 1.0/3.0;
volatile double d2 = 7.0/3.0;
d2 /= 7.0;
assert(d1 == d2);


Это совершенно некорректный пример
Правильный пример вот:
Код
   volatile double d1 = 20000.0;
   volatile double d2 = 1.0;
   volatile double k1 = 60000.0;
   volatile double k2 = 3.0;
  
   d1 = d1/k1;
   d2 = d2/k2;

   if (d1==d2)
   {
      printf("d1(%f)==d2(%f)",d1,d2);
   }
   else
   {
      printf("d1(%f)<>d2(%f)",d1,d2);
   }


И знаете, d1 и d2 будут равны друг другу.
Изучайте железо.
Go to the top of the page
 
+Quote Post
SSerge
сообщение Jun 29 2015, 15:22
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Цитата(AlexandrY @ Jun 29 2015, 21:51) *
И знаете, d1 и d2 будут равны друг другу.
Изучайте железо.

А вот sqrt(2.0) и 2.0/sqrt(2.0) уже не равны.


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Tronix286   Как вы пишете код в продакшене?   Jun 26 2015, 21:54
- - DASM   Не один. Код ядра Линукса например считаю уродливы...   Jun 27 2015, 03:17
- - CrimsonPig   Цитата(Tronix286 @ Jun 26 2015, 22:54) На...   Jun 27 2015, 11:24
|- - jcxz   Цитата(CrimsonPig @ Jun 27 2015, 17:24) Э...   Jun 29 2015, 01:55
- - ar__systems   Когда возникает искушение так сделать, я думаю о т...   Jun 28 2015, 05:16
|- - Ruslan1   Вокруг себя такого не видел. Вычистить код очень п...   Jun 28 2015, 07:31
- - RabidRabbit   Цитата(Tronix286 @ Jun 27 2015, 01:54) На...   Jun 28 2015, 14:54
- - agregat   Цитата(Tronix286 @ Jun 27 2015, 00:54) На...   Jun 29 2015, 03:45
|- - AlexandrY   Цитата(agregat @ Jun 29 2015, 06:45) Нет ...   Jun 29 2015, 06:19
|- - CrimsonPig   Цитата(AlexandrY @ Jun 29 2015, 07:19) А ...   Jun 29 2015, 07:11
|- - skripach   Цитата(CrimsonPig @ Jun 29 2015, 15:11) О...   Jun 29 2015, 13:56
||- - CrimsonPig   Цитата(skripach @ Jun 29 2015, 14:56) Мой...   Jun 29 2015, 14:02
||- - AlexandrY   Цитата(CrimsonPig @ Jun 29 2015, 17:02) П...   Jun 29 2015, 14:15
||- - CrimsonPig   Цитата(AlexandrY @ Jun 29 2015, 15:15) Эт...   Jun 29 2015, 14:22
|- - ar__systems   Цитата(AlexandrY @ Jun 29 2015, 09:51) И ...   Jun 29 2015, 16:38
- - halfdoom   Цитата(CrimsonPig @ Jun 29 2015, 10:43) К...   Jun 30 2015, 04:56
- - jcxz   Предлагаю переименовать данный топик на более подх...   Jun 30 2015, 05:44


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 05:02
Рейтинг@Mail.ru


Страница сгенерированна за 0.01526 секунд с 7
ELECTRONIX ©2004-2016