The code

69 отговора 2784 прегледа
#1

The code

Tova ne e shega a code v realna systema. Bez komentar :)

public String checkCustomerNumber(String str)
{
String customerNumber = "";
int customerNum = Integer.parseInt(Rounding.toString
(Rounding.getNumber(str), 0));
if(customerNum == 0)
{
customerNumber = str;
}
else if(customerNum > 0)
{
if(str.trim().length() == 0)
{
customerNumber = "0000000000";
}
if(str.trim().length() == 1)
{
customerNumber = "000000000" + str;
}
if(str.trim().length() == 2)
{
customerNumber = "00000000" + str;
}
if(str.trim().length() == 3)
{
customerNumber = "0000000" + str;
}
if(str.trim().length() == 4)
{
customerNumber = "000000" + str;
}
if(str.trim().length() == 5)
{
customerNumber = "00000" + str;
}
if(str.trim().length() == 6)
{
customerNumber = "0000" + str;
}
if(str.trim().length() == 7)
{
customerNumber = "000" + str;
}
if(str.trim().length() == 8)
{
customerNumber = "00" + str;
}
if(str.trim().length() == 9)
{
customerNumber = "0" + str;
}
if(str.trim().length() == 10)
{
customerNumber = str;
}
}
return customerNumber.trim();
}

Отговор
в отговор на dummy #2

ъъъ, да не би тива чудо да добавя водещи нули?

аз поне останах с такова впечатление, че добавя водещи нули до точно 10 знака. обаче не са ми познати тия обекти и функции, да не е джава. като гледам синтаксиса не мога да разбера джава ли е или С.

Отговор
в отговор на zaphod #3

Re: ъъъ, да не би тива чудо да добавя водещи нули?

I az tova mislia che pravi, no s takav code nikoga ne moze da si siguren :)
Java e i e pisana ot indiec. Niamam nisto protiv horata, no mnogo ot tiah se prekvalificiraha ot shofiori na taksita na programisti, a tova sa posledstviata.
Ta naistina mai triabva i na programistite da se dava razreshenie da pishat code kato na doktorite da lekuvat :)

Отговор
в отговор на dummy #4

Re: The code

Ми екстра - превел си е спецификацията от индийски на язва и е готов :))

Отговор
в отговор на dummy #5

Re: The code

Уви не си я пазя, ама като оправях един цигански код, веднъж намерих функция която събираше две числа, 400 реда. Предполагам в началото е правила нещо по-сложно и е имало някаква бизнес логика, но след 10 години промени и патчове правеше точно това - събираше 2 числа. Два дена я анализирах докато го проумея (е, доста код беше, разни сложни сметки).

I am a death dealer. Е така де вампирите по ме накефиха.
Отговор
в отговор на Пepин #6

Re: The code

Хм това не е ли един доста добър критерий за кофти програмист - когато прави простите неща по много сложен начин.

Съответно сложни неща въобще не може да направи.

Кодът му в крайна сметка си върши работата - съответно човек не може да каже нищо конкретно против него - освен да го пренапише примерно на 1/3 обем - на което дежурният отговор е - "ми кво толкова - то и преди си работеше добре."

Отговор
в отговор на dummy #7

To i v kluba naskoro ima6e ne6to podobno

[линк]

Отговор
в отговор на dummy #8

Re: да но добавя нули и към заплатата...

Смяташ ли че ние сме по-отворени след като у нас много програмисти се преквалифицираха в шофьори на таксита?

Отговор
в отговор на Duru #9

Re: да но добавя нули и към заплатата...

Ne znam kakvo imash v predvid pod otvoreni.
Ne e hubavo tova che programisti se prekvalificirat v shofiori no obratnoto opredeleno e oste po-losho ne mislish li?

Отговор
в отговор на dummy #10

Re: The code

Дааа, голям проблем в тая Жаба с тия водещи нули. Понеже от 4-5 месеца и аз се боря с тая боза като прасе с тиква, наскоро ми се наложи да напиша функция, дето ми обръща int в hex string, ама ми трябваше с водещи нули. Сума време загубих докато разбера, че жабарите няма да могат да ми помогнат и ще ползвам като консултант Неволята. После още толкова време загубих за да разбера, че byte е signed char. И накрая го направих със 7 вложени if - а. Можех и цикъл да врътна, ама реших че нямам нерви. Въобще жабата яко ме изнервя - що нещо да е просто, като може да е сложно :-))) Та и тоя индианец не го знаеш колко се е изнервил докато намери начин да направи каквото иска - и той може да е мигрирал от по-изразителен език на Жаба.


System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
Отговор
в отговор на Colombino #11

и защо да са проблем?

може би визираш че в С има printf, което върши това? аз когато бях начинаещ не знаех за адванснините на принтф и си ги правех тия неща на ръка. тогава доколкото си спомням повече ме озори ситуацията когато теябва да си конвертирам инт в стринг без водещи нули. с водещи нули става по елементарно, понеже цикъла е бо брой, а без водещи нули е по стойност на вътрешна променлива.

Отговор
в отговор на dummy #12

Re: ъъъ, да не би тива чудо да добавя водещи нули?

и аз се чудя защо индийците ги ползват толкова много като програмисти. може би ако тия които ги наемат бяха ходили в индия и бяха видяли що за свинщина им е държавата, щяха да са по-резервирани. вероятно из между тях има доста кадърни, но май погрешното всеобщо мнение е "индийците са кадърни програмисти" демек повечето от тях. а аз не мисля че трябва да се полагат изпити за програмисти, дори не мисля че и за докторите е необходимо всеки да си преценява чии услуги ще ползва.

Отговор
в отговор на zaphod #13

Ех сладур

Еx сладур, само дето докато разбереш чии услуги да ползваш може да си мъртъв (или със засран софтуер, което може би е още по-лошо)

Отговор
в отговор на zaphod #14

Re: и защо да са проблем?

Само printf да беше. Аз него почти не го ползвам вече, опитвам се да скъсам със C-то и да се държа към C++ стриктно. Нещо си се объркал, че е трудно да не слагаш водещи нули с printf - ако не правиш нищо ( като например да добавиш водеща нула във форматиращия параметър ) излиза без водещи нули. А за printf и scanf винаги има какво още да научиш. Преди известно време тук имаше дискусия за buff overflow и някой разправяше да не се ползвал scanf, а fscanf щото имал ограничение за размер на входа. И аз му повярвах, защото не знаех достатъчно. Наскоро видях код в който се четеше със scanf стринг с ограничена дължина. И без да се поровя в хелпа не повярвах, че наистина прави това което изглеждаше че прави.


System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
Отговор
в отговор на Colombino #15

Re: The code

пич, то четене трябва, чак после писане....

аз пък на Java писах разширение на обекта, обработващ PKCS#7 и беше доста приятно...

Java е доста по-подредена от C++, а явно някои хора са свикнали на друго...

Отговор
в отговор на dummy #16

Re: The code

Братоци, аре едно конкурсче по темата. Да се добавят водещи символи към някъв стринг.

Отговор
в отговор на xx #17

Re: The code

Кво четене бе, тия жабари като бяха чели да не намериха начин да го направят. Айде кажи ти как ще го направиш като си чел. А за 'byte' ще ме извиняваш, дай сега да се учим на А - Бе. Човек все на нещо трябва да легне, не може всеки път да проверявам например дали int не е число с плаваща точка да кажем. За мен byte е без знак, а Жабата е извратена, че няма беззнакови типове.
Не съм чувал ни за PKCS#7, ни за КПСС, само ще ти кажа, че ползвам жабата за графика. Не ме питай защо - така е решило началството. За да бъде всичко още по-приятно трябва да го пишем на 1.1.8, а там един Pen не можеш да селектираш. Та ако искаш да начертаеш квадрат с дебелина 5, рисуваш 5 вложени. За пунктир не можеш и да си мечтаеш. Ако искаш да запълниш масив с даден цвят трябва да въртиш цикли като гламав и всичко се влачиииии, и гълта МНОГО памет и не можеш да му я изкараш с никакви клизми. Разправяй го на баба ми че е подредена. В C/C++ всичко е ясно и логично, тоя дето е измислил жабата ако ми падне ще му скъсам ушите. Трябвало е или да я направи да може да рисува, или да го забрани тотално рисуването.
Що се отнася до четенето - ще съм ти много благодарен ако ми посочиш литература дето обяснява рисувателната система на Жаба, ама по възможност да е за awt, че с новите неща и баба знае.


System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
Отговор
в отговор на Colombino #18

Re: The code

>Разправяй го на баба ми че е подредена. В C/C++ всичко е ясно и
>логично, тоя дето е измислил жабата ако ми падне ще му скъсам ушите.

амиии чакай ме да ти хвърля char* като изключение в Ц++. ясно и логично ама друг път. то и джавата не е китка, ама давай го по-спокойно и не плюй преди да си овладял нещата из основи ( дисклеймър: не съм закоравял джавар с пяна около устата щото някой плюе джавата -- и гослинг се е понасрал там. доказателството е, че почнаха да оправят езика като се появи конкурента - Ц# )

коя ви е любимата цигания на Ц++? моята е, че като шляпаш темплейти трябва да внимаваш със > скобите, че да не ошашавиш компилатора, който си има отделно мнение за >> оператора

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор
в отговор на Mycлoн #19

Re: The code

Всички жабари говорят все едни и същи глупости като сравняват Жаба със C++ : в C++ можело да се правят такива и такива бози, а в Жаба не можело. Ама в C++ никой не те кара да правиш бози и можеш да се придържаш към сигурни неща, а в Жаба ако ти трябва нещо по-advanced да се скъсаш не можеш да го направиш.
Най-голямата боза на C++ - това че по подразбиране функциите хвърлят всички възможни exception-и и никой не те кара да ги ловиш. Тук ми харесва как е направено в Жаба, признавам си ( рядък случай ) - по подразбиране функциите са throw() и ако искаш да хвърляш нещо някой трябва да го лови. Иначе като видя код v.at(i) и не е в try полудявам, а виждам често. Аз лично си ползвам v почти винаги и разчитам, че си знам размера. ( Първият вариант хвърля range, а вторият може да предизвика violation при грешен индекс )


System Doctor Error:
Your girlfriend is pregnant.
(A)bort, (M)arry, (I)gnore?_
Отговор
в отговор на Colombino #20

Re: The code

>а в Жаба ако ти трябва нещо по-advanced да се скъсаш не
>можеш да го направиш.

не сме на село в хоремага. дай ми някакъв смислен пример. ясно, че няма да имаш инлайн асемблер, но повечето неща са постижими. ето ти обратен пример - колко код ти трябва, за да сериализираш Ц++ обект? в джава само му лепваш етикета, че наследява Сериалайзъбъл. МФЦ и КОМ имплементациите на сериализация обаче са, меко казано, противни - ако знаеш други - моля те светни ме, че да си улесня живота в бъдещето.

флейм да има...

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck
Отговор