предисловие
Я как отморозок в основном не участвовал в наборе интернет-компаний первой линии когда заканчивал.Когда выздоровел и подготовился к участию, весенний набор уже почти закончился [выпустился в 17 лет] наткнулся на несколько компаний, хотя Меня оскорбили, но в основном все, что я сделал, это предложение, и после нескольких сравнений я пришел в Suning и решил стать финансовым программистом. Хотя в Интернете есть разные мнения о работе в ИТ в Suning, есть хорошие и плохие, и есть смешанные отзывы, но, насколько мне известно, как новичку, Suning по-прежнему обеспечивает мне хорошую среду для работы и обучения. [Присоединился почти 4 месяца] .
Ближе к дому, как новичок на рабочем месте, столкнувшись со многими сложными бизнес-сценариями и использованием различных технологий с открытым исходным кодом, я действительно сначала немного «запаниковал», но с постепенным проникновением, от возможности успешно запустить проект, от аннотирования кода до детального дизайна, самостоятельного рисования блок-схемы бизнес-направления, до самостоятельного выполнения требования в первый раз, до постоянного обнаружения проблем в существующей структуре или бизнес-логике и попытки оптимизации; процесс все еще очень "куриный". Технологии всегда должны поддерживать бизнес. Очень важно быть знакомым с продуктом. Только глубоко понимая определенный бизнес, а затем расширяя отношения с другими предприятиями, вы можете найти проблемы и найти точку входа для оптимизации конкретного кода и бизнеса. оптимизация. Поэтому поговорка о том, что каждый является продакт-менеджером, очень уместна, особенно программисты, мы должны научиться «договариваться» с продакт-менеджерами.
зачем писать
Зачем я пишу?Первоначальная идея заключалась в том, чтобы фиксировать проблемы и ямки в моей работе, чтобы меня снова не переводили в ямки. Но позже я обнаружил, что сбился с пути, и начал «учиться» + «обобщать» без особого глубокого понимания. Я посмотрю его позже, и его не будет или не будет, что очень беспомощно.
В Интернете есть много «списка маршрутов обучения JAVA», «списка маршрутов обучения базы данных», «списка маршрутов обучения Spring». . . , Честно говоря, я пытался, но все провалилось, я не могу продолжать. Например, если я хочу изучить коллекции Java, то я прочитаю и обобщу, а затем обнаружу, что есть много сравнений между безопасностью потоков и небезопасностью в коллекциях, и затем я рассмотрю связанные с безопасностью потоков, а затем обнаружить, что из этой ямы перепрыгнуло в другую яму.С одной стороны, не хватало времени на изучение, а с другой стороны, я не вложил в это свое собственное мышление.В результате то, что я узнал, было еще очень сломанный. Так что откажитесь от чужого успеха и вернитесь, чтобы пройти по своему собственному мосту из одной доски. Объедините некоторые из ваших предыдущих технических знаний и потребностей реальной работы, чтобы интегрировать их.
Я много читал, но не нашел большой глубины. Сначала я думал начать писать с Java Object, но сдался после того, как однажды попробовал [на самом деле, изучение библиотеки базовых классов Java по-прежнему очень хорошо]; я не думаю, что это подходит для таких людей, как я, которые не Я не играю в карты по заведенному порядку, поэтому я устанавливаю для себя рамки и учусь на них. Что это за коробка? Это шаблон дизайна.
Будь то дизайн библиотеки базовых классов java или дизайн системы Spring, он в основном неотделим от использования шаблонов проектирования.Почему бы не начать с Object и Spring, потому что, когда я начинаю идти по линии, бесчисленные линии будут быть вовлеченным, пока вы не знаете, с чего начать. Только когда вы смотрите на целое с верхнего уровня, вы можете понять общую ситуацию и научиться лучше схватывать детали, пока не достигнете взаимосвязи между различными ветвями.
Что написать
Моя идея состоит в том, чтобы пройтись по шаблону проектирования как по основной линии и начать заново учиться. [С точки зрения языка Java]
Шаблоны проектирования в основном ограничены шестью принципами проектирования, а затем используют механизмы, предоставляемые JAVA, для обеспечения абстракции, наследования и полиморфизма для конкретной реализации. Следуя этой мысли, вот краткое изложение моего собственного пути обучения:
Поскольку вам нужно использовать JAVA, вы должны сначала иметь четкое представление об абстракции, наследовании и полиморфизме, поэтому первая часть будет изучать характеристики самого языка Java, в том числе:
- 1. Понимание абстракции, наследования и полиморфизма
- 2. Классы и интерфейсы
- 3. Понимание интерфейсно-ориентированного программирования
Хорошо, вот и все, первая часть задает тон для основы того, как нам нужно использовать следующие шаблоны проектирования.
Вторая часть переходит непосредственно к шаблонам проектирования: - 1. Принципы проектирования
- 2. Создание
- 3. Структурный тип
- 4. Поведенческий
При изучении конкретного шаблона проектирования он будет обсуждаться и перемежаться некоторыми библиотеками классов на языке java;
После второй части вы получите общее представление о шаблонах проектирования, применении шаблонов проектирования в Java, дизайне верхнего уровня Spring и некоторых библиотеках классов в Java. Эта часть займет много времени, будет задействовано много очков знаний, и будет немного паники.
Третья часть начинается со структур данных, почему структуры данных, а не параллелизм или базы данных. С одной стороны, многие проблемы параллелизма в Java связаны с использованием коллекций, а коллекции зависят от разных структур данных, с точки зрения баз данных, если вы не знаете, как база данных хранит данные, невозможно знать, как оптимизировать; Если вы не знаете структуру хранения данных в базе данных, как вы можете узнать, как эти данные хранятся?
После того, как предыдущие три части закончены, о java почти закончено. Таким образом, как программист, понимание сети и использование технологии с открытым исходным кодом является корнем реального и быстрого решения практических проблем и проблем с питанием.
spring, mybatis, redis, struts2, hibernate и связанные с ними фреймворки rpc.
Про виртуалку java отдельно писать не буду, чувствую, что не смогу написать, расскажу после того, как наберусь реального опыта. . .заключительные замечания
На самом деле, у каждого из нас каждый день появляется идея, хорошая она или плохая, надо попробовать. прогуливаться. Не знаю, подходит этот "дикий способ" обучения или нет, но сейчас [2017.11.5 11:59] думаю, что для меня это нормально.