Если вы хотите быть на будущее, лучший совет, который я могу вам дать, - не погружаться в технологию.
Так что не изучайте API вслепую. Узнайте, как они задуманы. Каковы философии за сценой? Каковы их преимущества и недостатки? Подумайте, программное обеспечение в целом, а не конкретная технология.
Вы также можете работать над хорошей концепцией программы, переходя на ООП, и АОП - это хороший выбор ИМО. Но не просто понять механизм, а по-настоящему поработать над философией механизма.
Не пренебрегайте общими компьютерными науками, такими как структуры данных и алгоритмы, потому что они являются межотраслевым знанием, которое всегда полезно.
Также пойти на хорошие практики. У вас часто есть дюжина способов сделать что-то, но большинство из них - дерьмо: подвержено ошибкам, трудно поддерживать, трудно понять позже или другим программистом и т. Д. , , Обычно код сложнее читать, чем писать. Так что научитесь тратить немного больше усилий на написание, чтобы облегчить чтение (потому что вы будете читать код больше, чем пишете).
Изучите эффективные методы отладки (разумное использование журнала и отладчика) и тестирования (как написать код, который можно легко тестировать модулем, и как автоматизировать эти тесты).
Тогда вам понадобится общий технологический фон. Я говорю об очень обширных знаниях, таких как, как работает процессор (хорошее начало кеша или предсказание переходов), о системах UNIX, о сетевых протоколах, таких как IP, TCP и Ethernet и т. Д. , ,
В конце концов, научитесь учиться. Если вы знаете, как учиться, то вы можете адаптироваться.
Вам понадобятся глубокие знания в конкретных технологиях, чтобы найти работу, но они очень быстро устарели (например, подумайте о COBOL или веб-программировании во время войны IE / Netscape). Так что не надейтесь на то, что они ориентированы на будущее. Они будут ключевыми для найма, но определенно не то, что делает великого программиста, а то, что сделает ваши навыки долговечными со временем.
РЕДАКТИРОВАТЬ: Если вы только начинаете, вы должны окончательно сделать что-то. Ничего действительно. Игра вроде тетриса или змеи - хорошее начало и веселье. Если у вас ничего не получится, вы потратите много времени на обучение и действительно не получите опыта, необходимого для полного понимания того, что вы изучаете.
Давайте подадим пример с шаблонами проектирования. Шаблоны дизайна великолепны, и вы должны их окончательно использовать. Но при чрезмерном использовании они сделают ваш код сложным и трудным для понимания. Вам придется столкнуться с проблемой, которую решает шаблон проектирования, и потерять некоторое время, пытаясь решить его или его побочные эффекты, чтобы полностью понять, что такое шаблон проектирования. Шаблоны проектирования должны использоваться в качестве небольших рефакторингов с течением времени по мере роста кода. И вы будете знать, когда нужен шаблон проектирования, когда выгода от него больше, чем сложность кода, вызванная его использованием. Это требует опыта.
Так что, определенно, делайте вещи, они учатся на своих ошибках. Я не могу настаивать больше: ПОЛУЧИТЕ СДЕЛКИ !