Чтение книг, просмотр видео и просмотр учебников - это очень просто. Делать заметки и на самом деле изучать материал может быть немного сложнее, но даже в этом случае любому, у кого приличный ум и достаточное количество интереса, это достаточно просто (не говоря уже о веселье).
Дело в том, что на самом деле это не готовит вас к написанию полной программы или веб-сайта. Допустим, вы - те подростки (только в старших классах, без настоящих (на уровне колледжа) курсов по информатике или программированию и без опыта реального мира), и вы выступаете с Groupon. Или даже Марк Цукербург, уверен, что он был гением, и он был очень способным программистом ... но как?
Как вы рекомендуете людям, которые не обязательно плохо знакомы с программированием, но плохо знакомы с программированием реальных приложений и настоящих программистов, заниматься его разработкой? Что такое «процесс разработки» - особенно для одиноких программистов (или, может быть, 2-3 подростков)?
Кроме того, что касается веб-разработки, каков процесс? Было ли что-то вроде Facebook или Groupon написано с помощью фреймворка (например, CodeIgniter или Zend for PHP)? Или они развивают свои собственные структуры? Я не спрашиваю, как придумать отличную идею, а как эффективно реализовать прекрасные идеи? У кого-нибудь есть совет?
Я прочитал пару книг на C и C ++ (в первую очередь на языке программирования C и на языке программирования C ++) и изучил AP Computer Science (а также прочитал несколько дополнительных книг по Java и ООП). Я также прочитал несколько учебных пособий по PHP (и CodeIgniter) и Python. Но я все еще в старшей школе, и технически я даже не достаточно взрослый, чтобы работать на стажировке еще несколько месяцев.
Reading books, watching videos, and reviewing tutorials is all very easy
, Да, читать их легко, понять их - трудная часть.Ответы:
Существует разница между простым умением программировать и умением структурировать программу (архитектура программного обеспечения).
Простая книга о конкретном языке программирования научит вас только тем инструментам, которые вы можете использовать для настройки архитектуры программы.
Есть также книги, которые помогут вам с архитектурой программного обеспечения. Темы, которые вы должны искать, - это шаблоны проектирования , абстракция программного обеспечения, архитектура / дизайн программного обеспечения и многое другое ... ( Head First Design Patterns стала для меня настоящим откровением).
Для более широкого набора ресурсов этот вопрос может вас заинтересовать.
Тем не менее, лучший способ научиться правильно структурировать целую программу - это практический опыт, при этом он очень открыт для предложений и новых методов.
источник
Это та же самая распространенная проблема с (инди) разработкой игры: как закончить.
Кроме того, чтобы убедиться, что вы можете сделать это, либо потому, что у вас есть все необходимые знания, или вы готовы учиться - и вы проверили, что другие люди проверяли, что это не невозможно ...
... главное, что делает возможным "доработку" - это ставить цели .
Цели являются целью для достижения, они не должны описывать, как туда добраться, только какие основные требования / функции вы должны считать первой версией вашего приложения как «законченной». Кроме того, не ставьте цели слишком далеко во времени.
Напишите ваши цели где-нибудь. Напиши это.
После того, как вы определили цели, вам нужно будет просто найти способы их достижения. Это знаменитый «путь», который более интересен, чем прибытие. Не беспокойтесь о том, чтобы добраться до стен и понять, насколько вы ошибаетесь. Большую часть времени, если предмет новый, вы поймете его неправильно, вы узнаете, почему и сможете сделать это правильно, и сделали еще одну настройку, чтобы приблизиться к целям.
Даже в игровом дизайне мы знаем, что вы должны поставить цели, чтобы игрок знал, даже абстрактно, что ему нужно достичь, каким бы образом он ни делал.
источник
Чтение много о плавании не делает одного пловца. Конечно, он готовит человека с необходимыми знаниями, чтобы стать пловцом, которого вы должны прыгнуть в воду.
Я вижу, что многие люди, которые только что сделали это, чем думали / читали о том, чтобы сделать это, являются теми, кто преуспевает.
Если вы хотите быть пловцом, просто прыгайте в воду и учитесь плавать, если вы хотите быть программистом, просто начните программировать с идеей и изучите программирование.
Я считаю, что сочинение Питера Норвига уместно здесь: научи себя программированию за 10 лет
источник
Звучит как слишком фокусируются на реализации аспектов программного обеспечения, что только часть всего процесса разработки программного обеспечения (см SDLC). Возможно, вам придется взглянуть на некоторые программные методологии и научиться использовать ту, которая вам нравится. Помимо этого, прочитайте тематические исследования, выясните плюсы и минусы каждого инструмента, которые вы также хотели бы использовать в своем программном обеспечении, оцените и оттуда. После быстрого прочтения вашего вопроса вам, возможно, придется сосредоточиться на областях программного обеспечения для анализа и проектирования , а также узнать о UML, декомпозиции и, возможно, некоторых шаблонах проектирования ... возможно ...
Надеюсь это поможет..
источник
Короткий ответ, поставьте свои цели и начните.
Нет книги или способа научить вас этому, но есть практический опыт.
Вы будете делать много ошибок и постепенно приобретать опыт. Поэтому, если вы столкнулись с проблемой, подумайте об этом, попробуйте найти решение, а если вам не удастся, перейдите к stackoverflow и получите некоторую помощь. Также есть отзывы кода как можно раньше и как можно больше.
После того, как вы закончили свой первый проект и хорошо разбираетесь в технических проблемах, начните изучать более абстрактные и более сложные темы разработки программного обеспечения.
С вашим новым пониманием общих проблем вы получите в книгах абстрактные понятия о чистом и отделенном коде, потому что ваш первый проект будет неразрешимым беспорядком.
Книги (обычные подозреваемые):
источник
На этом этапе вам нужно перестать читать о программировании и начать программирование. Если вы хотите создать веб-сайт, пройдите учебник по выбранной вами структуре. Просто выберите тот, который вам нравится. Пройдите руководство, чтобы узнать, как использовать фреймворк, а затем начните создавать свое собственное веб-приложение.
После того, как вы напишете некоторый код, книги о методах программирования будут иметь гораздо большее значение.
источник
Когда вы выходите из дома и пытаетесь написать несколько программ, которые хотите продать, я рекомендую вам прочитать это эссе Джоэла Спольски о "Уровне абстракции разработки".
http://www.joelonsoftware.com/articles/DevelopmentAbstraction.html
источник