Elettracompany.com

Компьютерный справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Программа курса программирование

Рабочая программа элективного курса «Основы программирования» (объектно-ориентированное программирование)
рабочая программа по информатике и икт

Представлена рабочая программа на элективный курс «Основы программирования» (объектно-ориентированное программирование) на 2019-2020 г.

Скачать:

Предварительный просмотр:

Муниципальное бюджетное общеобразовательное учреждение

средняя школа № 2 города Вязьмы Смоленской области

на заседании МО учителей

Мосенкова Л. А./__________

от «__» августа 2019 г

директора по УВР

«___» ___________2019 г

от «___» __________2019 г

ДЛЯ 10-11 КЛАССА (68+68 часов)

НА 2019/2020 УЧЕБНЫЙ ГОД

Среднее общее образование

Учитель Иванов Алексей Викторович

Количество часов: 68+68 (2 ч в неделю).

Профили: естественно-научный, физико-математический, технологический.

  1. Место курса в образовательном процессе

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

Часто говорят, что в современных условиях развитого прикладного программного обеспечения изучение программирования потеряло свое значение как средство подготовки основной массы школьников к труду, профессиональной деятельности. С одной стороны, это действительно так, но, с другой стороны, изучение основ программирования связано с целым рядом умений и навыков (организация деятельности, планирование ее и т. д.), которые по праву носят общеинтеллектуальный характер, формирование которых — одна из приоритетных задач современной школы.

Очень велика роль изучения программирования для развития мышления школьников, формирования многих приемов умственной деятельности.

Умение выделять актуальные проблемы и решать их оптимальным способом средствами Windows-приложений является важным условием образовательной компетентности учащихся, выбравших элективный курс «Основы программирования». Windows-приложения, которые можно написать в среде Lazarus, являются конструктивными средствами для реализации творческих идей

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

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

Данная программа элективного курса предназначена для двух лет изучения языка программирования PASCAL и знакомства с интегрированной средой программирования Lazarus.

Реализация творческих замыслов учеников осуществляется поэтапно:

  • на первом этапе повторение языка программирования PASCAL;
  • на втором этапе уделяется особое внимание объектно-ориентированным принципам работы с компонентами ОС Windows посредством среды LAZARUS.

Освоение знаний и способов создания Windows-приложений осуществляется в процессе их разработки на близкие учащимся темы. Такой подход гарантирует дальнюю мотивацию и высокую результативность обучения.

  • Формирование интереса к изучению профессии, связанной программированием.
  • Формирование алгоритмической культуры.
  • Реализовать в наиболее полной мере возрастающий интерес учащихся к изучению информационных технологий, углубленному изучению программирования через совершенствование их алгоритмического и логического мышления;
  • Познакомить (или продолжение знакомства) с языком программирования PASCAL;
  • Дать толчок учащимся для дальнейшего самостоятельного изучения этого языка с переходом на объектно-ориентированное программирование .
  • развитие интеллектуального, образного и алгоритмического мышления школьников;
  • формирование практических навыков работы с интегрированной средой программирования (Lazarus;
  • формирование умения планировать свою деятельность, критически оценивать результаты своей работы, готовности исправлять свои ошибки, настойчивости и целенаправленности в действиях.
  • • понять принципы объектно-ориентированного подхода к составлению алгоритмов и программ, значение объектно-ориентированного программирования в современном множестве информационных технологий;
  • • овладеть базовыми понятиями объектно-ориентированного программирования и применять их при создании Windows-приложений;
  • • приобрести навыки разработки Windows-приложений в визуальной среде программирования LAZARUS.
  1. Минимально необходимый уровень знаний и технологических умений учащихся перед прохождением курса
  • имеют представление об одном из языков программирования.
  • владеют языком программирования Pascal , обладают базовыми знаниями по физике и математике на уровне 9 класса, навыками работы в файловой системе Windows.
  • Также приветствуется умение учиться независимо от других, планировать и организовывать свою деятельность.

Методы преподавания и учения

  • Лекции в незначительном объёме при освещении основных положений изучаемой темы;
  • Самостоятельное решение задач;
  • Практические занятия (проекты);

Контроль знаний и умений.

Текущий контроль уровня усвоения материала осуществляется в результате выполнения обучающимися практических работ.

Планируемые результаты курса.

В рамках данного курса обучающиеся овладевают следующими знаниями, умениями и способами деятельности:

  • составлять алгоритм решения задач, используя язык программирования PASCAL ;
  • способы обработки массивов;
  • решать задачи с применением массивов;
  • знают инструментарий среды LAZARUS, необходимый для разработки полнофункционального Windows-приложения;
  • знают принципы работы основных компонентов LAZARUS и умеют с ними работать;
  • знают основы объектно-ориентированного подхода в программировании и умеют работать с некоторыми классами языка LAZARUS;
  • умеют конструировать интерфейс Windows-приложений;
  • владеют приёмами организации и самоорганизации работы по созданию Windows-приложений;
  • имеют положительный опыт коллективного сотрудничества при создании Windows-приложений;
  • овладевают процедурой самооценки знаний и деятельности и корректируют дальнейшую деятельность по созданию Windows-приложений.

Личностными результатами освоения выпускниками средней школы курса программирования являются:

1) бережное отношение к компьютерной технике как неотъемлемой части настоящего времени как основного помощника в быту;

2) потребность сохранять чистоту рабочего места и техники;

3) осознание применимости информационных технологий в народном хозяйстве и социально-экономической структуре;

4) осознание роли информационной технологии как главного атрибута XXI века;

5) сформированность мировоззрения, соответствующего современному уровню развития информационных технологий;

6) потребность саморазвития, в том числе логического мышления, понимание алгоритмов в информационных процессах;

7) готовность к самостоятельной творческой и ответственной деятельности;

8) готовность и способность вести диалог с другими людьми; сформированность навыков сотрудничества;

9) эстетическое отношение к языкам программирования, осознание их выразительных возможностей;

10) нравственное сознание и поведение на основе общечеловеческих ценностей.

Метапредметными результатами освоения выпускниками средней школы курса программирования являются:

1) умение эффективно общаться в процессе совместной деятельности со всеми её участниками, не допускать конфликтов;

2) владение навыками познавательной, учебно-исследовательской и проектной деятельности; использование различных методов познания; владение логическими операциями анализа, синтеза, сравнения;

3) способность к самостоятельному поиску информации, в том числе умение пользоваться справками программ и интернет поиском;

4) умение критически оценивать и интерпретировать информацию, получаемую из различных источников;

5) владение всеми видами компьютерной деятельности: машинописью, чтением и редактированием;

6) умение правильно построить алгоритм и создавать программы разных типов и применимости с учётом языков программирования и их особенностей(Turbo Pascal);

7) свободное владение письменной формой записи программ, циклом и структурой;

8) умение определять цели деятельности и планировать её, контролировать и корректировать деятельность;

9) умение оценивать свою и чужую работу с эстетических и нравственных позиций;

10) умение выбирать стратегию поведения, позволяющую достичь максимального эффекта.

В результате изучения элективного курса «Основы программирования» на уровне среднего общего образования:

  • определять результат выполнения алгоритма при заданных исходных данных; узнавать изученные алгоритмы обработки чисел и числовых последовательностей; создавать на их основе несложные программы анализа данных; читать и понимать несложные программы, написанные на выбранном для изучения универсальном алгоритмическом языке высокого уровня;
  • выполнять пошагово (с использованием компьютера или вручную) несложные алгоритмы управления исполнителями и анализа числовых и текстовых данных;
  • создавать на алгоритмическом языке программы для решения типовых задач базового уровня из различных предметных областей с использованием основных алгоритмических конструкций;
  • использовать готовые прикладные компьютерные программы в соответствии с типом решаемых задач и по выбранной специализации;
  • использовать компьютерно-математические модели для анализа соответствующих объектов и процессов, в том числе оценивать числовые параметры моделируемых объектов и процессов, а также интерпретировать результаты, получаемые в ходе моделирования реальных процессов;
  • представлять результаты математического моделирования в наглядном виде,
  • готовить полученные данные для публикации;
  • правильно составлять текстовые документы в соответствии с эстетическими нормами и оптимальным количеством необходимого текста;
  • работать с таблицами, обрабатывать большие массивы данных и проводить математические операции больших объемов;
  • разрабатывать программы, составляя этапы решения задач и проектирования их каркаса и подпрограмм;
  • работе со всемирной сетью, настройкой связи и подключения,
Читать еще:  Курсы для учителей биологии дистанционно бесплатно

Выпускник получит возможность научиться :

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

Итоговый контроль проводится в конце курса (10 и 11 классы) в форме практической работы.

25 бесплатных онлайн-курсов программирования для обучения с нуля

Осваивайте популярные языки не выходя из дома и в удобном для вас темпе.

Java Programming For Complete Beginners

Вводный курс по Java, рассчитанный на новичков без опыта в программировании. Содержит материалы, которые помогут освоить основы языка, и практические задания для закрепления навыков в написании простых программ.

Learn to Program in Java

Начальный курс для всех, хочет изучить язык программирования Java и стать разработчиком. Процесс построен таким образом, что слушатели научатся не только писать код, но и решать проблемы, с которыми неизбежно придётся столкнуться при создании приложений.

Java. Быстрый старт

Практический курс по изучению Java на базе разработки небольшого проекта. Студенты научатся основам языка и потренируются в написании простых консольных приложений, а также узнают, как за несколько минут создать игру с графическим интерфейсом без применения сторонних библиотек.

Java. Базовый курс

Курс для тех, кто только начинает изучать Java. Лекции содержат материал, охватывающий синтаксис языка, компиляцию программ, основы объектно‑ориентированного программирования и более сложные аспекты Java, а также контрольные вопросы и практические задания.

Android. Быстрый старт

Практический онлайн‑курс для ознакомления с разработкой под Android, требующий базовых знаний Java. В ходе обучения слушатели создадут простую игру, сразу же применяя полученные теоретические знания в деле.

JavaScript

JavaScript для начинающих

Курс по основам разработки на JavaScript, рассчитанный на любой уровень подготовки. Рассматриваются азы программирования на этом языке, а также инструменты и модели данных, которые пригодятся для применения JavaScript на практике.

Основы JavaScript

Очень подробный онлайн‑курс, который поможет изучить JavaScript, начиная с самых азов. Слушатели рассмотрят все аспекты популярного языка программирования от простого к сложному и научатся использовать его на реальных примерах.

Python

Основы языка Python

Этот вводный курс подойдёт как начинающим, так и опытным разработчикам, которые хотят познакомиться с Python. На занятиях рассматриваются основы программирования, различные примеры применения языка для решения практических задач и пишутся полноценные программы.

Программирование на Python

Подробный начальный онлайн‑курс для изучения основ Python и базовых аспектов программирования, ориентированный на людей без опыта. Слушатели познакомятся с такими понятиями, как операторы, переменные, списки, условия и циклы. Среди материалов есть обычные упражнения и необязательные задачи повышенной сложности.

Python: основы и применение

Базовый курс, посвящённый основам Python и программирования в целом. Содержит упражнения для закрепления материала, которые проверяются с указанием ошибок. В заключительной части рассматриваются реальные задачи, с которыми можно столкнуться в разработке, и даются примеры их решения.

Интерактивные уроки по Python

Подборка интерактивных уроков для всех, кто хочет освоить Python, независимо от уровня подготовки. Шаг за шагом рассматриваются такие азы, как переменные и циклы, а затем более продвинутые вещи вроде регулярных выражений и инспекции кода.

Machine Learning with Python: A Practical Introduction

Вводный онлайн‑курс по основам машинного обучения на Python, который познакомит с различными видами моделирования. Слушатели освоят классификацию, кластеризацию и другие популярные алгоритмы, а также подкрепят полученные теоретические знания практическими навыками.

Введение в программирование (C++)

Базовый курс, который познакомит с основами C++ и поможет прибрести опыт, необходимый для более углублённого изучения программирования. Процесс обучения построен на выполнении множества небольших практических задач, охватывающих все основные конструкции языка.

Introduction to C++

Краткий вводный курс в C++ от экспертов Microsoft. На занятиях студенты освоят синтаксис и базовые принципы этого языка программирования, научатся создавать функции и подготовятся к изучению более сложных аспектов C++.

Основы C++

Рассчитанный на новичков онлайн‑курс, который посвящён основам языка C++. Охватывает базовые элементы и азы объектно‑ориентированного программирования с примерами и заданиями. Заключительная часть отводится практическому применению полученных навыков.

Программирование на языке C++

Подробный базовый курс по C++, в котором особое внимание уделено основным принципам работы программ и процессу компиляции. Синтаксические конструкции рассматриваются лишь на первой лекции, поэтому слушатели должны быть знакомы с понятиями «переменная», «функция», «цикл».

Углублённое программирование на C/C++

Ориентированный на начинающих разработчиков онлайн‑курс, который предполагает знание основ C++. Материалы помогут приобрести навыки создания программ средней сложности и типовых шаблонов объектно‑ориентированного программирования. Также рассматриваются ключевые аспекты работы с памятью, асинхронные вычисления и диалекты.

C++ Programming — Advanced Features

Более сложный онлайн‑курс, в котором студенты научатся создавать быстрые программы, используя продвинутые возможности C++. Всего за несколько часов лекторы объяснят ключевые расширенные функции этого языка, которые будут закреплены практическими занятиями.

Objective‑C

Become an iOS Developer from Scratch

Обширный и детальный курс, который является пошаговым руководством для всех, кто хочет с нуля освоить Objective‑C и научиться создавать программы для iPhone. В ходе обучения слушатели ознакомятся с пакетом iOS SDK и, применяя доступные инструменты, напишут своё первое полнофункциональное приложение.

Swift

Swift 5: Основы

Очень подробный онлайн‑курс, который подойдёт для новичков без каких‑либо предварительных знаний. В материалы включены основы теории программирования, переменные и константы, циклы и условные конструкции, а также объектно- и протокол‑ориентированное программирование.

Intro to iOS App Development with Swift

Практический онлайн‑курс для тех, кто уже владеет основами, который познакомит с разработкой под iOS на Swift. Слушатели изучат все нюансы этого языка программирования и создадут забавное приложение, искажающее голос (звучит как у бурундука или Дарта Вейдера).

Веб‑разработка

Веб‑разработка. Быстрый старт

Комбинированный курс для тех, кто хочет научиться создавать функциональные сайты с нуля. Слушатели познакомятся с основами HTML и CSS, получат начальные навыки веб‑разработки на PHP, а также освоят логику работы с этим языком, его терминологию и принципы функционирования.

Читать еще:  Курсы продвижения товара

Основы SQL для начинающих

Вводный онлайн‑курс, который откроет основы SQL. На лекциях слушатели узнают, что такое системы управления базами данных, и научатся использовать SQLite, MySQL и другие необходимые для работы инструменты.

PHP базовый курс

Подробный онлайн‑курс для всех желающих освоить веб‑программирование с нуля. На занятиях рассматриваются базовые принципы языка и проблемы, с которыми придётся столкнуться. После завершения программы студенты смогут самостоятельно делать несложные сайты.

Beginner PHP and MySQL Tutorial

Объёмный курс для начинающих программистов, охватывающий все аспекты PHP и MySQL. Обучение построено таким образом, что по окончании занятий можно смело браться за разработку функциональных веб‑приложений.

Основы программирования

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

Для кого этот курс программирования

Этот раздел для достаточно широкого круга читателей. Для тех, кто хочет заняться программированием, но пока не знает с чего начать. Для начинающих программистов, а также для тех, кто, вероятно, и не хочет стать профессиональным разработчиком программного обеспечения, но интересуется программированием с целью расширить свой кругозор. Для тех, кому мало только о чем-либо прочитать, но есть еще стремление со всем новым «знакомиться лично», и каждый новый предмет “повертеть в руках”. Если коротко, то здесь вы сможете изучить основы программирования или, как еще говорят, освоить программирование с нуля. Ну а более или менее опытным программистам я могу предложить познакомиться с материалами руководства C# Quick Guide™, где базовые знания по программированию необходимы сразу.

Пару слов о процессе программирования

Не стоит относиться к программированию, по крайней мере, к прикладному программированию, как к чему-то сложному и подвластному людям с “особым” складом ума. С основами программирования человек сталкивается повседневно, и даже не хочу приводить примеры, поскольку все это банально. Программирование на компьютере с использованием языка программирования – это всего лишь формализованное общение с вычислительной техникой с целью объяснить ей, чего вы от нее хотите и добиться от нее адекватного результата. Объяснить четко, с соблюдением логики и здравого смысла.

Естественно, что компьютер не человек и намеков, нечетких формулировок, многозначительных междометий и жестов не понимает, но, тем не менее, процесс программирования сводится к общению с ним на понятном обеим сторонам языке. То, что существует довольно много различных языков программирования, не означает, что различные вычислительные машины принадлежат к различным языковым группам. Просто у всех у них есть встроенные “переводчики”, которые и осуществляют перевод составленных человеком программ на понятный “железу” машинный код. Переводчики эти называют компиляторами или трансляторами. Многообразие языков программирования, на которых пишет программы человек, обусловлен скорее конкуренцией между их авторами (отдельными людьми, научными организациями, коммерческими компаниями и т.п.), спецификой решаемых программированием задач и различием во взглядах специалистов, на то, что из себя должен представлять язык программирования.

Языки программирования классифицируются по различным критериям, но наиболее известная классификация – это деление их на языки программирования высокого уровня и языки программирования низкого уровня. Чем язык более низкого уровня, тем он более “понятен” компьютеру. Соответственно, чем он более высокого уровня, тем более приближен к набору четких инструкций, понятных человеку. Инструкции на языках программирования высокого уровня более “емкие” и зачастую решают сразу целые задачи, поэтому, если сравнить программу на языке высокого уровня с программой, выполняющей то же самое на языке низкого уровня, то объем последней будет на порядки больше. Программировать на высокоуровневом языке, естественно, удобно, но есть и обратная сторона медали: если вы хотите реализовать что-то нестандартное, то вряд ли вам это удастся сделать с использованием его “крупных строительных блоков”. Чрезвычайная гибкость – вот за что профессионалы любят низкоуровневые языки программирования. Программирование на них подобно строительству деревянного дома из спичек – очень и очень трудоемкий и долгий процесс. Но истина как всегда где-то посередине, и для написания эффективных программных продуктов зачастую комбинируют: большую часть программного кода пишут на языке высокого уровня, таком как C++, а различного рода “тонкие места”, которые чувствительны к скорости исполнения и объемам используемой оперативной памяти – на языке низкого уровня, например, на Assembler.

Имеет ли смысл начинать изучать основы программирования или “поезд уже ушел”?

На сегодняшний день общий тренд развития программирования направлен в сторону веб-технологий, облачных вычислений и прочих подходов к организации распределенных архитектур программного обеспечения, но само понятие прикладного программирования инвариантно по отношению к новым технологиям разработки программных продуктов. Весь framework сложной архитектуры за вас напишут компании, являющиеся лидерами на рынке компьютерных технологий. Затем они продадут плоды своих трудов вам, но наполнять смыслом предоставляемые ими шаблоны решений все равно придется. Это похоже на процессы возведения типовых зданий и выполнения индивидуального ремонта в каждом из них. При таком подходе практически нет никакой разницы между реализациями одной и той же задачи, которая, в одном случае, должна стать частью “настольного приложения», в другом — быть частью опубликованного web-сервиса, или вовсе работать в качестве отдельной службы в рамках инфраструктуры виртуального сервера. Ведь сложно найти разницу в процессах ремонта помещений панельного, кирпичного или монолитного зданий? Работы для прикладного программиста всегда хватит.

Создавать свои собственные ресурсы в интернете — дело весьма популярное и полезное, а коммерческое предприятие без своего сайта вообще сегодня большая редкость. Никому не нужно рассказывать, что современные “интернет-поисковики” с каждым днем предъявляют все более и более нетривиальные требования к индивидуальности интернет сайтов. Речь идет не только о содержимом ресурса (контенте), но и дизайне, удобстве пользования и других качественных характеристиках. Чем лучше поисковые системы относятся к вашему сайту, тем больше посетителей приходят к вам со страниц результатов поиска. Разработчики программных решений класса CMS (шаблоны сайтов) предлагают все более широкий набор инструментов и тем для придания уникальности создаваемым на их основе решениям, но иногда бывает намного проще разобраться в логике работы сайта самостоятельно. Благо, чаще всего такие шаблоны распространяются в виде исходного кода, и настроить его работу под свои нужды, изменив несколько десятков строк в том же php — коде, может любой грамотный программист. Обращаться к сторонним организациям за индивидуальной разработкой под ваши требования отдельного программного продукта (сайт — это тот же программный продукт) или его конфигурации может оказаться невыгодно. И не только невыгодно по деньгам, но и по времени, нервам и много еще по каким параметрам…

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

Этот курс программирования содержит примеры решения небольших задач. От тех, что встречаются в курсах изучения информатики и основ программирования в старших классах школы и на начальных курсах ВУЗов и до тех, с которыми могут столкнуться начинающие программисты на работе. Интересующиеся смогут получить опыт программирования не на одном языке программирования, а сразу на двух — на C# и VB.NET. Оба эти языка являются высокоуровневыми и базируются на одной и той же программной платформе. В качестве обучающей программы предлагается использовать свободно распространяемый программный продукт, который обладает минимально достаточной функциональностью для достижения поставленных настоящим курсом программирования целей. Безусловно, можно использовать и профессиональную среду разработки Microsoft Visual Studio. Начать программировать на C++ или Java, зная основы синтаксиса C#, намного проще, чем начать программировать на них с нуля, поскольку их синтаксис во многом похож. Начинать обучение программированию на языках Pascal/Delphi, я считаю, вообще неперспективно, поскольку (опять же лично мое мнение), эволюция не на их стороне. Но, в общем и целом, большой разницы нет, какой язык программирования новичку выбрать, поскольку принципы, подходы и приемы этого ремесла везде одинаковые.

Читать еще:  Модные практики купить курс

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

Содержание учебной программы

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

Материал о том, как новичку выбрать язык программирования. Описание учебной среды разработки, которая является свободно распространяемым программным продуктом, позволяющим писать небольшие программы.

Классика прикладного программирования. Подобные примеры программ рассматриваются в рамках школьных курсов информатики и на начальных курсах по программированию в ВУЗах.

Обзор наиболее часто используемых инструментов и методик прикладного программирования: объектно-ориентированное программирование, универсальные коллекции, регулярные выражения, базы данных и т.п.

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

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

Другие, связанные с программированием вопросы:

Как правильно изучать программирование: метод Франклина

Главная проблема в самообучении — отсутствие системного подхода. Трудно понять, что учить в первую очередь, а что во вторую, и в каком порядке.

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

Талант программиста можно заметить в человеке, который не написал ни строчки кода. Это человек, который любит головоломки. И первая головоломка — как правильно изучать программирование самостоятельно.

Анатолий Ализар

Пишет про разработку в Skillbox. Работал главным редактором сайта «Хабрахабр», ведет корпоративные блоги.

Самообучение

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

Самоучитель хорош тем, что быстро погружает в тему. Вы начнете кодить практически в тот день, когда открыли книжку. Но, как говорит преподаватель Джеймс Коппел из Массачусетского технологического института, есть одна проблема: эти книги ничему не учат. Главное там — длинные листинги кода, которые читатель должен воспроизвести.

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

Метод Франклинa

Чтобы извлечь какую-то пользу из самоучителей или лекций, некоторые специалисты рекомендуют выполнять практические задания особым методом. Его можно назвать методом Франклина.

Этот метод очень прост на практике.

  1. Читать книгу как обычно. Когда попадётся образец кода, прочитать его.
  2. Закрыть книгу.
  3. Попробовать набрать код.
  4. Повторить пункты 1−3.

Суть в том, чтобы усваивать мысленные образы — структуры данных, чувствительные к распространению. В этом случае мозг работает по принципу автокодировщика в машинном обучении.

«Автокодировщик — нейронная сеть, что пытается воспроизвести на выходе такие же данные, как и на входе, но с прохождением через промежуточный слой, который слишком мал, чтобы полностью представлять данные. В ходе этой процедуры он учит более компактную репрезентацию данных. Здесь в качестве нейронной сети выступает скопление дендритов в вашей голове», — пишет Джеймс Коппел.

Лекции и литература

Освоив метод Франклина, ищите информацию, которая бесплатно доступна в интернете в огромном количестве, особенно на английском языке. Вкратце план действий такой:

  1. Выучить английский язык (хотя можно найти немало курсов и на русском языке).
  2. Выбрать программу обучения. Определиться, какое направление программирования наиболее интересно.
  3. Найти учебные материалы по этому предмету.

Образовательные ресурсы с курсами и лекциями

  • MIT OpenCourseWare: обучающие курсы, видеозаписи лекций и семинаров Массачусетского технологического института.
  • KhanAcademy: бесплатные лекции, в том числе по математике и информатике.
  • Coursera: курсы от ведущих западных университетов.
  • Статьи по программированию от Skillbox.

Учебная литература

  • Список бесплатных книг по программированию (англ. яз.).
  • Сборник учебной литературы для программиста.
  • Бесплатные книги по программированию на русском и английском.
  • Подборка бесплатных книг.

Самоучители для начинающих

  • Занимательное программирование. Самоучитель. М. Мозговой.
  • C# для школьников. Учебное пособие. М. Драйер.
  • Программирование на Java для детей, родителей, дедушек и бабушек. Я. Файн.

Самообучение для неподготовленного человека не так эффективно, как отработанные методики передачи знаний и навыков, которые гарантируют качественный результат без особых затрат. Тратить силы и время всё равно придется, но не в таком фанатичном режиме, как у самоучек.

Программа обучения. Системный подход

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

Программа обучения «Профессия веб-разработчик» рассчитана на один год и включает в себя три модуля:

Веб-разработчик

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

JavaScript с нуля

Практический курс для тех, кто хочет научиться основам языка сценариев с индивидуальным наставником, разработать frontend для интерактивного веб-проекта и положить кейс к себе в портфолио.

Базовые навыки PHP

Курс, на котором вы познакомитесь с базовыми понятиями программирования и поймёте главные принципы. Научитесь писать чистый, структурированный, а самое главное — работающий код. Уже после первого курса сделаете свой первый сайт на PHP.

Система платная, но зато она повышает шансы на успешный результат. А результат — это престижная, востребованная и высокооплачиваемая профессия с интересными проектами и перспективами развития.

Заключение

С чего начать учить программирование, каждый решает сам. И каждый выбирает свой путь. Но главное, что после окончания этого пути вам точно не придется просыпаться с рассветом и идти на завод к первому звонку.

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector