Тогда уж
cofee_refill(!drink(coffee), cofee)
Потому что в противном случае - как cofee_refill получит доступ к cofee? (ну разве что глобальная переменная в том или ином виде, но зачем?)
Ну как бы тут Empty, Refill, Drink. Передаточные переменные к переменной Coffee.
ну а код выглядит так чтоб даже дебил понял
если кофе нет:
тогда налей
а в противном случае:
пей
А выше видим cofee.Empty - так что в проекте она послана. (Кстати, а не шарп ли? Там вроде как раз тот стиль - см. https://msdn.microsoft.com/en-us/library/x2dbyw72%28v=vs.71%29.aspx)
Только вот должен ли этот код выбрасывать исключения? Предположу, что разве что конструктор.
з.ы. но да, целесообразность зависит от сложности операций :-)
Аналогично. На мой взгляд, фигурные скобки на новой строке в больших проектах упрощают читабельность.
Собственно, на Stackoverflow есть хорошая дискуссия по этому поводу: http://programmers.stackexchange.com/questions/2715/should-curly-braces-appear-on-their-own-line
Исключения так и называются, что используются для исключительных ситуаций.
Когда вы, блин, везде суете свои try-cath-хуетч, это уже if-else скорее обыкновенный, а не исключительная ситуация.
Реально, нафига все ловить, если не знаешь как исправить.
Собственно, гляда на ветвь дискусии понятно, почему Google забанил использование exception'ов, так всякие интерны со схожим мышлением засрут весь код catch'ами, которые только маскируют реальные ошибки.
Ради интереса (плохо ориентируюсь в шарпе и жабе, а тут, вероятно - один из них) - какое исключение выкинет, например, подобное (впрочем, на практике и объем будет подтягиваться из внешнего конфига, наверное, и ещё чёрти что - тогда, наверное, да) :
public function Refill() {
this.count = Coffee.CUP_SIZE;
}
...
public function Drink(IDrinkable drinkable) {
drinkable.count = 0;
}
Хотя, конструктор уж наверняка может (это было бы логично, но лень лезть в доки) - но тогда надо уже оборачивать весь работающий с cofee код же.
щас тут родится очередной бесполезный опенсорс фрэймворк по описанию инструкций на кружках. с аспектами, паттернами, вся хуйня
могу билд скрипт на грэдле к нему сделать
while (HumanSystem.arbeiten && Alcohol.present)
{
if (!coffee.empty) coffee.delete();
coffee.Add(brandy,150);
coffee.Drink;
}
if (HumanSystem.arbeiten)
{
while (!(Find(&adventure_ass)&&(!Time.moning)));
switch (adventure_ass) {
case telka: running();break;
case police: SetToPolice (money); running();break;
case hospital: while(!HumanSystem.arbeiten);running();break;
default: FuBlya();break
}
}
(if
(empty coffee)
(cofee_refilled cofee)
cofee
)
)
cofee_refill(!drink(cofee));
cofee_refill(!drink(coffee), cofee)
Потому что в противном случае - как cofee_refill получит доступ к cofee? (ну разве что глобальная переменная в том или ином виде, но зачем?)
ну а код выглядит так чтоб даже дебил понял
если кофе нет:
тогда налей
а в противном случае:
пей
me :- empty(coffee),refill(coffe);
me :- drink(coffee);
while (me.isWakeUp) {
}
}
стиль кода же
if (TIOBOSRALSYA)
{
MATRIX.Neo.WakeUp();
}
Говно это, а не software developer.
з.ы. но да, целесообразность зависит от сложности операций :-)
Собственно, на Stackoverflow есть хорошая дискуссия по этому поводу: http://programmers.stackexchange.com/questions/2715/should-curly-braces-appear-on-their-own-line
удивлён
Как видишь, ничего сложного.
ПС:
контрол+шифт+U 00a0
Где у вас try-catch блоки?
Когда вы, блин, везде суете свои try-cath-хуетч, это уже if-else скорее обыкновенный, а не исключительная ситуация.
Реально, нафига все ловить, если не знаешь как исправить.
Собственно, гляда на ветвь дискусии понятно, почему Google забанил использование exception'ов, так всякие интерны со схожим мышлением засрут весь код catch'ами, которые только маскируют реальные ошибки.
public function Refill() {
this.count = Coffee.CUP_SIZE;
}
...
public function Drink(IDrinkable drinkable) {
drinkable.count = 0;
}
Хотя, конструктор уж наверняка может (это было бы логично, но лень лезть в доки) - но тогда надо уже оборачивать весь работающий с cofee код же.
drink() и refill() это явно процедуры ввода-вывода (I/O), без эксепшенов тут очень опасно.
Инкапсуляция? Не, не слышал.
{
coffee = new Coffee();
}
if (coffee.isEmpty())
{
coffee.reFill();
}
else
{
coffee.drink();
}
Все-таки обращаться к себе любимому "это"... Как-то странно.
а если это выполняется в цикле, но какого чёрта каждый раз создаётся экземпляр класса?
могу билд скрипт на грэдле к нему сделать
{
if (!coffee.empty) coffee.delete();
coffee.Add(brandy,150);
coffee.Drink;
}
if (HumanSystem.arbeiten)
{
while (!(Find(&adventure_ass)&&(!Time.moning)));
switch (adventure_ass) {
case telka: running();break;
case police: SetToPolice (money); running();break;
case hospital: while(!HumanSystem.arbeiten);running();break;
default: FuBlya();break
}
}
HumanSystem.Sleep();
+drink(cup) {
while (this.thirsty) {
if (cup.empty) this.refill(cup);
continue;
};
}(new Coffe());
Coffee:Refill();
else
Coffee:Drink();
end;
Теперь и пить протифффвно!