Главная

                 

Задача сайта:

научить программированию в узком (основы программирования) и широком (методология разработки программ) понимании.

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

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

Тематика сайта:

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

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

На сайте объединяются темы одной направленности – рассматриваются задачи моделирования и распознавания 2D/3D образов. На основе ряда задач оцениваются возможности алгоритмизации интеллекта и создания компьютерного зрения. Программы реализуются вначале с использованием математического аппарата, затем – с подключением стандартных графических библиотек (OpenGL и OpenCV).  Рассмотрены решения задач для различных платформ (WinAPI, WEB, Android). Для моделирования используются Autodesk CAD системы (AutoCAD, Inventor и Fusion 360) а также игровой движок Unity3D.

в соответствии с кнопками главного меню слева направо. Языки и технологии программирования внедряются в курс обучения в порядке их усложнения. Первые приложения разрабатываются на сравнительно простом функциональном языке VLISP (в среде AutoCAD). При этом дается начальное представление о моделировании и распознавании образов.   Изучение ООП начинается с  VB, затем рассматриваются более сложные для понимания языки – С/С++, Java и Python. По мере накопления опыта программирования усложняются и задачи геометрического моделирования (2D/3DCAD) а также распознавания образов. Последовательно реализуется переход от моделирования виртуальной реальности (Unity) к решению задач компьютерного зрения (CV) и их практического применения в робототехнике (Robotics). И наконец детально исследуется качественно новый шаг в программировании — моделирование искусственного интеллекта (AI) на основе нейросетевых технологий.

Рекомендации:

  • Изучайте теорию на основе практических примеров.
  • От чтения кода переходите к его модификации и самостоятельному программированию.
  • Появляются вопросы, ищите ответы в поисковой системе Google.
  • Находите и решайте интересные для себя задачи.
  • Не изобретайте велосипед.  Для ускорения процесса используйте готовые решения, шаблоны, библиотеки и движки.
  • Расширяя свою квалификацию учитывайте тенденцию, например — по заказам работодателей на Frelance проекты.
  • Не зацикливайтесь. Предпочитайте основы «многообразия» глубине «однообразия». Когда у вас есть основы, вы можете изучить детали в процессе работы.
  • Сохраняйте результаты своих наработок, при этом структурируйте информацию о своих знаниях. Невозможно помнить всего, но можно знать, как быстро найти то, что  нужно.

 

Автор: Николай Свирневский