Skip to content

Commit f6494da

Browse files
committed
Руководство по оформлению Java-кода
- Пакеты - Правила именования пакетов - Согласованность чисел в именах пакетов - Классы - Константы - Комментарии
1 parent 2e92957 commit f6494da

File tree

3 files changed

+80
-3
lines changed

3 files changed

+80
-3
lines changed

Java.md

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# Руководство по оформлению Java-кода
2+
3+
Содержание:
4+
5+
- Пакеты
6+
- Правила именования пакетов
7+
- Согласованность чисел в именах пакетов
8+
- Классы
9+
- Константы
10+
- Комментарии
11+
12+
## Пакеты
13+
14+
Для предназначены пакеты? Каждый пакет предназначен для описания какой-то конкретно функциональности.
15+
16+
Например, есть проект поисковой системы. Что значит поисковая система? Что значит написать поисковую систему? Это значит, что нужно написать:
17+
- парсер,
18+
- сканирование веб-сайтов,
19+
- получение доменных имён сайтов,
20+
- получение их ссылок,
21+
- система оценки того или иного ресурса или каждой страницы по отдельности.
22+
23+
По оценке это отдельная функциональность, по сканированию это другая функциональность и т.д.
24+
25+
### Правила именования пакетов
26+
27+
#### Согласованность чисел в именах пакетов
28+
29+
*Не рекомендуется:*
30+
31+
- com.github.gusenov.java.controllers
32+
- com.github.gusenov.java.dao
33+
- com.github.gusenov.java.dao.accessors
34+
- com.github.gusenov.java.dao.impl
35+
- **com.github.gusenov.java.model**
36+
- com.github.gusenov.java.services
37+
- com.github.gusenov.java.utils
38+
- com.github.gusenov.java.helpers
39+
40+
**services** и **controllers** написаны во множественном числе.
41+
**model** написан не во множественном числе.
42+
43+
Или они все должны быть написаны во множественном числе (что собственно и нужно, чтобы так было) или же все должны быть написаны в единственном числе, но это уже будет некорректное название.
44+
45+
*Рекомендуется:*
46+
47+
- com.github.gusenov.java.controllers
48+
- com.github.gusenov.java.dao
49+
- com.github.gusenov.java.dao.accessors
50+
- com.github.gusenov.java.dao.impl
51+
- **com.github.gusenov.java.models**
52+
- com.github.gusenov.java.services
53+
- com.github.gusenov.java.utils
54+
- com.github.gusenov.java.helpers
55+
56+
## Классы
57+
58+
Каждое название класса должно отвечать само за себя. Для чего оно предназначено.
59+
60+
## Константы
61+
62+
Констант в коде не должно быть. Их необходимо выносить из кода.
63+
64+
## Комментарии
65+
66+
В коде не должно быть вообще комментариев.
67+
Комментарии могут быть в каких-то местах очень сложно алгоритмических.
68+
Если же в коде написано множество коментариев это говорит о том, что он непонятный.
69+
Комментарии засоряют исходный код и он становится менее читабельным.
70+
Код должен быть написан таким образом, чтобы он был легко читаемым.
71+
72+
# Список использованных источник
73+
74+
- [Java code review](https://www.youtube.com/watch?v=1ZhmK7BiWbk&list=PLi3gxGWPyGGSz6vYeCwOw8IgT4G1VP83w)
75+
- [java - Naming convention JUnit suffix or prefix Test - Stack Overflow](https://stackoverflow.com/q/3146821/2289640)
76+

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2017 Аббас Гусенов
3+
Copyright (c) 2017 Abbas Gussenov
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1-
# coding-style-guides
2-
Рекомендации к стилю кода.
1+
# Рекомендации к стилю кода
2+
3+
- [Руководство по оформлению Java-кода](Java.md)

0 commit comments

Comments
 (0)