Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 11625
Последний выпуск: 19.06.2015

Необходимо спроектировать и реализовать классы Налоговая Инспекция и Гражданин для расчета налоговых выплат по каждому гражданину.

84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
Налоговая инспекция, которая хранит информацию о всех гражданах в едином реестре
(массиве), планирует начислять по более низкой ставке налог для граждан, имеющих
более трех несовершеннолетних детей. Необходимо спроектировать и реализовать
классы Налоговая Инспекция и Гражданин для расчета налоговых выплат по каждому
гражданину. Класс Налоговая Инспекция должен содержать метод main() для вывода
информации о начисленных налогах.
84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
сейчас изучаем стеки, возможно задача как-то связана со стеками...
294
21 октября 2014 года
sadovoya
757 / / 19.11.2005
Интересная гипотеза. Но, задача скорей как-то связана с ООП :-))
84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
это, конечно. само собой:)

класс гражданин сделать наследником налоговой, верно? а поле гражданина кол-во детей. затем в мэйне прописываем: если кол-во>=3 то ставку снизить. так?
294
21 октября 2014 года
sadovoya
757 / / 19.11.2005
Цитата:
класс гражданин сделать наследником налоговой, верно?


совершенно НЕ верно. Они не родственники по-сути. Может паттерн visitor? Сам не уверен. Может более подходящий паттерн найдете.

84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
спасибо за совет!
294
21 октября 2014 года
sadovoya
757 / / 19.11.2005
Можно проще, хотя это путь в итоге вредный - решить задачу одноразово, забыв о развитии кода и т.п. Тогда взаимодействие классов тривиальное:
Налоговая и Гражданин будут отдельные классы. Но Налоговая будет иметь функцию, принимающие объекты класса Гражданин (где собственно и будет ему налог считать с учетом детей, заполнять реестр). Реестр будет в классе налоговой (хотя и отдельным классом можно сделать). Гражданин будет иметь поля о детях, ФИО или другой идентификатор. Как-то так.
84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
этот вариант гораздо привлекательнее.
84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
я новичок в Java ( 1 месяц только изучаю), многого ещё не знаю, вот и обращаюсь с такой просьбой.
294
21 октября 2014 года
sadovoya
757 / / 19.11.2005
Тогда о паттернах временно забудьте -- это "высший пилотаж". Но потом обязательно изучите. Без этого серьезным специалистом не станешь. Прочтите (потом) книгу "банды четырех" - "Приёмы объектно-ориентированного проектирования. Паттерны проектирования". Похоже по теме лучшей нет.

P.S. В простом решении мы даже формально до ООП не дотягиваем. Используем только инкапсуляцию и абстракцию. Это объектное программирование. Для обектно-ориентированного еще требуется как минимум наследование, а по-настоящему - полиморфизм. Если склероз мне не изменяет :) Это конечно не значит, что ООП любым боком притягивать нужно. Реально на больших проектах профит от ООП проявляется. Другое дело, что тренироваться все-равно на маленьких проектах придется (в учебных целях).
84K
21 октября 2014 года
VolyaAidar
14 / / 21.10.2014
Огромное спасибо за предложенную книгу. Обязательно постараюсь прочитать!... Но сначала необходимо освоить азы программирования. Как говорится, тяжело в учении, легко в бою.:)
294
22 октября 2014 года
sadovoya
757 / / 19.11.2005
Точняк, установка абсолютно верная. Добавил бы одно -- параллельно, не углубляясь, нахватывайтесь кругозора. Это позволит стратегию наметить для дальнейшего изучения языка. Тема обширная, важно расставить приоритеты. По-моему приемы (идиомы и паттерны) практического проектирования -- штука более важная, чем знание множества библиотек, например. Даже хотя бы потому, что правильное использование библиотек требует знания, на чем они замешаны. Ну и много преходящего (технологии модные то одни, то другие), а основы все-равно одни.

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог