Чому ми все ще вкладаємо описи вихідного коду на природній мові (тобто, чому було написано рядок коду) у вихідний код, а не як окремий документ?
Враховуючи велику нерухомість, що надається в сучасних середовищах розробки (монітори високої роздільної здатності, подвійні монітори тощо), IDE може забезпечити панелі з напівзамиканням, на яких візуальний код візуально відокремлений від, але внутрішньо пов'язаний з ним - відповідні коментарі. Наприклад, розробники могли писати коментарі до вихідного коду гіперпов'язаною мовою розмітки (посилання на додаткові вимоги до програмного забезпечення), що одночасно не дозволить документації захаращувати вихідний код.
Які недоліки гальмували б такий механізм розробки програмного забезпечення?
Макет, який допоможе з’ясувати питання:
Коли курсор знаходиться у певному рядку у вихідному коді (зображений синім фоном вгорі), документація, що відповідає рядку в курсорі, виділяється (тобто відрізняється від інших деталей). Як зазначається у запитанні, документація залишатиметься у режимі блокування із вихідним кодом, коли курсор стрибає через вихідний код. "Гаряча клавіша" може перемикатися між "режимом документації" та "режимом розробки".
До потенційних переваг можна віднести:
- Більше вихідного коду та більше документації на екранах (одразу)
- Можливість редагування документації незалежно від вихідного коду (незалежно від мови?)
- Паралельно пишіть документацію та вихідний код без конфліктів злиття
- Документація в режимі реального часу з гіперпосиланнями з покращеним форматуванням тексту
- Квазичний машинний переклад у реальному часі на різні природні мови
- Кожен рядок коду може бути чітко пов'язаний із завданням, вимогою бізнесу тощо.
- Документація може автоматично позначати часові позначки під час написання кожного рядка коду (метрики)
- Динамічне включення діаграм архітектури, зображень для пояснення відносин тощо.
- Документація з одним джерелом (наприклад, фрагменти коду тегів для включення в посібник користувача).
Примітка:
- Вікно документації може бути згорнуте
- На робочий процес для перегляду або порівняння вихідних файлів це не вплине
- Як відбувається реалізація - це деталь; Документація може бути:
- зберігається в кінці вихідного файлу;
- розділити на два файли за умовами (
filename.c
,filename.c.doc
); або - повністю керована базами даних
- Під гіперпосилальною документацією я маю на увазі посилання на зовнішні джерела (наприклад, StackOverflow чи Wikipedia) та внутрішні документи (тобто вікі на піддомен, який може перехрещувати документацію щодо бізнес-вимог) та інші вихідні файли (схожі на JavaDocs).
Пов’язана тема: Що з відразою до документації в галузі?
Gson()
об'єкт бути інстанціювати по відношенню до класу MainActivity, ні те, як він ставиться до рішення конкретних вимог бізнесу. Опис самого коду, а не API, який він використовує, може знаходитися в окремому вікні, незалежно від сторонніх JavaDocs.