Как запоминать код, который писал две недели назад?
Короче проект, который я делаю разрастается и постепенно обретает формы огромного животного, которое трудно уместить у себя в голове. Начинаю забывать какой код за что отвечает, как работает и с кем взаимодействует.
Комментарии пишу, стараюсь все структуризировать, по функциям раскидываю однообразные задачи и тому подобное, но целостной картины всего проекта в голове нет, что-то забываю. тем самым могу написать какой-то модуль, которые через хрен знает сколько строк кода неожиданно может повлиять на другой кусок кода и что-то сломать.
В общем основная проблема, что не могу уложить в голову всю целостную картину и логика проекта.
Думаю начать рисовать майнд мапы к проекту и описывать весь функционал которые писал кодом в визуальном виде. Чтобы можно было в любой момент глянуть и сразу понять что к чему и где присоединяется.
Но может есть и еще какие-то лайфхаки? Поможете? А то с ума схожу уже)))))
- Вопрос задан более трёх лет назад
- 5331 просмотр
5 комментариев
Как быстро выучить программирование / ТОП 5 способов как быстро изучить программирование новичку
Оценить 5 комментариев
Есть как минимум 2 лайфхака — SOLID и GRASP.
Нужно как минимум два раза в день подходит к окну и вертясь на носке левой ноги, против часовой стрелки, крутить указательным пальцем правой руки с задранным вверх локтем, кончик носа. Феноменальная методика улучшения памяти.
Распечатай и читай на ночь перед сном.
В общем основная проблема, что не могу уложить в голову всю целостную картину и логика проекта.
так она (логика проекта) должна быть в голове изначально, а не потом, когда написан код. как это вообще у вас выходит наоборот делать?
Документацию к коду пишите. Говорят помогает.
Решения вопроса 0
Ответы на вопрос 16
- Как писать много кода, оставляя его простым, как в начале?
- Также советую прочесть «Совершенный код» С.Макконнелла.
- Качественный код не требует того, чтобы его запоминали. Качественный код может быть забыт сразу после того, как он начнет проходить все тесты. Держать в голове нужно только программные интерфейсы, но даже не все, а только, используемые на текущем уровне абстракции.
Ответ написан более трёх лет назад
Комментировать
Нравится 23 Комментировать
Это потому что вы просто тупо пишете код, а вам нужно разрабатывать (проектировать) приложение.
Ответ написан более трёх лет назад
Комментировать
Нравится 6 Комментировать
Значит вы ещё не программист, а кодер. Это не страшно, вопрос опыта.
Главное отличие программиста от кодера — программмист пишет код в голове — набивание кода в IDE это самое нудное в программировании, весь смак — в проектировании. А вот кодер пишет код кусочками, которые берёт из интернета или из собственных внезапных озарений.
ЧТО ДЕЛАТЬ ЕСЛИ НЕ ПОНИМАЕШЬ ПРОГРАММИРОВАНИЕ | КАК ВЫУЧИТЬ ПРОГРАММИРОВАНИЕ
Рецепт решения вашей проблемы прост — отойдите от компа, пойдите прогуляйтесь или посидите в кафе, на диване или где там вам уютно, спокойно и мухи не кусают. Спроектируйте ваше приложение от и до в голове. Вы должны чётко видеть все компоненты системы и их взаимодействие между собой. Затем запустите приложение — отладка в голове тоже может работать, если вы хорошо знаете язык программирования. После того как пофиксите баги — можно садится за комп и переносить код в железный ящик под столом.
Ответ написан более трёх лет назад
Комментировать
Нравится 5 Комментировать
Это блин эпично, не, ну я понимаю там методы когда я предаю туда по 4-6 пременных, не всегда помню что и в каком порядке, но уж зачем функция getCollectionAsArray() уж точно понимаю. И через 3 года вряд ли забуду. Или именуете коротко и непонятно, или что-то бесструктурно-хаотично захардкориваете, пытаясь накатить фикс поверх бага, и их много. Код как то упорядочен?
Ну хотя бы по какой-то там парадигме типа мвц или евент модел? Или фигачу функционал, а там посмотрим?
Ответ написан более трёх лет назад
Комментировать
Нравится 4 Комментировать
Писать проект не на чистом листе, а натягивать на какой-то грамотный фреймворк, играя по его правилам. Это поможет освоить и понять некоторые паттерны, принципы SOLID / GRASP, которые вам уже порекомендовали, и избежать совсем неразборчивой каши в архитектуре.
Давайте понятные названия методам/функциям/классам. Избегайте длинных кусков кода – бейте на меньшие. Многие «правильные» практики сами встанут на место, если начнёте работать над проектом не в одно лицо, а с кем-то.
Делите сложность на уровни абстракции. Самый верхний, как в общем функционирует ваше приложение, без деталей, всего несколько компнентов – например, веб-клиент, backend сервер и третий сервис. Эти 1-2-3 несложно запомнить/вспомнить ) Далее, как работает backend – с чем взаимодействует (БД, Redis). И т.д. вглубь, в детали.
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
Жил-был у бабушки серенький троллик.
Две недели? И весь проект от начала до текущего состояния — Ваш? OMG, я чего-то наверное не понимаю.
Документация нужна, столь ненавидимая программистами. Общая структура проекта, его деление на модули, их API и правила взаимодействия, протоколы обмена, буде таковые есть. Модуль должен быть документирован так, как если бы его брался использовать сторонний человек, который должен придти, прочитать описание API и начать его использовать — не исключено что этим «новым человеком» будете Вы сами.
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
frontend-developer
В общем основная проблема, что не могу уложить в голову всю целостную картину и логика проекта.
так она (логика проекта) должна быть в голове изначально, а не потом, когда написан код. как это вообще у вас выходит наоборот делать?
Ответ написан более трёх лет назад
Нравится 3 1 комментарий
ну есть такой способ разработки «с низу вверх», бывает полезен в определенных условиях. Но видимо у ТС не тот случай.
lvivcss.com.ua
То есть архитектуры как такой изначально не было?
Вам по-любому надо документировать не только код, а и так называемые use-case и user-story, описывать взаимодействия модулей между собой.
Така абстрактная документация очень важна. Правда, очень желательно, чтобы она была до написания имплементаций.
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
Человек вообще мало может держать в уме вещей — 3-5 абстракций
Начинающим еще приходится держать в уме конструкции
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
non progredi est regredi
Ответ написан более трёх лет назад
Нравится 1 1 комментарий
отлично материал, спасибо
Я обычно помню код только пока пишу модуль, потом почти специально его забываю, потому что зачастую в модуль есть один вход и один выход (может чуть больше), а в остальном нужно значит лишь то, что примерно делает модуль.
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
Full-stack developer
Конкретно по коду, лично мне — помогает git
По коммитам и ревестам вполне можно освежить память по проделанной работе, ну и конечно же просмотреть работу других программистов
По поводу майнд мапов — их лучше рисовать изначально, до написания кода, т.е. на этапе проектирования приложения, т.е. описывать, что и как будет взаимодействовать — это собственно и будет Разработка
В пример — обычный дизайн — сначала рисуется прототип — а уже потом сам дизайн
По теме — сначала рисуем схему работы приложения, потом пишем код
Комментарии пишу, стараюсь все структуризировать, по функциям раскидываю однообразные задачи и тому подобное, но целостной картины всего проекта в голове нет, что-то забываю. тем самым могу написать какой-то модуль, которые через хрен знает сколько строк кода неожиданно может повлиять на другой кусок кода и что-то сломать.
Это говорит лишь об отсутствии опыта и наличии мышления обычного программиста, а не разработчика/архитектора приложения. Т.е. в голове лежит лишь конкретная задача, а не работа приложения в целом.
Как это исправлять — больше участвовать именно в разработке архитектуры приложения — чаще посещать совещания по будущей работе приложения, составлять майнд мепы, рисовать схему на листке, на доске, думать не над тем, как написать класс и методы, а над тем, как будет работать приложение в целом, т.е. главное — чтобы была видна общая картина работы приложения .. Пару раз нарисуете, продумаете архитектуру приложения, потом мозг уже начнёт сам думать в этом направлении, без необходимости что-либо визуализировать .. Ну и как следствие, архитектура приложения всегда будет в голове.
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
нельзя просто так взять и загуглить ошибку
Не знаю конечо про лайфхаки, но 2 недели?
Совсем уж короткая память.
Делал 3-4 года допустим проект, всё помню/знаю. «Забываю» только если нужно уточнить какую-то глубокую мелочь в логике, и то не всегда конечно.
А за это время еще и всякой другой фигней занимался не только одним проектом.
Если код есть, доки есть, что еще поможет не представляю.
Записывать еще куда-то? Так вы и там забудете что писали, какой смысл еще работу придумывать?
Уже ответили про SOLID/GRASP, но это не для говнокодеров вроде меня, но таки надо какую-то структуру/логику иметь общую, если вы не помните базовые вещи наверно они меняются постоянно или не очень логично построены.
Так же забывается если код не используется долго, и если что-то ломается от нового/новый от старого надо писать лучше, чтобы такое было в принципе невозможно.
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
ruby on rails web dev
Писать хорошо структурированный, модульный, loose coupling / high cohesion код с комментариями, а не спагетти-месиво нагромождения.
Тогда Вы сможете за несколько секунд понять, что идет куда.
Если проект рельсо-ориентированный, то есть такая штука как mountable engine — очень сильно помогает.
Разбейте проект на такие монтируемые движки — не поверите, насколько сильно это упрощает жизнь, я без них вообще не представляю, как можно работать со сколько угодно крупными проектами, не прибегая к микросервисам.
Еще можно разбивать бизнес-логику на сервисы (Service Object pattern) — тоже помогает.
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Мой совет — спать лучше, есть мясо и отдыхать не забывать
Ответ написан более трёх лет назад
а мясо тут при чем?)
Антон Мудренок: объяснить не могу, непонятно почему, но работает :)) Еще можно пивом запивать в умеренных количествах..
React.JS/FrontEnd engineer
Во первых необходима годная архитектура приложения. Я за счет жеско opinionated структуры путей в своем нано-фреймворке на 90% снизил оверхед на «подумать» а где у меня что.
Во вторых модульность, в идеале один модуль отвечает за одну таску. Не надо городить швейцарские ножи, это плохо кончается.
В третьих иммутабельность. Если ты меняешь в одно месте, а сломалось/упало в другом, то поздравляю, поциент, у вас мутабельность третьей степени и это фатально. Все что можно перевести в pure functions и immutable structures (тут с осторожностью, ибо можно выстрелить себе в ногу и уронить производительность ниже плинтуса).
Опять же, единственный source of truth спасает.
И самое главное, код надо писать так, чтобы он был понятен с первого взгляда, максимум со второго. Не надо в коде выеживаться и быть многословным. Код должен быть простым и лаконичным. Говоря что snake_case более читабельный, чем километровыйКамелКейс. Я, пожалуй, соглашусь, хотя использую в коде последний в основном.
Я часто встречаю весьма изящный хитрый код, который невозможно понять даже после часовой медитации над ним. Вот я так стараюсь не делать. Я стараюсь писать код, чтобы понял любой джун (очевидно который в контексте проекта). Получается не всегда, но достаточно часто.
По крайней мере в последние годы я с ходу понимаю что я там намудрил в проекте и через месяц, и через 6, и через 2 года. А раньше да, бывало через 3 месяца хотелось убить того ишака, который это написал, а потом вспоминаешь, что это был ты сам. 😀
Еще момент — хорошо структурированные данные помогают писать более прозрачный код.
Источник: qna.habr.com
Как программисту улучшить свою память — отвечают эксперты
В IT-сфере огромное количество информации, и с каждым днём становится только больше. Чтобы ориентироваться в этом объёме данных, нужно иметь хорошую память, ведь даже чтобы поискать что-то в интернете, нужно помнить о том, что это что-то существует. Как улучшить свою память, чтобы идти в ногу со временем? Узнаем у экспертов.
Андрей Клюев
ведущий разработчик MediaSoft
Это может показаться странным, но программисту сейчас нет нужды запоминать множество вещей — IT настолько быстро развивающаяся индустрия, что то, что вы запомнили сегодня, может оказаться морально устаревшим уже к концу этого года. Особенно ярко это проявляется в мире фронтенд-разработки.
Куда более полезным для современного разработчика является умение быстро находить нужную информацию и грамотно формулировать поисковые запросы, а также способность выбирать из огромного потока информации только нужную и достоверную часть. Как развить эти навыки? На мой взгляд, они могут прийти только с опытом, есть лишь несколько небольших советов:
- Прежде чем искать ответ на свой вопрос, проговорите его, убедитесь, что он максимально лаконичен и полностью отражает суть вашей проблемы.
- Если вы хотите найти что-то в документации, то определитесь, к какой категории относится ваша проблема, чтобы не терять времени на блуждание по разным разделам.
- Ну и самое главное: когда копируете код со StackOverflow, копируйте из ответа, а не из вопроса.
Действительно важная информация, которую нужно помнить разработчику, всегда очень абстрактна и описывает не конкретные реализации, а основные концепции. Этой информации не так много, и запомнить её может каждый без особых усилий, а всякие мелочи вы всё равно забудете через пару недель после того, как перестанете с ними работать. Можно, конечно, упражнения разные поделать, их в сети описано бесчисленное множество, осталось только найти и выбрать, но зачем?
2019-07-15T16:20:18+03:00
Рейтинг полезности ответа:
Нина Бурминская
инженер-программист 1 категории компании ICL Services
Программирование как сфера деятельности — это прекрасный образец каждодневной тренировки памяти. Помнить синтаксис и алгоритмы — ежедневная рутина, которая перерастает в механическую память, когда мозг не включается, а «руки помнят». Естественно, это происходит не за один день и даже не за неделю, этот механический опыт передаётся тщательными тренировками и практическими заданиями.
Поэтому, по моему мнению, для программиста забыть синтаксис, операторы, способы объявления функций и т. д. — это как для строителя забыть, как пользоваться молотком.
Трудности возникают тогда, когда разработчик должен взаимодействовать с несколькими языками программирования каждый день. В этом случае получается путаница и беспорядок. В таких ситуациях на помощь приходят мнемонические правила или ассоциативная память. Например, при объявлении функций на языке C# используются знаки «<>», которые мне напоминают консервы — консервированный C#. Для запоминания некоторых команд мне иногда достаточно повторить их вслух, без правил английского языка (Publish-AppvPackage для PowerShell: публиш апп-в пакет).
Для профилактики некоторые упражнения для памяти всё-таки лучше попрактиковать: в моём случае это посмотреть мельком на телефон и вспомнить, сколько там было времени; также по ходу движения запоминать номерные знаки автомобилей — чем больше, тем лучше; вспомнить, что было вчера — тоже отличный вариант!
Память это, конечно, очень важно, и прекрасно помнить всё, но на случай тотального забытья всегда есть Google!
2019-07-15T16:20:18+03:00
Рейтинг полезности ответа:
Олег Шиков
декан факультета веб-разработки в GeekUniversity
Хотелось бы сразу предостеречь начинающих программистов от зубрёжки. В отличие от языков, на которых мы разговариваем, в языках программирования очень мало исключений из правил, а количество ключевых слов и конструкций редко превышает сотню. Более того, при написании программ, если вы, конечно, не собираетесь работать в блокноте, всегда можно воспользоваться современными редакторами кода и IDE, которые анализируют код, делают подсказки, отмечают ваши ошибки, тем самым ускоряя разработку.
Но существуют вещи в программировании, которые действительно необходимо выучить по двум причинам. Во-первых, чтобы успешно пройти собеседование, продемонстрировав свои навыки, а во-вторых, просто для того, чтобы не тратить своё время на поиск одной и той же информации. К таким вещам относятся, например, основные алгоритмы и шаблоны (паттерны) проектирования, а также синтаксис и основные функции языка программирования, на котором вы собираетесь писать основную часть времени.
Как же лучше всего выучить эти вещи? Просто вызубрить, не вникая в суть? Вряд ли. Можно либо найти в интернете тренировки для памяти и выполнять упражнения «запомни ряд слов и повтори», «запомни цифры и повтори», либо учить стихи. Да, это бесспорно пойдёт вам и вашему мозгу на пользу, но сделает ли это из вас великого программиста?
Скорее всего, нет. А вот что действительно может помочь, так это постоянная практика. Если вы будете каждый день хотя бы по паре часов писать код на своём любимом языке программирования (или на том, с которым вы хотите работать в дальнейшем) и не просто бездумно копировать код с таких сайтов, как StackOverflow, а именно писать, понимая, что делает каждый символ вашего кода, то очень скоро вы поймаете себя на мысли, что пишете по памяти, и вам не приходится каждую конструкцию подсматривать в учебнике/документации.
Кроме того, могу посоветовать «сохранять себе в копилку» интересные конструкции и фрагменты кода для того, чтобы в будущем не писать повторно тот же алгоритм, а подсмотреть у себя же. Такие кусочки принято называть сниппетами кода, от английского snippet — отрывок, фрагмент. Существуют и бесплатные сервисы для хранения таких кусочков кода, например GitHub Gist.
Подводя итог, хочу порекомендовать не заучивать всё подряд, а в первую очередь понимать, что вы пишете и почему ваш код работает именно так, а не иначе. Достаточно выучить самые основные и наиболее часто используемые вещи, и, скорее всего, они сами быстро запомнятся. Остальное важно уметь быстро найти в учебнике или в документации.
2019-07-15T16:20:18+03:00
Рейтинг полезности ответа:
Инна Анисимова
генеральный директор PR Partner
- Учите иностранные языки. Исследования доказали, что у пожилых люди, владеющих двумя и более языками, способности к запоминанию гораздо выше, чем у тех, кто говорит только на родном.
- Подключайте эмоции. Забудьте про зубрёжку, все люди с хорошей памятью ассоциируют пустую информацию (цифры например) с какими-либо яркими явлениями (цветом, воспоминанием об эмоциональном событии).
- Высыпайтесь. Способности мозга напрямую зависят от того, насколько хорошо его обладателю удалось отдохнуть прошлой ночью. Можете провести эксперимент: сыграйте в «Мемо» после бессонной ночи и хорошо выспавшись — результаты будут очень разными.
- Делегируйте задачи левой руке. Не обязательно становиться левшой, но если выполнять простейшие действия не правой, а левой рукой, то мозг перезагружается и начинает работать активнее.
- Поживите вслепую… Если иногда выключать зрение в безопасных местах, сидя на лавочке в парке, принимая душ, прогуливаясь по знакомой кухне, то можно через некоторое время обнаружить улучшение когнитивных способностей.
- Откажитесь не только от алкоголя, но и от сладкого. Если со спиртным всё ясно, то про сахар многие не думают. Недавно был проведен эксперимент: мыши, напичканные сладким, должны были выбраться из лабиринта, с успехом преодолённого ранее. Никто из подопытных с задачей не справился.
2019-07-15T16:20:18+03:00
Рейтинг полезности ответа:
Виталий Чижков
руководитель группы разработки проектов Тверского технологического центра Accenture
Про улучшение памяти написано столько книг и методик, что если их все прочесть, то забудется последнее. На фоне популярности биохагинга с его ноотропами, мнемонических техник, интервальных повторений, эффекта Зейгарник, методов Цицерона и Айвазовского, программисты часто забывают об основе когнитивной функции — здоровье мозга. А оно неразрывно связано со здоровым образом жизни. Поэтому хорошую память следует искать не в психологии, а в физиологии нашего тела. Без умеренной физической нагрузки, хорошего питания, качественного сна и отсутствия вредных привычек вряд ли удастся запомнить что-то надолго.
Вторая основа хорошей памяти — это отсутствие стресса, при котором процесс освоения новой информации теряет в качестве. Перегрузка и режим постоянной многозадачности также ухудшают способность к запоминанию. Для такой психологически напряженной области как программирование это особенно актуальные проблемы. Поэтому следует ответственно относиться к планированию времени, дипломатичности общения с коллегами, активному отдыху и поддержанию work-life баланса.
Модификация памяти — это формирование связей и спецификаций нейронов. А нейрофизиология — очень молодая наука, теоретическая база которой во многом строится на эмпирических наблюдениях. Это значит, что все существующие продвинутые методики запоминания ничего под собой не имеют и на длительном промежутке времени не изучались. К любому методу и совету в этой области нужно относиться с осторожностью.
2019-07-15T16:20:18+03:00
Рейтинг полезности ответа:
Юлия Чернова
руководитель направления обучения и развития персонала в DINS
Наша память — уникальный механизм работы с информацией, который имеет ряд особенностей, например:
- сгруппированная и структурированная информация запоминается лучше, чем разрозненные факты;
- связь информации с эмоциями способствует запоминанию;
- механизм забывания, согласно исследованиям Эббингауза, устроен таким образом, что большая часть информации забывается уже в ближайшее время после получения, если ей не пользоваться;
- когда наша оперативная память перегружена, то вероятность, что информация из неё эффективно перейдёт в долгосрочную память, снижается.
Как же использовать эти особенности для более эффективного запоминания? Рекомендую применять 3 простых принципа:
- Увеличьте количество и регулярность повторений. Лучше всего запоминается то, что вы не просто заучили, а пересказали другим людям, причём в самое ближайшее время после получения информации. Это помогает структурировать материал, выстроить его в логические цепочки и укрепить нейронные связи (мозгу будет проще найти этот «файл» в дальнейшем).
- Используйте ассоциации для запоминания. Система хранения информации в нашей голове похожа на шкаф. Чаще всего вы будете пользоваться теми полками, которые расположены или организованы максимально удобно, а также теми, на которые часто ссылаются ярлыки на других коробках. Если вам нужно закрепить в памяти что-то новое, воспользуйтесь яркой ассоциацией. Например, когда вы хотите запомнить конструкцию для комментариев типа /*…*/ , представьте, что она похожа на ошарашенное лицо. Такое ошарашенное лицо будет у разработчика через год, если он не оставит комментариев и захочет снова разобраться в коде.
- Разгрузите свою оперативную память. Фиксируйте текущие задачи, идеи, договорённости, чтобы высвободить ресурсы мозга для запоминания действительно важного. Больше отдыхайте и высыпайтесь, ведь именно во время сна информация из кратковременной памяти переходит в долговременную.
Для того чтобы глубже погрузиться в тему развития памяти и исследований относительно особенностей мышления, рекомендую посмотреть на YouTube лекции психолога Татьяны Черниговской или прочитать книги «Помнить всё» Артура Думчева, «Как запоминать (почти) всё и всегда» Роба Иставэй. Именно эти материалы мы используем сами для подготовки внутреннего обучающего курса «Работа с информацией», который призван помочь коллегам организовать входящий поток задач, звонков, писем, документов, научиться быстро и качественно выделять главное, запоминать нужное и забывать ненужное.
2019-07-15T16:20:18+03:00
Рейтинг полезности ответа:
Юлия Бачурина
Нутрициолог, диетолог, специалист по детскому питанию
Память необходима программисту для выполнения его профессиональных обязанностей. Но из-за специфики работы именно память становится уязвимой. Сидячая работа, ненормированная загруженность, нервное напряжение, невозможность полноценно принять пищу не лучшим образом влияют на способность к запоминанию.
Несколько простых правил помогут сохранить и улучшить память.
- Пейте норму воды. В день необходимо выпивать 1,5–2 литра. Посчитать свою норму можно просто — 30 мл на 1 кг веса. Вода необходима для хорошей работы головного мозга. Чай и кофе не относятся к норме жидкости, так как они обладают мочегонным эффектом.
- Скорректируйте питание — добавьте рыбу, орехи, яйца, каши из цельного зерна. Мозг — самый жирный орган в теле, его нужно кормить. Необходимо ограничить сладости, выпечку и фаст-фуд.
- Найдите время на физическую активность. Будут это пробежки или прогулки, плавание или велосипед, танцы или бокс — не важно. Главное — заставлять кровь бежать быстрее.
- Высыпайтесь и отдыхайте. Мало кто может похвастаться отличной памятью и быстротой реакций после бессонной ночи.
- Решайте задачи, разгадывайте кроссворды, учите стихи. Мозг — как мышца. Чем больше его нагружать, тем больше он может выполнить нагрузки.
- Отличные результаты даёт пальчиковая гимнастика. При выполнении ассиметричных движений руками улучшается кровоснабжение головного мозга и связи между двумя полушариями. Всего 5–7 минут в день и через месяц виден результат.
- Хорошо работают травки — красный клевер, гинкго билоба, куркума, элеутерококк. Их можно пить отварами, можно найти в капсулах. Эффект заметен через 2–3 недели.
Улучшение памяти — это труд, требующий времени, сил и осознанности. Но награда за усилия достойная.
Будьте здоровы!
Источник: tproger.ru