LINUX.ORG.RU

Вспомнить всё - разработка

 


0

2

Разрабатывал почти год веб-приложение потом пришлось взять перерыв почти на 2 мес. Открываю IDE и смотрю с большим удивлением как будто вижу это всё впервые.

Задача теперь вспомнить всё и продолжить разработку.

П.С всем, привет, кто ещё помнит.

Ответ на: комментарий от Bfgeshka

Да код я писал по последним стандартам разработки, дело в том что теперь нужно вспомнить как это всё работает, приложение состоит из многих модулей-частей, теперь чтобы вспомнить что и как наверно нужно будет столько же времени..сколько я отсутствовал. К примеру когда ты долго работает ты уже знаешь с какой частью ты работаешь и что нужно, а теперь хз, нужно всё заного либо тестить либо «щупать» от А до Я…

Мне уже не так важен бюджет, как просто его закончить.

nixbrain
() автор топика

Становись вайб кодером: установи агента, используй голосовой ввод, шепчи промпты в микрофон. IDE можно будет не открывать.

qaqa ★★
()
Ответ на: комментарий от unDEFER

Дело в том что разработка велась на нескольких модулях сразу, таски как бы есть, но, не везде, а так, как проект не маленький, нужно вспомнить полностью его функционал. То есть я щас просто смотрю на код, да примерно понимаю где что - но в целом как раньше, то есть как раньше я разрабатывал и знал над чем работаю и что нужно - такого нет, теперь как вспомнить что делать не знаю, по этому придётся наверно перебирать каждый файл и тестить всё по порядку..там же не только над кодом велась разработка, но и в бд..

nixbrain
() автор топика
Последнее исправление: nixbrain (всего исправлений: 1)
Ответ на: комментарий от nixbrain

Сейчас с прошлым вы уже ничего не сделаете, придётся вникать долго, но когда вникнете хорошо бы сделать задел на будущее в виде такой документации, чтобы не повторилось всё.

unDEFER ★★★★★
()
Ответ на: комментарий от anonymous

Не всё так просто, если бы проект был мелкий, вопросов нет, а тут и классы и модули и бд и все до кучи, последние таски есть, но, чтобы понять в целом что нужно дорабатывать и как двигаться нужно по идеи перебирать весь код - тестить все по новой с самого начала весь функционал и по ходу вспомнить как это всё работает.

nixbrain
() автор топика
Последнее исправление: nixbrain (всего исправлений: 1)

Это нормально, с опытом будет легче вспоминать :)

amm ★★
()

У меня всё еще страшнее. Я больше полугода не заглядывал.
И даже знаю, где есть косяки...

hbars ★★★★★
()
Ответ на: комментарий от devl547

Раньше мелкие я кодил стандартными функциями, а когда взялся за проект, чуть больше средней сложности, понял, что такой подход не прокатит, потому что уследить за всем или что-то потом там фиксить, нужно перелапачивать чуть ли не все файлы. По этому прочитал несколько статей и пару книг и понял что мне нужно. Стало намного проще разрабатывать, но, все равно, масштаб имеет значение, когда и бд и классы и отдельные модули, за всем нужно следить - тестить. А когда закинул, теперь нужно вспоминать всё заного чтобы придти к тому с чего начал и продолжить разработку. Осталось в принципе не много, но, как я уже говорю, масштаб проекта имеет значение, даже если код вполне читаем и понятен.

nixbrain
() автор топика
Ответ на: комментарий от nixbrain

Это обычное дело. Я уже давно отказался от адекватного написания собственных проектов. Потому что в них надо погружаться глубоко, а времени на это нет.

Я несколько раз пытался сделать большой кусок за месячный отпуск, но тоже не получалось: первые пару недель ты просто приходишь в себя от работы, к концу второй недели понимаешь, что силы наконец появились и можно начинать дописывать проект. И вторую пару недель ты въезжаешь в свой собственный проект, вспоминаешь что там где там сделано, как и для чего. К концу этой пары недель ты себе картину примерно в голове составляешь, и можно уже делать что-то вменяемое, но именно в этот момент отпуск заканчивается и надо выходить на работу. В итоге ничего толком не делается.

Xintrea ★★★★★
()
Ответ на: комментарий от Xintrea

Потому что это старые скрипты, которые я кладу ко всем своим дистрибутивам bash-скриптов, и они были разработаны значительно до появления идеи детальной документации.

unDEFER ★★★★★
()
Ответ на: комментарий от Bfgeshka

А так - ССЗБ, надо было код хороший писать, а ты писал плохой.

+1. Самый лучший показатель того, что код говно — это когда сам открываешь его спустя какое-то время, и тебе ничего не понятно. Точно так же снова и снова он будет непонятен любому, кто его прямо сейчас не помнит наизусть.

byko3y ★★★★★
()
Ответ на: комментарий от nixbrain

Да код я писал по последним стандартам разработки

А надо было писать хороший.

firkax ★★★★★
()
Ответ на: комментарий от pfg

Писал регэкспы всего несколько раз, и те были вида some text [0-9]+ some more text [0-9]+ text3 [0-9]+. А для всего сложнее есть Си.

А, ещё точки в grep тоже можно регэкспами считать и конструкции вида (word1|word2) - этих было больше, но они никуда не сохранялись.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)

Ха-ха. Я для получения визы таланта недавно заброшенное 10 лет назад приложение открыл. Странно, всё знакомо. И даже на flutter стал переносить.

Shadow ★★★★★
()
Ответ на: комментарий от Shadow

можно кратко написать регексп, можно развернуто нахерачить экран-два функций…
результат будет один и тот же :)

это было давно и на перле

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 1)

Чтобы такого не было, надо делать по архитектурам MVC там, DDD может. В MVC ты одним и те же модули делаешь для каждой фючи, а в DDD по доменам.

А если тебе лазером из космоса фигачит структуру на каждый проект, то там и черт ногу сломит.

Ну и че там? У школьников каникулы начались?)

AntonyRF ★★★★
()

Проблема решается элементарно. Если в процессе разработки ничего не понимать, то вернувшись к коду послед долгого перерыва ничего не изменится.

ugoday ★★★★★
()

Я обычно после отпуска git log / git diff просматриваю. Заодно можно посмотреть, что коллеги наделали с кодом. Ну и хорошая архитектура здесь помогает, когда еще тикет не дочитал, а уже знаешь какой модуль и класс надо поправить.

necromant ★★★
()
Ответ на: комментарий от Zhbert

Я иногда регексп перестаю понимать ещё на стадии написания :)

«Дед, пей таблетки. А то получишь по жопе!»

З.Ы. в перле и питоне можно собрать длинный регексп из отдельных логически обособленных частей (строк). И уже потом откомпилировать

router ★★★★★
()

В следующий раз в процессе написания не забывай про документацию, тесты и, особенно, интерфейсы

А теперь, если оно ещё нужно, либо пишешь заново с нуля, либо изучаешь с нуля (комментарии, вики, схемы)

router ★★★★★
()

Чувааак! Ты вернулся) За этот год случился вайб-кодинг, тебе обязательно нужно его попробовать. Это решит все твои проблемы с разработкой. Ставишь codex cli покупаешь подписку и вперед. Если денех совсем нет, можно взять gemini cli, там вроде есть какой-то халявный лимит.

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от ugoday

Проблема решается элементарно. Если в процессе разработки ничего не понимать, то вернувшись к коду послед долгого перерыва ничего не изменится.

Нет, и это основная причина, почему пишется плохой код — «да тут всё понятно». Сейчас понятно, да, пока весь код помнишь наизусть, а уже через неделю перерыва часть не вспомнишь, а через полгода вообще всё забудешь — и вот тут-то начинается разница между хорошим и плохим кодом.

byko3y ★★★★★
()
Ответ на: комментарий от byko3y

Это был концептуальный троллинг. На сверхстратегическом уровне. Концепции типа «кода» в данном случае - ничто за точкой невозврата в путешествию к центру чёрной, как империализм, дыры...

piyavking ★★★★★
()
Ответ на: комментарий от byko3y

Код хороший, просто его много и не один модуль.

Дело в другом, вспомнить как всё это работает.

Вот по этому сижу перечитываю таски и попутно щупаю что и где.

nixbrain
() автор топика

Открываю IDE и смотрю с большим удивлением как будто вижу это всё впервые.

Я тебя помню, ты всегда так же смотрел.

thesis ★★★★★
()

Позвольте мне вставить свои 5 копеек.

1. Была постановка задачи или задание на разработку. Можно ее глянуть. 2. В процессе разработки надо писать документацию или хотя бы ее зачатки в виде to-do, известные баги. 3. Концептуально если придумывал ты то должен помнить. Если не ты то у него и спроси. 4. Правильно сказали. Запусти ИИ - пусть он напишет документацию или даст обзор по проекту. 5. Разбираться в чужем коде тяжело. А вот свой, если он логичен то можно. 6. Не бери в голову. Спроси задачи и методом научного тыка реши их. После и весь проект поймешь или вспомнишь.

Собственно важна еще модель разработки. Мне понравился совет использовать DDD. Я обычно так и делал не зная о ее существовании. Создавал макро объекты, а уже потом с ними проводил простые манипуляции. Все понятно и читаемо.

jura12 ★★★
()
Последнее исправление: jura12 (всего исправлений: 1)

У меня есть проекты без документации, которые вообще не я писал. Ничего страшного. В таком случае документацию можно восстановить по коду. При нормальном нейминге документация на высокий уровень и основные алгоритмы занимает пару дней. Обычно этого достаточно, чтобы найти место в котором надо внести правки.

Если нашёл участок кода, в который надо внести правки, но не можешь его понять, то берёшь этот код в одно окно редактора, а в другом окне его тупо перепечатываешь (можно не тупо, а сокращая, например). Пока перепечатываешь, голова начинает работать и ты уже готов вносить правки.

Kogrom ★★
()
Ответ на: комментарий от nixbrain

Да код я писал по последним стандартам разработки

А надо было писать так, чтобы быстро понимать что он делает.

Это как с вещами, их нужно убирать туда где в следующий раз будешь искать.

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)

документация и комменты пишутся для себя.
теперь ты знаешь.

olelookoe ★★★★
()
Ответ на: комментарий от ya-betmen

Ты не понял, даже если я писал, это не значит что я вспомню за два дня как работают все модули проекта, так как некоторые связаны между собой.

nixbrain
() автор топика
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария