Это разумеется так, но лишь потому что в ОО любая сущность представляется в виде объекта. А возможность создания исключений разных типов — просто способ их классификации.
Возьмите любую классическую книжку по ОО (того же Гради Буча, например). Там нет ни слова про ислючения. Потому что они не имеют отношения к этой парадигме. Так же как и другие управляющие конструкции (if, for, switch и т.п.), а исключения как-раз из их числа.
Вообще механизм исключений с ОО никак не связан. Исключения работают на уровне методов и представляют собой конструкции позволяющие управлять потоком выполнения. К объектам и классам прямого отношения не имеют.
Можете уронить мою карму в минус, но я еще раз могу это сказать —
пятнадцать минут работы и двадцать строк кода. И я считаю неправильным к фактически школьным задачкам применять термины «стартап», «завершенный продукт», «база знаний», «дизайн» и «разработка». И тем более ставить себе в заслугу, что на оформление этой задачки был потрачен день работы трех человек.
Вот «движок» этого «стартапа» на псевдокоде:
class Node {
Node(String ss, Node l, Node r){ s = ss; left = l; right = r; }
String s;
Node left;
Node right;
}
Бинарное дерево. В узлах вопросы на листьях слова.
Отвечая на вопрос «да» («нет») вы переходите в левое (правое) поддерево, пока не дойдете до листа со словом-ответом. Если ответ не тот — лист-ответ заменяется введенным вами отличием со знаком вопроса, а исходный ответ и введенный вами ответ становятся его листьями. Вот и вся хитрость
Аналогичный код на Си занимал от силы строк 20.
Здесь видимо надо прибавить издержки на генерацию страницы, рисование картинок, размещение. Но их же двое было! Т.е. фактически тут задача на 10 строк «сложнее» чем динамическая страница с «Хеллоу-ворлдом».
Так что при всем уважении — «завершенный продукт» про эту страницу сказать никак не получается.
Ну вы даете…
Это ж классическая задачка первого семестра любой программерской специальности. Даже на задачка, а пример на использование структур данных (деревьев в этом случае).
Два вопроса:
- корректно ли в этом случае использовать термины «дизайн и разработка»?
- что вы вдвоем делили целый день?
Работаю в стартапе. До этого были только устоявшиеся компании с большими проектами и серьезными заказчиками. Такого удовольствия от работы, как сейчас я не испытывал даже на заре своей трудовой деятельности.
Да, были периоды устаканивания процесса разработки, движения в ошибочных направлениях, даже страшный переходный период, с увольнениями и удаленной работой. Но это стоит того драйва, который получаешь от стартапа.
Коллеги, мы же не 50-ти летние госслужащие, что б бояться увольнений. Новая работа находится в течении недели-двух, без особых усилий. Зачастую еще и с увеличением з.п.
через москву-фм слушаю в основном Наше, Сер. дождь и Детское радио.
Кстати, у кого дети - очень рекомендую Детское радио, был приятно удивлен, его появлению.
Слушаю либо bee.fm, там собственные плэй-листы можно создавать, вобщем это не совсем и радио...
И конечно moskva.fm - все радиостанции Москвы, с архивом. Мега-удобно когда пропускаешь любимые передачи.
Некорректное сравнение.
ВАЗы не выдаются в нагрузку при получении прав. Да и отношение рядового пользователя к машине сильно отличается от его же отношения к браузерам (странички показывает и ладно). При покупке машины платишь существенные деньги и выбор модели происходит очень обдумано.
Возьмите любую классическую книжку по ОО (того же Гради Буча, например). Там нет ни слова про ислючения. Потому что они не имеют отношения к этой парадигме. Так же как и другие управляющие конструкции (if, for, switch и т.п.), а исключения как-раз из их числа.
Вот о чем:
http://habrahabr.ru/blog/startup/36772.h…
пятнадцать минут работы и двадцать строк кода. И я считаю неправильным к фактически школьным задачкам применять термины «стартап», «завершенный продукт», «база знаний», «дизайн» и «разработка». И тем более ставить себе в заслугу, что на оформление этой задачки был потрачен день работы трех человек.
Вот «движок» этого «стартапа» на псевдокоде:
class Node {
Node(String ss, Node l, Node r){ s = ss; left = l; right = r; }
String s;
Node left;
Node right;
}
Node node = new Node("Корова", null, null);
void main() {
while(check("Играем дальше?"))
process(node);
}
void process(Node x) {
if(x.left == null) {
if(check("Вы загадали - " + x.s + "?")) return;
else {
x.right = new Node(read("Что вы загадали?"), null, null);
x.left = new Node(x.s, null, null);
x.s = read("В чем отличие " + x.right.s + " от " + x.left.s + "?");
}
}
else {
if(check("Угадываемяй объект, " + x.s + "?")) process(x.right);
else process(x.left);
}
}
Бинарное дерево. В узлах вопросы на листьях слова.
Отвечая на вопрос «да» («нет») вы переходите в левое (правое) поддерево, пока не дойдете до листа со словом-ответом. Если ответ не тот — лист-ответ заменяется введенным вами отличием со знаком вопроса, а исходный ответ и введенный вами ответ становятся его листьями. Вот и вся хитрость
Здесь видимо надо прибавить издержки на генерацию страницы, рисование картинок, размещение. Но их же двое было! Т.е. фактически тут задача на 10 строк «сложнее» чем динамическая страница с «Хеллоу-ворлдом».
Так что при всем уважении — «завершенный продукт» про эту страницу сказать никак не получается.
Это ж классическая задачка первого семестра любой программерской специальности. Даже на задачка, а пример на использование структур данных (деревьев в этом случае).
Два вопроса:
- корректно ли в этом случае использовать термины «дизайн и разработка»?
- что вы вдвоем делили целый день?
Да, были периоды устаканивания процесса разработки, движения в ошибочных направлениях, даже страшный переходный период, с увольнениями и удаленной работой. Но это стоит того драйва, который получаешь от стартапа.
Коллеги, мы же не 50-ти летние госслужащие, что б бояться увольнений. Новая работа находится в течении недели-двух, без особых усилий. Зачастую еще и с увеличением з.п.
Кстати, у кого дети - очень рекомендую Детское радио, был приятно удивлен, его появлению.
И конечно moskva.fm - все радиостанции Москвы, с архивом. Мега-удобно когда пропускаешь любимые передачи.
ВАЗы не выдаются в нагрузку при получении прав. Да и отношение рядового пользователя к машине сильно отличается от его же отношения к браузерам (странички показывает и ладно). При покупке машины платишь существенные деньги и выбор модели происходит очень обдумано.