Java — различия между версиями
(Отмена правки 925 участника Sergey.kazenyuk (обсуждение)) |
Snurk (обсуждение | вклад) (→Некоторые требования к коду) |
||
Строка 16: | Строка 16: | ||
В первую очередь обратите внимание на Naming Conventions. Настоятельно рекоммендуется отдавать предпочтение длинным мнемоническим идентификаторам. | В первую очередь обратите внимание на Naming Conventions. Настоятельно рекоммендуется отдавать предпочтение длинным мнемоническим идентификаторам. | ||
− | == Некоторые требования | + | == Некоторые требования == |
+ | |||
+ | === Форма поставки кода === | ||
+ | Задания должны присылаться в jar архивах. В архивы включаются <b>только ваши исходники</b> (.java файлы). | ||
+ | |||
+ | Для создания архивов используйте [http://docs.oracle.com/javase/tutorial/deployment/jar/build.html утилиту jar]. | ||
+ | |||
+ | Каждая задача должна находиться в пакете <b>ru.spbau.<ваша фамилия>.task<# задания></b> | ||
+ | |||
+ | Можете складывать несколько заданий в один архив. | ||
=== Javadoc === | === Javadoc === | ||
− | Ко всем классам, интерфейсам и public/protected полям и методам должен быть написан <b>осмысленный | + | Ко всем классам, интерфейсам и public/protected полям и методам <b>должен быть написан</b> осмысленный [http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html#requiredtags javadoc] на грамотном английском языке. |
− | Javadoc должен быть валидным (в частности, содержать все | + | Javadoc должен быть валидным (в частности, содержать все [http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html#requiredtags required tags]). |
− | Пример хорошего javadoc-а можно найти в любом классе стандартной библиотеки | + | Настоятельно рекоммендуется использовать консольные или встроенные в IDE <b>средства проверки валидности javadoc</b>. |
+ | |||
+ | Пример хорошего javadoc-а можно найти в любом классе стандартной библиотеки. | ||
=== Exceptions === | === Exceptions === | ||
Строка 29: | Строка 40: | ||
Распространенные недочеты: | Распространенные недочеты: | ||
+ | * Использование исключений для управления логикой программы | ||
* Оборачивание проверяемых исключений в непроверяемые | * Оборачивание проверяемых исключений в непроверяемые | ||
− | * Пустые catch блоки | + | * Подавление исключений (Пустые catch блоки) |
− | * Отсутствие вывода <b>читаемой</b> полезной информации в | + | * Отсутствие вывода <b>читаемой</b> полезной информации в блоках обработки ошибок |
* Некорректное освобождение используемых ресурсов (в первую очередь, открытых ранее файлов) | * Некорректное освобождение используемых ресурсов (в первую очередь, открытых ранее файлов) | ||
+ | |||
+ | == Общие замечания == | ||
+ | * Некоторым вашим классам может понадобиться больше public методов, чем те, которые перечислены в условиях задач. | ||
+ | * Добавление дополнительных уровней абстракции приветствуется в том случае, если вы готовы обосновать принятые вами решения. | ||
== Полезные ссылки == | == Полезные ссылки == |
Версия 00:48, 9 февраля 2012
Содержание
Материалы с лекций
Домашние задания
- Первое задание срок сдачи: 15 февраля
Присылать задачи нужно на почту sergeynurk@gmail.com с темой: Java homework <фамилия> tasks 1,2,3...
Рекомендуемая литература
- "Thinking in Java", Bruce Eckel
- "Effective Java", Joshua Bloch
Coding conventions
В отличие от C++, для Java есть общепринятые coding conventions от компании Sun.
В первую очередь обратите внимание на Naming Conventions. Настоятельно рекоммендуется отдавать предпочтение длинным мнемоническим идентификаторам.
Некоторые требования
Форма поставки кода
Задания должны присылаться в jar архивах. В архивы включаются только ваши исходники (.java файлы).
Для создания архивов используйте утилиту jar.
Каждая задача должна находиться в пакете ru.spbau.<ваша фамилия>.task<# задания>
Можете складывать несколько заданий в один архив.
Javadoc
Ко всем классам, интерфейсам и public/protected полям и методам должен быть написан осмысленный javadoc на грамотном английском языке.
Javadoc должен быть валидным (в частности, содержать все required tags).
Настоятельно рекоммендуется использовать консольные или встроенные в IDE средства проверки валидности javadoc.
Пример хорошего javadoc-а можно найти в любом классе стандартной библиотеки.
Exceptions
При проверке ваших решений большое внимание будет уделяться тому как вы работаете с исключениями.
Распространенные недочеты:
- Использование исключений для управления логикой программы
- Оборачивание проверяемых исключений в непроверяемые
- Подавление исключений (Пустые catch блоки)
- Отсутствие вывода читаемой полезной информации в блоках обработки ошибок
- Некорректное освобождение используемых ресурсов (в первую очередь, открытых ранее файлов)
Общие замечания
- Некоторым вашим классам может понадобиться больше public методов, чем те, которые перечислены в условиях задач.
- Добавление дополнительных уровней абстракции приветствуется в том случае, если вы готовы обосновать принятые вами решения.