Краткое руководство для программиста

  • Имейте сильные основы в основах, и у вас должен быть горизонтальный обзор по большинству тем и вертикальная глубина по любой конкретной теме (темам).
  • Язык программирования : Освойте как минимум 1 язык программирования (вертикальная глубина) и узнайте о плюсах, минусах и особенностях вашего освоенного языка программирования по сравнению с другими доступными языками (горизонтальный обзор). Некоторые из языков программирования: c/c++, Python, PHP, Java, Scala, Ruby.
  • Структуры данных и алогрифмы: Он играет жизненно важную роль в информатике. Пройдитесь по стеку, очереди, связанному списку, деревьям, хеш-таблицам, наборам, картам, графикам, динамическому программированию, поиску с возвратом и попрактикуйтесь в программах. Некоторые из полезных ресурсов: Структуры данных и алгоритмы стали проще Narasimha karumanchi, Code Monk — станьте лучшим программистом, Архивы структур данных — GeeksforGeeks, Упрощенная подготовка к собеседованию по программированию, Структуры данных и алгоритмы Томаса Х. Кормена
  • Базы данных: SQL-запросы, большее знакомство с проектированием баз данных, методами нормализации и индексирования, триггерами, РСУБД (MYSQL/Oracle), NoSQL (MongoDB, базы данных Graph, такие как Neo4j, Graphx).
  • Операционные системы : Знать все основные понятия и ознакомиться как минимум с 1 разновидностью Linux (Parot OS, KALI Linux, Ubuntu, Fedora).
    Компьютерные сети: программирование сокетов, уровни компьютерных сетей.
  • Разработка веб-приложений: Фронтенд (HTML, CSS, Javascript/Jquery, Angular JS, React JS), Бэкенд (PHP/Python/Java/Ruby), понимание JSON, XML, веб-сервисов, таких как REST, SOAP. Рекомендуемые фреймворки: Bootstrap, Python (Django, Flask), PHP (Codeigniter, Zend, Laravel), Ruby (Ruby on Rails), Java (Spring, Jersy). Онлайн-руководства W3Schools, бесплатные онлайн-уроки и курсы, видеоуроки — thenewboston, Установщики и загрузки XAMPP для друзей Apache
  • Разработка мобильных приложений: Android, Windows, IOS Бесплатные онлайн-уроки и курсы, Учебники
  • Разработка игры: Pygame, игровой движок Unity (создание игры в понг с помощью Unity 2D, игра в понг на Unity 2D, РУКОВОДСТВО ПО ПУТЕШЕСТВИЮ 1: НАСТРОЙКА МИРА)
  • Система контроля версий: Это помогает разработчикам работать вместе, без проблем обмениваться кодом и вести историю отдельных работ, с легкостью возвращая код к предыдущим/более поздним версиям. например GIT, SVN, CVS. Некоторые из популярных сайтов включают github, gitlab, bitbucket. git — простое руководство, Git — Документация, Mercurial SCM
  • Тестирование: Junit, Selenium, JBeahave
  • Открытый исходный код : Внесите свой вклад в открытый исходный код. Почему с открытым исходным кодом?
  • Сценарии оболочки

Ниже приведены некоторые из лучших практик, которым следует следовать.

  • Продолжайте читать существующий исходный код программного обеспечения. Я знаю, что читать и понимать существующий исходный код скучно, но это дает вам возможность ознакомиться с лучшими практиками, которых придерживается большинство разработчиков программного обеспечения. Плохо написанный исходный код учит вас писать хороший исходный код, при условии, что вы воспримете его положительно и извлечете из него урок. Если вы хотите стать писателем, можете ли вы написать лучшие романы, не читая ни одного романа? Я бы сказал НЕТ. Точно так же, если вы хотите написать лучший исходный код, то как вы сможете писать, не читая тонны исходных кодов и не зная лучших практик (отступы, комментарии и т. д.).
  • Документируйте свой код.
  • Проверьте свой код должным образом.
  • Продолжайте учиться новому и оставьте Эго позади. Новые технологии появляются каждый день, и ни у кого нет полной власти над всем. Так что не стесняйтесь просить/помочь своих коллег, друзей и даже джуниоров.
  • Это зависит от вас, хотите ли вы поддерживать (а не усыновлять, чтобы узнать что-то новое) или хотите карьерного роста.
  • Будьте в курсе новейших инструментов и технологий.
  • Участвуйте в хакатонах, соревнованиях по программированию, даже если вы ничего не знаете. — Победы и поражения являются частью игры, но полученные знания и опыт останутся навсегда.
  • Начните делать как можно больше проектов.
  • Текстовый редактор (Возвышенный текст, визуальный код, Notepad++)
  • Клиенты подключения к удаленной системе: Putty, WinScp, FileZilla, удаленный рабочий стол
  • IDE (Intellij, Eclipse, Visual Studio, Android Studio, NetBeans)
  • PHP Веб-разработка (XAMPP, Вамп)
  • Непрерывная интеграция (Докер, Дженкинс)

Веб-сайты

Stackoverflow, w3schools, tutorialpoint, coursera, edx, udacity, thenewboston, HackerEarth, HackerRank, Spoj, Codechef, интервьюбит.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *