Руководство по выбору и изучению языков программирования |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2016-12-24 08:02 Рассказывает Сергей Чернов специально для «Типичного программиста» Например: веб, десктоп, смартфоны и пр. В результате круг языков сократится. Если цель — просто попробовать программирование, то стоит выбрать легкий и интересный язык. На эту тему также уже высказывались эксперты Tproger. Зная цель, вы можете точнее задать вопрос на профильных форумах. Например: «я хочу разрабатывать приложения для iPhone (под iOS), какой язык мне нужно изучить?» Также можете собрать статистику, какой язык нужнее на рынке труда и в какой сфере. Буквально, говоря о мобильной разработке, численно сравнив аудиторию пользователей Android, iOS и Windows Phone. Кстати, вопросы нужно уметь задавать. О том, как это правильно делать, очень подробно рассказывали ребята из Stack Overflow. А еще можно просто поискать уже имеющийся ответ на свой вопрос, и это тоже отдельный навык. Начните изучать публикации по основам программирования (в частности, по алгоритмике). Параллельно читайте материалы, посвященные каждому непонятному аспекту (переменные, функции, ООП, циклы, условия и т.п.). Посмотрите презентации от разработчиков, почитайте статьи, изучите форумы: узнайте о преимуществах и недостатках языка, «хитростях и трюках» и т.п. Спрашивайте на форумах, в соцсетях — погружайтесь в среду, в тусовку прогеров. Сосредотачивайтесь на получении новых знаний, а не на общении и мечтах. По каждому непонятному пункту собирайте информацию (из любых источников: статей, форумов, сообществ, от людей) до тех пор, пока не станет понятно. («Полиморфизм? Что это? Где это может пригодиться?») Ниже будет приведен примерный список таких приемов. Здесь понадобится поискать и составить список ссылок на справочники по языку, уроки и начать углубляться в изучение синтаксиса. Выше все было абстрактно, теперь практика. Начните с простого: вывести на экран «Hello, world!», сортировать массив, найти слово в тексте, перевернуть изображение и далее с повышением уровня сложности. Вы уже кое-что умеете и хотите разработать нечто стоящее, пусть это будет и небольшой проект. Кстати, чтобы облегчить себе поиск, поищите идеи в этом списке или среди ответов экспертов Tproger на этот вопрос. Напишите техзадание. Абстрактно опишите в нем, что делает компьютер, в чем заключается и как происходит автоматизация — здесь вы учитесь логике. Не спешите приступать к кодингу. Для решения задач, которые у будут прописаны в техзадании, придется также искать решения, погружаясь в изучение языка. Теперь вы начинающий программист. Ваша задача — совершенствовать свой код, повышать скорость разработки проекта, отладки и т.д. «Средний уровень» в программировании — расплывчатое понятие. По идее, вы должны уметь писать законченные программы. Плохо или хорошо, быстро или медленно — не так важно, как важно то, что они работают. Так или иначе. Но работают. То, что вы программист высокого уровня, прояснится в сравнении. Вы окажетесь способны видеть ошибки и проблемы «среднячков»: они тратят время на изобретение велосипедов, используют плохие решения («костыли») там, где очевидны лучшие, имеют кучу проблем с рефакторингом и скоростью решения задач. Программист высокого уровня кодит и быстрее, и качественнее них. Рассмотрим, как бы человек мог ответить на эти вопросы. У меня мечта сделать игру типа «Марио» для компьютера, в перспективе хотелось бы делать игры для смартфонов и зарабатывать на этом, хотелось бы создавать несложные утилитки для себя. Спросил на форуме, что почитать, нашел кучу литературы, стал читать и ничего не понимаю. Я стал разбираться с ООП, перечитывать страницы своих учебников, работаю с поисковиком и отыскиваю статьи, которые лучше объясняют. Я пропускаю куски кода, хотя если там есть комментарии, то пытаюсь разобраться, как что происходит. Тут какая-то проблема: все говорят, что «писать в кадрах — зло». Разбираюсь, как писать в файлах, на форуме thebestprogrammerforum.org, где мне помогают искать ошибки в неработающем коде. Пока я с ним разбираюсь, я еще больше узнаю всякой всячины (какие-то MVC, библиотеки, да еще и flex). Я хотел написать игру. Попробую что-нибудь несложное. Я выписал основные моменты, которые мне надо освоить для создания игры: Взял и описал игру «пятнашки». Что и как должно в ней работать, что может делать пользователь, как будет реагировать компьютер. Стал писать, какие функции и классы для этого понадобятся. Написал код, который не работает. Стал искать причины, оказалась, кое-что не учел в логике и в синтаксисе много ошибок. Ошибки уже повторяются. Я косячу в одном и том же, но в программе это выглядит по-разному. Стал вести дневник ошибок и отслеживать методики программирования, при которых я их не допускаю. Все придумано до меня тысячу раз, но я-то об этом не знаю. Я разобрался как делать приложения для смартфона из моего же кода. Мне понравился Air. Я делаю парсер сайтов на нем. У меня куча идей и проектов. Я прокачиваюсь дальше. Источник: tproger.ru Комментарии: |
|